當前位置:首頁 » 編程語言 » c語言格式

c語言格式

發布時間: 2022-01-14 08:18:48

A. 求c語言編寫的一般格式

1,C語言程序的結構特點

一個C語言程序通常由一個預處理語句開始,如#include〉stdio.h〉,它表示,在編譯語言程序前,用指明的文件取代改預處理語句,通常文件名是帶有後綴為.h的磁碟文件.編譯時,它將從磁碟中讀出並插入到原來的預處理程序語句中.即預處理語句被指明的包含文件(頭文件)代替.
頭文件通常是在程序中被調用函數的說明語句和該函數用到的一些符號常量的宏定義.如在程序中經常調用一些標准庫函數時,系統提供了相應的頭文件,他們其中的一些內容是對該函數的說明及該函數用到的符號常量的宏定義等,如對fgets()的說明放在頭文件stdio.h中,再蓋頭文件包含了對fgets()函數的說明:
char *fgets(char *s,int n,FILE *stream)
對符號常量的定義:
#define NULL 0
當然還包含了一些其他的標准I/O函數的說明和宏定義等.用戶也可以建立自己的頭文件,在程序開頭用include進行包含就行了:
#include"文件名"
注意此時用" "符號來包括,它與 #include〉文件名〉的區別是查找的路徑不同.前者表示現在當前目錄中查找該文件,如果找不到,再到系統指定的目錄中查找.而後者只在系統的制定目錄中查找(一般是include\目錄),若找不到,便報錯.所以用#include"文件名"的形式常用於用戶自己寫的包含文件,他們通常放在和用戶程序同一個目錄下.當然在這種形式中,文件名也可用文件路徑代替,這時,編譯器就去用戶指定的目錄去查找包含文件.文件包含也可以用在程序行中,如:
main()
{
...
#include "myc.c"
...
}
其中myc.c時用戶的c文件,編譯時,它將從磁碟中取出,插入到該位置處.

一些在程序中常用到的常量也用編譯預處理命令#define來定義,如在真假判斷時,常用符號常量TURE和FALSE表示真和假,這時可以用一下定義:
#define TURE 1
#define FALSE 0
將以上代碼寫在程序的開頭,編譯時在程序中出現TURE的地方都用1代替,出現FALSE的地方用0代替.

一個完整的C程序,總是由main()函數開始,它像一個大型樂曲的引子,由此引出許多樂章(執行不同的功能的函數);main()函數又像一個大型建築的框架,它顯示了要完成這個建築的輪廓,這些輪廓就是由一個個函數調用勾畫出來的.因此可以說一個C程序是由一個個的模塊堆砌起來的,這些模塊的最小元素是函數.當然,模塊也可以是一個源程序,它又有許多的函數組成.所以c程序的設計是一種模塊化的設計,是許多的函數的堆砌.因此在應用程序的設計中,應將一個個的功能用一個個的函數來實現.下面就談談函數的使用.
turbo C的函數的使用

Turbo C2.0提供了400多個標準的庫函數,每個函數都完成一定的功能.當程序執行這些功能時,只要調用這些函數即可,用戶不必再自己寫這些函數了.這些庫函數包括輸入輸出函數,數學函數,字元串處理函數,內存函數,與BIOS和Dos有關的介面函數,屏幕函數和圖形函數,過程式控制制函數和目錄函數等.這些函數在我的主頁上都能查到,歡迎來查詢.
當標准庫函數中沒有用戶要用的函數時,就必須自己設計了,設計函數的原則是:
1,函數不應處理太多的功能,要保持函數的小型化,功能單一化.
2,一個函數要保持自己的獨立性,如同一個黑匣子一樣,有進有出.
3,在函數中多使用復合語句,使函數也具有結構化,並且可以提高執行效率和節省存儲空間.
4,在主函數前,要羅列出所有使用自定義函數的原型說明,這有利於在大型程序設計中追蹤要調用的函數設置是 否正確.
5,在程序適當的地方加入注釋(用/*...*/包含的語句)這便於程序的閱讀和調試.
6,採用層次的書寫程序格式,按程序的不同功能分層次.

這樣一個函數編譯後,其內部定義的程序代碼與數據與另一個函數的程序代碼和數據不會相互影響,因此在函數中要使用局部變數,即它的生存期指維持在調用該函數並執行時,也就是說函數被激活時.要盡量少用或不用全局變數,它將破壞函數的獨立性.函數的這種設計方法類似於面向對象設計方法中的封裝性.

C大型軟體程序的設計步驟

