❶ 主函數怎麼寫
c語言,C++,怎麼寫主函數
主函數的作用是程序的入口。就是說只要程序一開始,第一句執行的就是主函數中的第一條語句。
編寫規律:主函數一般是調用函數和簡單的邏輯判斷,代碼長度不宜超過80行。
技巧:將功能盡量整合到一個子函數,採用調用。例如,長方形體積是一個子函數一樣。
舉例如下:
#include
double V(double a, double b, double c); 聲明子函數
void main() 主函數
{double a,b,c; 長 寬 高
double v;
scanf("%lf%lf%lf",&a,&b,&c); 輸入長 寬 高
v = V(a,b,c); /撫;體積子函數
printf("%lf",v);
}
double V(double a, double b, double c)
{
double v;
v = a*b*c;
return v; 返回給主函數的值
}
c語言中,標准main函數的書寫規范是什麼?
那是因為C語言剛剛出來的時候標准還不統一!
最先前是main() 連頭文件都不需要,後來又出現了需要#include頭文件,再後來是int main() 這樣的形式就必要要有個返回值! 這些都是因為C語言在不斷改進,所以各個版本都有區別,現在這就在於你公司或自己要求個標準是哪個標准了或者是使用的哪個編譯器,因為編譯器支持的標准也不一樣!
int main(int argc, char* argv[]) 其實main函數還有兩個參數!
java中,main方法怎麼寫?
main方法定義如下:
public static void main(String[] args){…}
關鍵字的作用:
(1)public關鍵字,這個好理龔,聲明主函數為public就是告訴其他的類可以訪問這個函數。
(2)static關鍵字,告知編譯器main函數是一個靜態函數。也就是說main函數中的代碼是存儲在靜態存儲區的,即當定義了類以後這段代碼就已經存在了。如果main()方法沒有使用static修飾符,那麼編譯不會出錯,但是如果你試圖執行該程序將會報錯,提示main()方法不存在。因為包含main()的類並沒有實例化(即沒有這個類的對象),所以其main()方法也不會存。而使用static修飾符則肢棚表示該方法是靜態的,不需要實帆清例化即可使用。
(3)void關鍵字表明main()的返回值是無類型。
(4)參數String[] args,作用是為程序使用者在命令行狀態下與程序交互。
這個單鏈表的主函數怎麼寫?
你要寫的主函數用來干什麼
C語言主函數寫法
main函數是態飢前操作系統調用的入口,前面的int void 是返回類型,返回給操作系統。
int 是整型 void 是無返回值。
你說的main()寫法是編譯器會自動幫你補充int 或void的,有的編譯器不支持。
這是小問題,看情況試試就可以知道了,。
建立文件a.c,並在主函數main()中實現以下語句: 急急,怎麼寫
#include void main() {int a,b=80;float c;a=b;c=a+1;printf("%d\n%d\n%f",a,b,c);}將上述內容存為a.c,並編譯執行,就可以了。
執行結果:
友元函數的主函數怎麼寫?
#include
class B
{
public:
void d();
};
class A
{
friend void f();
friend void B::d();
public:
A(int x=0){this->x=x;}
private :
int x;
};
void B::d()成員函數做為類的友元函數
{
A a;
a.x++;
cout<<"調用了成員函數作為友員函數:a.x="<
}
void f()普通函數做為類的友元函數
{
A a;
a.x++;
cout<<"調用普通成員函數作為友元a.x="<
}
void main()
{
B b;
A a;
f();
b.d();
}
數據結構主函數怎麼寫
/* 串a: abcdefghijklmnopqrstuvwxyz 串b: 01234567890123456789 串a: 串c: abcdefghijklmnopqrstuvwxyz Press any key to continue */ #include #define MAXLEN 40typedef struct { char ch[MAXLEN]; int len;}SString;void StrInsert(SString *s,int pos,SString t) { int i; if(pos < 0 ) pos = 0; if(pos > s->len - 1) pos = s->len; if(s->len + t.len <= MAXLEN) { 長度適中 for(i = s->len + t.len - 1;i > pos;i--) s->ch[i] = s->ch[i - t.len]; for(i = 0;i < t.len;i++) s->ch[i + pos] = t.ch[i]; s->len += t.len; } else if(pos + t.len > MAXLEN) { 長度超限1,從pos後不再有s的內容 for(i = pos;i < MAXLEN; ++i) s->ch[i] = t.ch[i - pos]; s->len = MAXLEN; } else { 長度超限2,從pos + t.len後還有s的部分內容 for(i = MAXLEN - 1; i >= pos + t.len; --i) s->ch[i] = s->ch[i - t.len]; for(i = 0; i < t.len; ++i) s->ch[i + pos] = t.ch[i]; s->len = MAXLEN; }} 在s中從pos位置開始刪除len個字元int StrDelete(SString *s,int pos,int len) { int i; if(pos < 0 || pos > s->len) return 0; if(pos + len < s->len) { 刪除s的中間部分 for(i = pos;i < pos + len;i++) s->ch[i] = s->ch[i + len]; s->len -= len; } else { len太大 s->len = pos; } return 1;}SString StrCopy(SString *s,SString t) { int i; for(i = 0;i < t.len;i++) s->ch[i] = t.ch[i]; s->len = t.len; return *s;}int StrEmpty(SString s) { if(s.len == 0) return 1; return 0;}int Stepare(......>>
數據結構用C語言寫的串怎麼寫主函數
/*
串a:
abcdefghijklmnopqrstuvwxyz
串b:
01234567890123456789
串a:
串c:
abcdefghijklmnopqrstuvwxyz
Press any key to continue
*/
#include #define MAXLEN 40typedef struct {char ch[MAXLEN];int len;}SString;void StrInsert(SString *s,int pos,SString t) {int i;if(pos < 0 ) pos = 0;if(pos > s->len - 1) pos = s->len;if(s->len + t.len <= MAXLEN) { 長度適中for(i = s->len + t.len - 1;i > pos;i--)s->ch[i] = s->ch[i - t.len];for(i = 0;i < t.len;i++) s->ch[i + pos] = t.ch[i];s->len += t.len;}else if(pos + t.len > MAXLEN) { 長度超限1,從pos後不再有s的內容for(i = pos;i < MAXLEN; ++i)s->ch[i] = t.ch[i - pos];s->len = MAXLEN;}else { 長度超限2,從pos + t.len後還有s的部分內容for(i = MAXLEN - 1; i >= pos + t.len; --i)s->ch[i] = s->ch[i - t.len];for(i = 0; i < t.len; ++i)s->ch[i + pos] = t.ch[i];s->len = MAXLEN;}} 在s中從pos位置開始刪除len個字元int StrDelete(SString *s,int pos,int len) {int i;if(pos < 0 || pos > s->len) return 0;if(pos + len < s->len) { 刪除s的中間部分for(i = pos;i < pos + len;i++)s->ch[i] = s->ch[i + len];s->len -= len;}else { len太大s->len = pos;}return 1;}SString StrCopy(SString *s,SString t) {int i;for(i = 0;i < t.len;i++) s->ch[i] = t.ch[i];s->len = t.len;return *s;}int StrEmpty(SString s) {if(s.len == 0) return 1;return 0;}int S......>>
線性表的主函數要怎麼寫。 幫幫忙進來看看。。。 10分
/*
請輸入待建立的表長 : 5
請輸入5個元素用空格分開 : 56 54 34 12 76
成功建立表!
插入元素10。
56 10 54 34 12 76
刪除第3個元素。
56 10 34 12 76
Press any key to continue
*/
#include
using namespace std;
#define MaxSize 100
typedef int datatype;
typedef struct {
datatype data[MaxSize];
int last;
}SeqList;
void Init_SeqList(SeqList*L) {
int i;
cout << "請輸入待建立的表長 : ";
cin >> L->last;
cout << "請輸入" << L->last << "個元素用空格分開 : ";
for(i = 0;i < L->last;i++) {
cin >> L->data[i];
}
cout << "\n成功建立表!\n";
}
int Insert_SeqList(SeqList *L,int i,datatype x) {
int j;
if(L->last == MaxSize - 1) {
cout <<"表滿!\n";
return -1;
}
if((i < 1) || (i > L->last + 2)) {
cout << "位置錯!\n";
return 0;
}
for(j = L->last;j >= i - 1;j--)L->data[j + 1] = L->data[j];
L->data[i - 1] = x;
L->last++;
return 1;
}
int Delete_SeqList(SeqList *L,int i) {
int j;
if((i < 1) || (i > L->last + 1)) {
cout << "不存在第i個元素。\n";
return 0;
}
for(j = i;j < L->last;j++) L->data[j - 1] = L->data[j];
L->last--;
return 1;
}
int Locate_SeqList(SeqList *L,datatype x) {
int i = 0;
while((i < L->last) && (L->data[i] != x)) i++;
if(i >= L->last) return -1;
else return 0;
}
void Display_SeqList(SeqList *L) {
if(L == NULL) cout <&l埂; "表為空,不能輸出。&......>>
❷ 最簡單的C語言代碼
最簡單的C語言代就是輸出「helloWord」,通常是作為初學編程語言時的第一個程序代碼。具體代碼如下:
#include <stdio.h>
int main(){
printf("Hello, World! ");
return 0;
}
(2)c語言編譯最簡單的main函數擴展閱讀:
1、程序的第一行#include <stdio.h>是預處理器指令,告訴 C 編譯器在實際編譯之前要包含 stdio.h 文件。
2、下一行intmain()是主函數,程序從這里開始執行。
3、下一行printf(...)是C中另一個可用的函數,會在屏幕上顯示消息"Hello,World!"。
4、下一行return0;終止main()函數,並返回值0。
❸ C語言main函數
我們用命令行時可以有很多選項參數,但main只有兩個參數,所以第二個參數是數組,命令行的多個參數就可存在數組中了。
❹ 初學編程,C語言中的main函數
考慮到main函數的特殊性,lz不明白這個問題可以理解。
main()是省略了返回值類型,C語言會默認認為成main的類型為int,在main()的函數體內要返回一個值,如return 0;
而void main()的返回值是void類型,也就是說沒有返回值。這樣在main()的函數體內你就不用寫return 0;或者return 1;之類的返回語句。
在一個程序中,可以說你看不出兩者的差別,因為main()是C語言的入口點,入口點如果返回了程序也就結束了,因此C語言的這個特性似乎沒用。可沒用的話,C語言的設計者為什麼要這么做呢?!肯定有用。
沒錯,前面我說的是在一個程序中,它似乎沒用。可如果一個程序prog2調用另一個程序prog1的話(這里指的是prog2直接調用prog1編譯好的可執行文件),那麼這個特性就有用了。因為prog2要知道prog1運行之後的狀態。比如你用C寫了一個刪除文件的程序(暫且命名為delf),然後用另一個程序去調用delf,那麼調用結果怎麼樣啊?這個文件是否刪掉了?這是int main()就會派上用場了。C語言中默認的main如果返回為0,那麼這個程序調用就成功了,其他值,則為不同的錯誤代碼。在你的delf程序中,如果那個文件刪除成功,那麼就在int main()中返回0,其他調用delf的程序就知道,噢,這個操作成功了。
在unix/linux系統中的很多命令都是通過這種方式獲得運行結果的。
關於譚浩強的書,我想不用多說,發行量說明了一切。畢竟第二版在編寫的時候還比較早,而第三版根據很多現在的需要進行了改寫,內容當然會好些。鑒於lz是初學C,其實大可不必在這個問題上浪費太多時間,當你有了更多的項目經驗,對這個問題會有更深刻的理解。
上面我已經給出了main()、int main()和void main()的區別,但建議lz忽略這個差別,認為成二者一樣,先把C的其他部分學好。至於只寫成main(),我並不推薦,就算編譯器通過了,這種編程的風格也太不嚴謹,不利於好的習慣的養成。
❺ C語言 主函數 main 到底是什麼
在dos的tc編輯器中,main主函數的類型是省略寫的,也就是前面的類型不用標示,系統默認一個類型,我記不很清楚了,好像是int型的(這個我不確定,可以網路一下)
這個是標示函數的返回值類型的,c是有若干函數組從的,每個函數都有自己的返回類型和返回值。這個是龜腚
main也是函數,所以也有類型和返回值,只不過一般用戶用不到。所以就省略去了,不標示也可以
但是在vc6.0這樣的編輯器中,這個類型是不能省略的,必須標上,要不然會編譯報錯
❻ C語言中 main 是什麼意思
解釋如下:
1、int main()是C語言main函數的一種聲明方式;
2、int表示函數的返回值類型,表示該主函數的返回值是一個int類型的值;
3、main表示主函數,是C語言約定的程序執行入口,其標準的定義格式為int main(int argc, char *argv[]);在int main()中,()中沒有數值表示入參為空,等同於int main(void);
4、事例中printf("%f",a);表示將a的值作為浮點類型列印出來,在屏幕上顯示,而主函數的返回類型int會將返回的值回傳給主調進程,而不是在屏幕輸出。
5、因此,printf的輸出類型跟主函數的返回類型沒有關系,互不關聯。事例中,return 0 對應才是主函數的返回值類型。
拓展資料
在C語言當中,一個程序,無論復雜或簡單,總體上都是一個「函數」;這個函數就稱為「main() 函數」,也就是「主函數」。比如有個「做菜」程序,那麼「 做菜 」這個過程就是「主函數」。在主函數中,根據情況,你可能還需要調用「買菜,切菜,炒菜」等子函數。
main函數在程序中大多數是必須存在的,但是依然有例外情況,比如windows編程中可以編寫一個動態鏈接庫(dll)模塊,這是其他windows程序可以使用的代碼。由於DLL模塊不是獨立的程序,因此不需要main函數。再比如,用於專業環境的程序-----如機器人中的控制晶元--可能不需要main函數。
❼ c語言main函數
//C語言由bell實驗室創立,但後續分支太多
//所以ISO(國際標准化組織)制定了統一標准
//目前通過的標准主要有3個C89C99C11
ASNSIX3.159-1989對應C89由ASNSI制定
ISO/IEC9899:1990還是C89,只是ISO從ASNSI那裡「抄襲」過來,又稱C90
ISO/IEC9899/AMD1:1995對於C89的補充,又稱C95
ISO/IEC9899:1999C99標准
ISO/IEC9899:2011慎侍胡C11標准
//關於main函數的標准在C89和C99又有差異
類型一,不指明返回類型
main(){return0;}
//這在C89中是合法的,因為不指明返回類型其實是隱含的告訴編譯器,這個函數返回類型是int
//這在C99中是非法的,因為C99要求顯式聲明所有函數
類型二,不書寫return...;在main函數中
intmain(void){}
//C89,函數返回值未定義
//C99,當main函數返回類型為int,且沒有寫return語句時,默認返回0
//C99,其他情況下,返回值未定義
類型三,定以返回值為非int
voidmain(void){return;}
//C89,非法(不bb,就是非法)
//C99,允許main函數返回類寬攔型由實現定義,支持void以及其他類型返回值
//所以你的編譯環境,談租不支持C99標准
//而你的書,比較「新」
//建議書寫標准宏編譯
#if__STDC_VERSION__>199901L//標准支持C99
voidmain(void)
#elifdefined__STDC__//支持標准C(89/99)
intmain(void)
#else//如果都不支持,我也很難受
#errorStandardCnotsupport
#endif
❽ c語言main函數的位置是什麼
C語言中main函數可以在任意位置。
每一個C語言程序有且只有一個主函數(main()),且程序必須從main()函數開始,它是程序開始時調用的第一個函數。函數定義形式:【int main(void){}】。
C語言規定,在一個C程序中,main()函數可以在任意位置。
解析:
每個C程序有且只有一個主函數(main),且程序必須從main()函數開始執行,而且main()函數可以放在程序中的任意位置。
詳細介紹:
在宿主環境中編譯的C程序必須定義一個名為main的函數,這是程序開始時調用的第一個函數。
main()函數的定義有以下兩種形式:
(1)函數沒有參數,返回值為int類型。int main( void ) { /*…*/ }.
(2)函數有兩個參數,類型分別是int和char**,返回值是int類型。int main( int argc, char *argv ) { /*…*/ }.
這兩種定義方式都符合C語言標准。除此之外,許多C的實現版本還支持第三種、非標准語法的定義方式:int main( int argc, char *argv, char *envp ) { /*…*/ }.
函數返回值是int,有3個參數:第一個是int,另外兩個是char**。
❾ 怎樣書寫一個C語言程序的main函數
一般:
main()
{
...
}
最完整:
int main(int argc,char* argv[])
{
...
}
解釋:
main函數是運行程序時由系統調用的,知道程序內函數調用是怎麼回事,這應該不難理解,意味著程序從這里開始,到main結束完。main返回時也可使程序結束,返回值的意義自己去查一下即可。第一個參數是DOS下程序被調用時輸入的字元串數量,第二個是字元串內容,例如用這個命令調用
C://a.exe abc q.txt
第一個參數是3,argv[0],[1],[2]分別是"C://a.exe""abc""q.txt"