❶ c語言里有幾種文件格式有「.c」文件格式嗎
主要是兩種文件類型:1)文本文件,2)二進制文件。
一般來說,人類可讀的文件都作為文本文件,例如一片文章。其餘都作為二進制文件,例如一個程序。
在C語言中,文件的操作是通過FILE結構體進行了,利用fopen返回一個指向FILE結構體的指針,在使用fopen函數過程中,使用mode控制符對是否打開哪類文件進行控制:
FILE *fopen( const char *filename, const char *mode );
filename:文件名,mode:打開的模式,規定了是可讀、可寫、追加之類的屬性。
r 以只讀方式打開文件,該文件必須存在。
r+ 以可讀寫方式打開文件,該文件必須存在。
rb+ 讀寫打開一個二進制文件,允許讀寫數據,文件必須存在。
w 打開只寫文件,若文件存在則文件長度清為0,即該文件內容會消失。若文件不存在則建立該文件。
w+ 打開可讀寫文件,若文件存在則文件長度清為零,即該文件內容會消失。若文件不存在則建立該文件。
a 以附加的方式打開只寫文件。若文件不存在,則會建立該文件,如果文件存在,寫入的數據會被加到文件尾,即文件原先的內容會被保留。(EOF符保留)
a+ 以附加方式打開可讀寫的文件。若文件不存在,則會建立該文件,如果文件存在,寫入的數據會被加到文件尾後,即文件原先的內容會被保留。 (原來的EOF符不保留)
wb 只寫打開或新建一個二進制文件;只允許寫數據。
wb+ 讀寫打開或建立一個二進制文件,允許讀和寫。
ab+ 讀寫打開一個二進制文件,允許讀或在文件末追加數據。
如果調用失敗,返回一個空指針。
❷ 大學C語言2道作業問題,請用可以用Word格式提交,格式與上述內容一樣的進行回答,不要電腦運算的結果!!
你這第一個大題的意義不明確啊,錯誤太多了,隨便說幾個:
是 #include<stdio.h> 拼寫有錯誤
void main() 中void應該是小寫的,不能大寫V,C語言識別大小寫
Int x,y,z同理,不能大寫
先定義了a=1000,再聲明double a,b,錯誤。必須先聲明a,再賦值
scanf("%d,%d,%f,%f ",a,b,x,y),格式錯誤。a,b是double型,對應%f。x,y是整型,對應%d,寫反了
printf("z=%f",z)錯誤,z聲明的是int,整型,應是z=%f
這個裡面既然主函數是void main(),表示無返回值,最後return -1錯誤,不應有return。
具體怎麼改題目沒說清。
ps,第二大題題目太多了吧,自己在vc里運行運行,學好C語言很有用。
❸ C語言的基本格式是什麼
如:
1.#include<stido >
「
引入頭文件(主要引入函數庫,如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語言源程序的編程格式歸納如下: 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"); } }
❺ C語言作業要以什麼格式交我現在是TXT文本文檔.急!!!
改擴展名,就是文件後綴,例如:XXX.txt 這里txt就是後綴
c語言應該是*.c
若果不顯示擴展名,就點工具-》文件夾選項-》查看,取消勾選「隱藏已知文件的擴展名」就ok啦
❻ C語言,提交時提示格式錯誤,希望大佬們幫我看看。
提示格式錯誤,是指現在的格式,與要求的格式不相符。你需要把題目的原文呈上,才能看出問題所在的。
❼ 求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將被重新編譯
❽ 請問用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語言期末作業是讓我們設計一個程序,還要上交一份軟體說明,求說明文件的格式.
背單詞系統
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
struct word //定義一個word的結構體,裡面的兩個成員分別放英語單詞和相應的漢語翻譯
{
char chinese[20];
char english[20];
};
int point=0; //統計分數的
int count1=0; //測試的次數
void tianjia(struct word str[100],int &count); //函數聲明,往詞庫中添加片語
void shuchu(struct word str[100],int &count); //函數聲明,輸出詞庫中所有的片語
void fanyi1(struct word str[100],int &count); //函數聲明,輸入漢語,對英語翻譯的考察
void fanyi2(struct word str[100],int &count);
void chaxun(int point,int count1); //函數聲明,輸出成績!
void main()
{
int count=0;
struct word str[100]; //定義一個結構體數組str
int n;
char ch,chioch;
while(1)
{
printf("*************背單詞系統*********************\n");
printf("*************1,添加詞庫*********************\n");
printf("*************2,漢譯英***********************\n");
printf("*************3,英譯漢***********************\n");
printf("*************4,輸出所有詞庫*****************\n");
printf("*************5,成績查詢*********************\n");
printf("*************0,退出*************************\n");
printf("********************************************\n");
printf("請輸入你要經行的操作:\n");
scanf("%d",&n);
switch(n)
{
case 1:tianjia(str,count);break; //函數調用
case 2:fanyi1(str,count);break; //函數調用
case 3:fanyi2(str,count);break; //函數調用
case 4:shuchu(str,count);break;
case 5:chaxun(point,count1);break; //函數調用
case 0:{printf("你確認要退出嗎?y/n!!\n");
scanf("%c%c",&ch,&chioch);
if(ch=='y'||ch=='Y') exit(0);
}
default :printf("你輸入了錯誤的操作,無法執行!!!");
exit(0);
}
}
}
void tianjia(struct word str[100],int &count) //往詞庫中添加片語
{
char ch;
do{
printf("錄入詞庫!!!\n");
printf("請輸入詞庫中的英語單詞:\n");
scanf("%s",str[count].english);
printf("\n請輸入相應的中文意思:\n");
scanf("%s",str[count].chinese);
count++;
printf("是否繼續錄入?y/n!!!\n");
scanf("%s",&ch);
}while(ch=='y');
printf("%d\n\n",count);
}
void shuchu(struct word str[100],int &count) // 輸出詞庫中所有的片語
{
int i=0;
printf("輸出詞庫中所有的單詞!!!\n");
if(count<=0) {printf("沒有任何單詞,無法輸出!!!\n");return;}
else {
for(i=0;i<count;i++){
printf("英文單詞是:%s",str[i].english);
printf("\n相應的中文意思是:%s",str[i].chinese);
printf("\n\n");
}
printf("詞庫所有單詞輸入完畢!!!!\n");
}
}
void fanyi1(struct word str[100],int &count) //輸入漢語,對英語翻譯的考察
{
int i;
char ch[20];
char bh[20];
printf("請輸入英語單詞:\n");
scanf("%s",ch);
printf("請輸入翻譯後的中文:\n");
scanf("%s",bh);
for(i=0;i<count;i++)
{
if(strcmp(ch,str[i].english)==0)
{
if(strcmp(bh,str[i].chinese)==0)
{
point++;
count1++;
printf("恭喜你!!答對了!!!\n");
}
else
{
count1++;
printf("很遺憾,答錯了!!!正確的翻譯是:%s\n",str[i].chinese);
}
}
}
}
void fanyi2(struct word str[100],int &count) //輸入英語,對漢語翻譯的考察
{
int i;
char ch[20];
char bh[20];
printf("請輸入中文:\n");
scanf("%s",ch);
printf("請輸入翻譯後的英文:\n");
scanf("%s",bh);
for(i=0;i<count;i++)
{
if(strcmp(ch,str[i].chinese)==0)
{
if(strcmp(bh,str[i].english)==0){
point++;
count1++;
printf("恭喜你!!答對了!!!\n");
}
else
{
count1++;
printf("很遺憾,答錯了!!!正確的翻譯是:%s\n",str[i].english);
}
}
}
}
void chaxun(int point,int count1)
{
printf("本次測試的成績是:\n");
printf("總共:%d個\n",count1);
printf("正確:%d個\n",point);
// printf("正確率為:%d\%\n",point*100/count1);
}
軟體說明只要說明有哪些功能