C語言作為結構化的程序設計語言,易採用自頂向下的設計方法,即開始咱不涉及問題的實質和具體的解決步驟,而只是從問題的全局出發,給出一個概括性的抽象描述.例如編寫一個信號處理程序,它要求對信號數據經過數字處理後進行圖形顯示並存檔.因而程序大輪廓應該是:
1,信號數據的輸入
2,信號預處理
3,信號進行數字處理
4,進行顯示
5,進行存檔

接著對各項功能進行細分,例如對於信號的輸入,又可分為:
1.通過com1或com2由RS-232介面進行輸入
2.由磁碟數據文件輸入

對信號預處理又可分為:
1.對信號進行反序排列
2.用窗函數預處理

對數字處理又可分為:
1.求快速傅立葉變換
2.求功率譜

對用窗函數處理又可分為:
1.海明窗處理函數
2.漢寧窗處理
3.布拉格曼窗處理

其他功能依此類推.

在此細化的基礎上再進行細化,以至於成為一個個單獨的功能,便於用一個個函數來實現.
下面就是設計一個個函數的實質性階段.要定義變數,要選區標准函數,要確定演算法,這是構造程序的基本單元.當一個個函數都設計完了以後,便可將這些函數在主函數中堆砌起來,並用主函數做總控程序,完成對他們的參數傳遞,控制選擇對這些函數的調用,形成一個完整的實用的信號處理程序.

大程序的設計風格

當一個程序較大時,可將一個程序分成幾個部分,每一個部分可單獨編成一個源文件,這些源文件可進行單獨編譯成.obj文件,然後將這些文件組合成一個較大的程序.通常可採用如下方法:

1.include方法
例如,一個程序分成兩個源文件,既由a1.c和a2.c兩個源程序組成,這時候可將a1.c寫成:

#include〉stdio.h〉
#include"a2.c"
main()
{
...
strcpy(s1,s2);
a2();
...
}
而a2.c可寫成:

#include〉string.h〉
void a2()
{
....
}

然後在製作一個project文件,內容為:a1.c a2.c
設這個工程文件名為:a1.prj,其中文件中各文件名的後綴可省略,先後順序也無關,它隻影響編譯時的順序.者可在Turbo c的編輯狀態下寫成,並存檔為a2.prj文件.然後用Alt+p選擇Project菜單中的Project_name項,填寫生成的a1.prj文件名.然後按F9,即可生成a1.exe可執行文件.

當用匯編語言與C語言混合編程時,則要將匯編語言子程序單獨編譯生成.obj文件,然後製作工程文件,再進行對C程序的編譯和連接.關於這方面的介紹可參考Turbo c2.0的命令行編譯.

若程序還需要一些其他的被編譯的程序或庫文件,這些文件時C語言的標准庫不能提供的,則也可將它們的名字放在Project文件中.如:

mymain
myfunc
secial.obj
other.lib

當用F9進行編譯連接時,對後綴為.obj的文件只進行連接,對後綴為.lib的庫文件不會進行編譯,只是進行連接,這樣當進行外部調用時,就只會對庫進行檢索.
當多個源文件製作成project 文件時,一個.c的源文件依賴於其他的.c源文件,若它們之間用一個頭文件來進行介面,這時應用括弧將這些頭文件擴起來(頭文件之間可用逗號,空格或分號間隔),這樣一旦頭文件改變時,它們將被重新編譯,例如:有一個主程序名為mymian.c,它包含頭文件為:myfuncs.h,而另一個文件是myfuncs.c
這樣當project文件的內容寫成如下形勢時:

mymain.c(myfuncs.h)
myfuncs.c(myfuncs.h)
若一旦myfuncs.h被修改,則對該project文件進行編譯時,mymain.c及myfuncs.h將被重新編譯

B. 請問用C語言編寫程序的格式是什麼

如:

1.#include

引入頭文件(主要引入函數庫,如stdio.h;數學函數」)

2. int main(void ) {

主函數必須是小寫的(程序唯一入口,前面的int、void等都可省略,但「括弧」不能。大括弧內包含的內容為程序主體」

Int num = 10

3.printf(「會好的」);

Printf(「我今年%d歲了\n」,num);
「\n:表示換行;%d表示在這里帶入定義的函數num =
10,所以後面必須跟『num』這個標識符」

}

首先,在程序中注意一些小問題。

1.程序要在英文輸入法的界面輸入,不然程序會報警。

2.程序的格式要有一定的層次關系。

3.在定義函數(標識符)時注意不要選擇了關鍵字。最好在「=」兩邊都空一格。

4.在定義函數時注意數據類型的取值范圍。如:

整型
[signed]int
-2147483648~+2147483648
無符號整型
unsigned[int]
0~4294967295
短整型 short
[int] -32768~32768
無符號短整型
unsigned
short[int]
0~65535
長整型 Long
int
-2147483648~+2147483648
無符號長整型 unsigned
[int]
0~4294967295
字元型[signed]
char
-128~+127
無符號字元型 unsigned
char
0~255
單精度
float
3.4 x 10^(-38)~ 3.4 x
10^(+38)
雙精度
double
1.7 x 10^(-308)~ 1.7 x
10^(+308)
長雙精度 long
double 1.7
x 10^(-308)~ 1.7 x
10(+308)

C. C語言的輸出格式

截圖是在C-Free5.0環境下的運行結果。因為b是float類型,在%.2f格式下輸出的是0.50,而a是int類型,小數部分被截除,整數部分為零,所以輸出為0。要說明的是,對於賦值運算符=,先進行運算符「=「右邊部分的運算,然後將表達式的運算結果賦給「=」左邊的變數。

D. 用C語言編程中,一般的格式是怎樣的

C語言源程序的編程格式歸納如下: 1,強制性規則 1,一個C語言源程序必須有且只有一個MAIN函數. 2,函數名後必須緊跟圓括弧對,函數體放在右圓括弧")"後的花括弧對"{}"中. 3,每個程序體(包括函數的函數體,含有多條語句的選擇結構和循環結構中的語句序列)必須用一對花括弧括起來. 4,文件包含預處理命令,#INCLUDE<*.H>應置於源程序的開始位置. 5,語句未尾必須有分號,而預處理命令和函數首部的未尾及右花括弧之後不要分號. 6,同一字母大,小寫意義不同,關鍵字和標准庫函數名必須用小寫. 7,變數必須先定義,後使用 8,除已有明顯間隔符外,標識符,關鍵字之間必須有至少一個空格 9,註解必須包含在"/* */符號之間 我想你想要知道的是C語言的四種程序結構吧 如下:1,分支語句格式 ①if(條件) {分支體} 這種分支結構中的分支體可以是一條語句,此時「{}」可以省略,也可以是多條語句即復合語句。它有兩條分支路徑可選,一是當條件為真,執行分支體,否則跳過分支體,這時分支體就不會執行。如:要計算x的絕對值,根據絕對值定義,我們知道,當x>=0時,其絕對值不變,而x<0時其絕對值是為x的反號,因此程序段為:if(x<0)x=-x; ②if(條件) {分支1} else {分支2} ③IF嵌套分支語句:其語句格式為: if(條件1) {分支1} else if(條件2) {分支2} else if(條件3) {分支3} …… else if(條件n) {分支n} else {分支n+1} FOR嵌套,其語句格式為: for(初值A;范圍A;步長A) { for(初值B;范圍B;步長B) { 循環體 } } FOR嵌套例子:九九乘法表 main()這里是主程序的編程格式,你參考下 { int a,b,c; for(a=1;a<=9;a++) { for(b=1;b<=a;b++) { c=b*a; printf("%dx%d=%d ",b,a,c); } printf("\n"); } }

E. c語言輸出格式%*s

c語言輸出格式%*s,標識形參佔位。

*在printf中使用,表示用後面的形參替代的位置,實現動態格式輸出。例如:printf("%*s",10,s);意思是輸出字元串s,但至少佔10個位置,不足的在字元串s左邊補空格,這里等同於printf("%10s",s)。


(5)c語言格式擴展閱讀:

C語言輸出格式大全:

格式佔位符(%)可以以下字母配合使用用來表示某些特定的輸入輸出。

%a,%A 讀入一個浮點值(僅C99有效)

%c 讀入一個字元

%d 讀入十進制整數

%i 讀入十進制,八進制,十六進制整數

%o 讀入八進制整數

%x,%X 讀入十六進制整數

%s 讀入一個字元串,遇空格、製表符或換行符結束。

%f,%F,%e,%E,%g,%G 用來輸入實數,可以用小數形式或指數形式輸入。

%p 讀入一個指針

%u 讀入一個無符號十進制整數

%n 至此已讀入值的等價字元數

%[] 掃描字元集合

%% 讀%符號

F. C語言格式

int main()
{
char c;
printf("請輸入一個字元:");
c = getchar();
switch(c)
{
case '1':
printf("yes");break;
case '2':
//略
break;
default: print("");
}
return 0;
}

G. c語言的格式

你按Ctrl+F9就運行了,然後按Alt+F5結果顯示在屏幕上

H. C語言所有語句格式

循環結構是程序中一種很重要的結構。其特點是, 在給定條件成立時,反復執行某程序段,直到條件不成立為止。 給定的條件稱為循環條件,反復執行的程序段稱為循環體。 C語言提供了多種循環語句,可以組成各種不同形式的循環結構。

while語句

while語句的一般形式為: while(表達式)語句; 其中表達式是循環條件,語句為循環體。
while語句的語義是:計算表達式的值,當值為真(非0)時, 執行循環體語句。其執行過程可用圖3—4表示。 統計從鍵盤輸入一行字元的個數。
#include <stdio.h>
void main(){
int n=0;
printf("input a string:\n");
while(getchar()!='\n') n++;
printf("%d",n);
}
本常式序中的循環條件為getchar()!='\n',其意義是, 只要從鍵盤輸入的字元不是回車就繼續循環。循環體n++完成對輸入字元個數計數。從而程序實現了對輸入一行字元的字元個數計數。
使用while語句應注意以下幾點:
1.while語句中的表達式一般是關系表達或邏輯表達式,只要表達式的值為真(非0)即可繼續循環。
void main(){
int a=0,n;
printf("\n input n: ");
scanf("%d",&n);
while (n--)
printf("%d ",a++*2);
}
本常式序將執行n次循環,每執行一次,n值減1。循環體輸出表達式a++*2的值。該表達式等效於(a*2;a++)
2.循環體如包括有一個以上的語句,則必須用{}括起來, 組成復合語句。
3.應注意循環條件的選擇以避免死循環。
void main(){
int a,n=0;
while(a=5)
printf("%d ",n++);
}
本例中while語句的循環條件為賦值表達式a=5, 因此該表達式的值永遠為真,而循環體中又沒有其它中止循環的手段, 因此該循環將無休止地進行下去,形成死循環。4.允許while語句的循環體又是while語句,從而形成雙重循環。

do-while語句

do-while語句的一般形式為:
do
語句;
while(表達式);
其中語句是循環體,表達式是循環條件。
do-while語句的語義是:
先執行循環體語句一次, 再判別表達式的值,若為真(非0)則繼續循環,否則終止循環。
do-while語句和while語句的區別在於do-while是先執行後判斷,因此do-while至少要執行一次循環體。而while是先判斷後執行,如果條件不滿足,則一次循環體語句也不執行。
while語句和do-while語句一般都可以相互改寫。
void main(){
int a=0,n;
printf("\n input n: ");
scanf("%d",&n);
do printf("%d ",a++*2);
while (--n);
}

在本例中,循環條件改為--n,否則將多執行一次循環。這是由於先執行後判斷而造成的。
對於do-while語句還應注意以下幾點:
1.在if語句,while語句中, 表達式後面都不能加分號, 而在 do-while語句的表達式後面則必須加分號。
2.do-while語句也可以組成多重循環,而且也可以和while語句相互嵌套。
3.在do和while之間的循環體由多個語句組成時,也必須用{}括起來組成一個復合語句。
4.do-while和while語句相互替換時,要注意修改循環控制條件。

I. C語言的所有格式符。

%a,%A 讀入一個浮點值(僅C99有效)
%c 讀入一個字元
%d 讀入十進制整數
%i 讀入十進制,八進制,十六進制整數
%o 讀入八進制整數
%x,%X 讀入十六進制整數
%s 讀入一個字元串,遇空格、製表符或換行符結束。
%f,%F,%e,%E,%g,%G 用來輸入實數,可以用小數形式或指數形式輸入。
%p 讀入一個指針
%u 讀入一個無符號十進制整數
%n 至此已讀入值的等價字元數
%[] 掃描字元集合
%% 讀%符號

熱點內容
我的世界工藝伺服器傳送點怎麼搞 發布:2024-12-22 10:56:30 瀏覽:908
exprlinux 發布:2024-12-22 10:55:19 瀏覽:697
你知道甲魚密碼是多少嗎 發布:2024-12-22 10:26:32 瀏覽:812
我的世界國服伺服器開服 發布:2024-12-22 10:09:55 瀏覽:543
標題編譯策略 發布:2024-12-22 10:04:45 瀏覽:222
android開發xml 發布:2024-12-22 10:00:20 瀏覽:64
sql伺服器名稱什麼時候能寫ip 發布:2024-12-22 09:53:19 瀏覽:129
域控制伺服器怎麼設置ip 發布:2024-12-22 09:43:23 瀏覽:883
csvreaderpython 發布:2024-12-22 09:43:13 瀏覽:769
linux更改用戶 發布:2024-12-22 09:35:19 瀏覽:506