第一篇:C語言程序設(shè)計期末考試試題(含答案)
C語言程序設(shè)計 期末考試試題及其答案
一、單項選擇題(本大題共20題,每題2 分,共40分)
1、以下不是C語言的特點的是()
A、C語言簡潔、緊湊
B、能夠編制出功能復(fù)雜的程序
C、C語言可以直接對硬件進(jìn)行操作
D、C語言移植性好
2、以下不正確的C語言標(biāo)識符是()
A、ABC B、abc C、a_bc D、ab.c
3、一個C語言程序是由()
A、一個主程序和若干子程序組成 B、函數(shù)組成
C、若干過程組成 D、若干子程序組成
4、一個算法應(yīng)該具有“確定性”等5個特性,對另外4個特性的描述中錯誤的是()
A、有零個或多個輸入
B、有零個或多個輸出
C、有窮性
D、可行性
5、設(shè)變量a是整型,f是實型,i是雙精度型,則表達(dá)式10+‘a(chǎn)’+i*f值的數(shù)據(jù)類型為()
A、int B、float C、double D、不確定
6、在C語言中,char型數(shù)據(jù)在內(nèi)存中的存儲形式是()
A、補碼 B、反碼 C、源碼 D、ASCII碼
7、有如下程序,輸入數(shù)據(jù):12345M678<cR>后(
#include
main(){
int x;
float y;
scanf(“%3d%f”,&x,&y);
}
A、12345 B、123 C、45 D、345
8、若有以下定義int a,b;float x,則正確的賦值語句是()
A、a=1,b=2
B、b++;
C、a=b=5
D、b=int(x);
9、以下程序的執(zhí)行結(jié)果是()
#include
10、巳知字母A的ASCII碼是65,以下程序的執(zhí)行結(jié)果是()
#include
main()
{
char c1='A',c2='Y';
printf(“%d,%dn”,c1,c2);
A、A,Y B、65,65 C、65,90 D、65,89
11、下列運算符中優(yōu)先級最高的是()
A、< B、十 C、% D、!=
12、設(shè)x、y和z是int型變量,且x=3,y=4,z=5,則下面表達(dá)式中值為0是()。
A、’x’&&’y’
B、x<=y(tǒng)
C、x||y+z&&y-z
D、!((x<y)&&!z ||1)
13、判斷char型變量cl是否為小寫字母的正確表達(dá)式為()
A、’a’<=c1<=f’z’ B、(c1>=a)&&(c1<=z)
C、(‘a(chǎn)’>=c1)(‘z’<=c1)D、(c1>=’a’)&&(c1<=’z’)
14、字符串“a”在內(nèi)存中占據(jù)的字節(jié)個數(shù)為()
A、0 B、1 C、2 D、3
15、下面有關(guān)for循環(huán)的正確描述是()
A、for循環(huán)只能用于循環(huán)次數(shù)已經(jīng)確定的情況
B、for循環(huán)是先執(zhí)行循環(huán)體語句,后判定表達(dá)式
C、在for循環(huán)中,不能用break語句跳出循環(huán)體
D、for循環(huán)體語句中,可以包含多條語句,但要用花括號括起來
16、下面程序的運行結(jié)果是()
#include
main()
{int num=0;
while(num<=2)
{num++;
printf(“%d ,num);
}
}
A、1
B、1 2
C、1 2 3
D、1 2 3 4
17、以下描述正確的是()
A、由于do-while循環(huán)中循環(huán)體語句只能是一條可執(zhí)行語句,所以循環(huán)體內(nèi)不能使用復(fù)合語句。
B、do-while循環(huán)由do開始,用while結(jié)束,在while(表達(dá)式)后面不能寫分號。
C、在do-while循環(huán)體中,一定要有能使while后面表達(dá)式的值變成零(“假”)的操作。
D、do-while循環(huán)中,根據(jù)情況可以省略while。
18、以下對一維整形數(shù)組a的正確說明是()
A、int a(10);B、int n=10,a[n];
C、int n;D、int a[10];
scanf(“%d”,&n);
int a[n];
19、以下對二維數(shù)組a的正確說明是()
A、inta[3][];B、float a(3,4);
C、double a[1][4];D、float a(3)(4);
20、若二維數(shù)組a有m列,則在a[j]前面的元素個數(shù)為()
A、j*m+i
B、i*m+j
C、i*m+j-1
D、i*m+j+1
二、填空題(本大題共10空,每空2分,共20分)
1、結(jié)構(gòu)化設(shè)計中的三種基本結(jié)構(gòu)是 ___________________
2、在C語言中的實型變量分為兩種類型,它們是________ 和 _________
3、當(dāng)a=5,b=4,c=2時,表達(dá)式 a>b!= c的值是 _______
4、下列程序運行后的輸出結(jié)果是 _____________
#include
main()
{
int i,j;
for(i=4;i>=1;i--)
{printf(“*”);
for(j=1;j<=4-i;j++)
printf(“*”);
printf(“n”);
}
5、若有定義:int a[3][4]={{1,2},{0},{4,6,8,10}};則初始化后,a[1][2]得到的初值是___________ a[2][1]得到的初值是 ________________
6、在C語言中,二維數(shù)組元素的內(nèi)存中的存放順序是_______________
三、程序分析題(本大題共2題,每題4分,共8分,描述程序功能并寫出程序執(zhí)行結(jié)果)
1、#include
main()
{int a,s,n,count;
a=2;s=0;n=1;count=1;
while(count<=7){n=n*a;s=s+n;++count;}
printf(“s=%d”,s);
}
2、#include
main()
{int a=[3][3]={1,3,5,7,9,11,13,15,17},sum=0,i,j;
for(i=0;i<3;i++)
for(j=0;j<3;j++)
if(i==j)sum=sum+a[j];
printf(“sum=%dn”,sum);
}
四、編程題(本大題共4題,每題8分,共32分)
1、編寫攝氏溫度、華氏溫度轉(zhuǎn)換程序。要求:從鍵盤輸入一個攝氏溫度,屏幕就顯示對應(yīng)的華氏溫度,輸出取兩位小數(shù)。轉(zhuǎn)換公式:F=(C+32)×9/5。
2、試編程判斷輸入的正整數(shù)是否既是5又是7的正倍數(shù)。若是,則輸出yes;否則輸出no。
3、判斷數(shù)m是否為素數(shù)(只能被1和它本身整除的整數(shù))?
4、對15個數(shù)進(jìn)行排序,按從小到大的順序輸出。
《C語言程序設(shè)計》期末考試試卷(A卷)評分標(biāo)準(zhǔn)及標(biāo)準(zhǔn)答案
一、單項選擇題(本大題共20題,每題2 分,共40分)
1、B
2、D
3、B
4、B
5、C
6、D
7、B
8、B
9、A
10、D
11、C
12、D
13、D
14、C
15、D
16、C
17、C
18、D
19、C 20、B
二、填空題(本大題共10空,每空2分,共20分)
1、順序結(jié)構(gòu) 分支結(jié)構(gòu) 循環(huán)結(jié)構(gòu)
2、單精度型(或:float型)雙精度型(或;double型]
3、1
4、*
* *
* * *
* * * *
5、0 6
6、按行主順序存放
三、程序分析題(本大題共2題,每題4分,共8分)
能正確表達(dá)出題目的含義、要求,即可得分,部分正確可按比例得分,否則不得分。
1、功能:求S=0+2+4+8+16+32+64+128 和。
輸出結(jié)果:s=254
2、功能:出矩形陣a的主對角線上的元素之和。
輸出結(jié)果:27
四、編程題(本大題共4題,每題8分,共32分)
能正確表達(dá)出題目的含義、要求,且格式正確,即可得滿分,不要求形式完全相同。部分正確可按比例得分,否則不得分。
1、#include
main()
{ float c,f;
printf(“input c:”);…………………………………………….2分
scanf(“%f”,&c);…………………………………………….2分
f=(c+32.0)*9.0/5.0;…………………………………………….2分
printf(“F=%.2f n”,f);…………………………………………….2分
}
2、#include
main()
{int x;
scanf(“%d”,&x);…………………………………………….2分
if(x%5==0&&x%7==0)…………………………………………….2分
printf(“yes”);…………………………………………….2分
else
printf(“no”);…………………………………………….2分
}
3、# include
# include
main()
{int m,i,k;
scanf(“%dn”,&m);
k=sqrt(m);…………………………………………….2分
for(i=2;i<=k;i++)…………………………………………….2分
{if(m%i==0)
break;…………………………………………….2分
}
if(i>k)
printf(“m is a prime number!n”);…………………………………………….2分
}
4、# include
main()
{int i,j,a[15],t;
printf(“input 15 numbers:n”);
for(i=0;i<15;i++)
scanf(“%d”,&a);…………………………………………….2分
for(j=0;j<15;j++)…………………………………………….2分
for(i=0;i<15-j;i++)…………………………………………….2分
if(a[i]>a[i+1]){t=a[i];a[i]=a[i+1];a[i+1]=t;} …………………………………………….2分 for(i=0;i<15;i++)printf(“%6d”,a)
第二篇:C語言程序設(shè)計模擬試題三(含答案)
C語言程序設(shè)計模擬試題三(含答案)
1、計算機的存儲器完整的應(yīng)包括 A)軟盤、硬盤 B)磁盤、磁帶、光盤 C)內(nèi)存儲器、外存儲器 D)RAM、ROM
2、計算機中運算器的作用是 A)控制數(shù)據(jù)的輸入/輸出
B)控制主存與輔存間的數(shù)據(jù)交換 C)完成各種算術(shù)運算和邏輯運算
D)協(xié)調(diào)和指揮整個計算機系統(tǒng)的操作
3、軟磁盤處于寫保護(hù)狀態(tài)時,其中記錄的信息 A)絕對不會丟失
B)不能被擦除,但能追加新信息 C)不能通過寫磁盤操作被更新
D)不能以常規(guī)方式被刪除,但可以通過操作系統(tǒng)的格式化功能被擦除
4、光盤根據(jù)基制造材料和記錄信息的方式不同,一般可分為 A)CD、VCD B)CD、VCD、DVD、MP3 C)只讀光盤、可一次性寫入光盤、可擦寫光盤 D)數(shù)據(jù)盤、音頻信息盤、視頻信息盤
5、在計算機系統(tǒng)中,可執(zhí)行程序是 A)源代碼 B)匯編語言代碼
C)機器語言代碼 D)ASCII碼
6、計算機軟件系統(tǒng)包括 A)操作系統(tǒng)、網(wǎng)絡(luò)軟件 B)系統(tǒng)軟件、應(yīng)用軟件
C)客戶端應(yīng)用軟件、服務(wù)器端系統(tǒng)軟件
D)操作系統(tǒng)、應(yīng)用軟件和網(wǎng)絡(luò)軟件
7、目前,一臺計算機要連入Internet,必須安裝的硬件是 A)調(diào)制解調(diào)器或網(wǎng)卡
B)網(wǎng)絡(luò)操作系統(tǒng) C)網(wǎng)絡(luò)查詢工具
D)WWW瀏覽器
8、在多媒體計算機系統(tǒng)中,不能存儲多媒體信息的是
A)光盤 B)磁盤
C)磁帶 D)光纜
9、要將當(dāng)前盤當(dāng)前目錄下一個文本文件內(nèi)容顯示在屏幕上,正確的命令形式是 A)TYPE a*.* B)TYPE abc.exe C)TYPE pro.c>PRN D)TYPE abc.txt
10、下列更改文件名的命令中正確的是 A)REN A:file1 C:F1 B)RENAME A: A:file1 C:F1 C)REN A:file1 F1 D)REN A:file1 SUBF1
11、已知A盤為DOS系統(tǒng)啟動盤,只有A:DOS下有自動批處理文件,其中內(nèi)容為: CDDOS MD USER CD USER 由A盤啟動DOS系統(tǒng)后,A盤的當(dāng)前目錄是 A)DOS B)DOSUSER C)D)USE
12、MS-DOS是 A)分時操作系統(tǒng)
B)分布式操作系統(tǒng)
C)單用戶、單任務(wù)操作系統(tǒng)
D)單用戶、多任務(wù)操作系統(tǒng)
13、在Windows操作系統(tǒng)中,不同文檔之間互相復(fù)制信息需要借助于 A)剪切板 B)記事本
C)寫字板 D)磁盤緩沖器
14、在Windows操作系統(tǒng)中 A)同一時刻可以有多個活動窗口
B)同一時刻可以有多個應(yīng)用程序在運行,但只有一個活動窗口 C)同一時刻只能有一個打開的窗口
D)DOS應(yīng)用程序窗口與Windows應(yīng)用程序窗口不能同時打開著
15、下列敘述中正確的是
A)所有DOS應(yīng)用程序都可以在Windows操作系統(tǒng)中正確運行
B)所有DOS應(yīng)用程序都不能在Windows操作系統(tǒng)中正確運行 C)大部分DOS應(yīng)用程序可以在Windows操作系統(tǒng)中正確運行
D)為DOS5.0以上版本操作系統(tǒng)編寫的應(yīng)用程序可以在Windows操作系統(tǒng)中正確運行
16、下列敘述中正確的是 A)C語言編譯時不檢查語法 B)C語言的子程序有過程和函數(shù)兩種 C)C語言的函數(shù)可以嵌套定義
D)C語言所有函數(shù)都是外部函數(shù)
17、以下所列的C語言常量中,錯誤的是 A)0xFF B)1.2e0.5 C)2L D)'72'
18、下列選項中,合法的C語言關(guān)鍵字是 A)VAR B)cher C)integer D)default
19、以下變量x.、y、z均為double類型且已正確賦值,不能正確表示數(shù)學(xué)式子x/(y*z)的C語言表達(dá)式是 A)x/y*z B)x*(1/(y*z))C)x/y*1/z D)x/y/z
20、若a為int類型,且其值為3,則執(zhí)行完表達(dá)式 a+=a-=a*a后,a的值是 A)-3 B)9 C)-12 D)6
21、設(shè)x、y、t均為int型變量,則執(zhí)行語句: x=y=3;t=++x||++y;后,y的值為 A)不定值 B)4 C)3 D)1
22、若變量已正確說明為float類型,要通過語句scanf(“%f %f %f ”,&a,&b,&c);給a賦于10.0,b賦予22.0,c賦予33.0,不正確的輸入形式是: A)10<回車> 22<回車> 33<回車>
B)10.0,22.0,33.0<回車>
C)10.0<回車> 22.0 33.0<回車>
D)10 22<回車> 33<回車>
23、若執(zhí)行以下程序時從鍵盤上輸入9,則輸出結(jié)果是 Main0 { int n;scanf(“%d”,&n);if(n++<10)printf(“%dn”,n);else printf(“%dn”,n--);} A)11 B)10 C)9 D)8
24、若a、b、c1、c2、x、y、均是整型變量,正確的switch語句是 A)swich(a+b);{ case 1:y=a+b;break;case 0:y=a-b;break;}
B)switch(a*a+b*b){case 3:
case 1:y=a+b;break;case 3:y=b-a,break;}
C)switch a
{ case c1 :y=a-b;break case c2: x=a*d;break default:x=a+b;}
D)switch(a-b){default:y=a*b;break case 3:case 4:x=a+b;break;case 10:case 11:y=a-b;break;}
25、有以下程序段 int k=0 while(k=1)k++;while 循環(huán)執(zhí)行的次數(shù)是 A)無限次
B)有語法錯,不能執(zhí)行 C)一次也不執(zhí)行
D)執(zhí)行1次
26、以下程序執(zhí)行后sum的值是 min(){ int i , sum;for(i=1;i<6;i++)sum+=i;printf(“%dn”,sum);} A)15 B)14 C)不確定 D)0
27、有以下程序段 int x=3 do { printf(“%d”,x-=2);} while(!(--x));其輸出結(jié)果是 A)1 B)3 0 C)1-2 D)死循環(huán)
28、若變量c為char類型,能正確判斷出c為小寫字母的表達(dá)式是 A)'a'<=c<= 'z' B)(c>= 'a')||(c<= 'z')C)('a'<=c)and('z'>=c)D)(c>= 'a')&&(c<= 'z')
29、以下所列的各函數(shù)首部中,正確的是 A)void play(var :Integer,var b:Integer)B)void play(int a,b)C)void play(int a,int b)D)Sub play(a as integer,b as integer)
30、以下程序的輸出結(jié)果是 fun(int x, int y, int z){ z=x*x+y*y;} main(){ int a=31;fun(5,2,a);printf(“%d”,a);} A)0 B)29 C)31 D)無定值
31、下列程序段的輸出結(jié)果是 void fun(int *x, int *y){
printf(“%d %d”, *x, *y);*x=3;*y=4;} main(){ int x=1,y=2;fun(&y,&x);printf(“%d %d”,x, y);} A)2 1 4 3 B)1 2 1 2 C)1 2 3 4 D)2 1 1 2
32、下列程序的輸出結(jié)果是 main()
{char a[10]={9,8,7,6,5,4,3,2,1,0},*p=a+5;printf(“%d”,*--p);} A)非法 B)a[4]的地址
C)5 D)3
33、下列程序的運行結(jié)果是 void fun(int *a, int *b){ int *k;k=a;a=b;b=k;} main(){ int a=3, b=6, *x=&a, *y=&b;fun(x,y);printf(“%d %d”, a, b);} A)6 3 B)3 6 C)編譯出錯 D)0 0
34、下面程序的輸出結(jié)果是 main(){int a[ ]={1,2,3,4,5,6,7,8,9,0,},*p;p=a;printf(“%dn”,*p+9);} A)0 B)1 C)10 D)9
35、當(dāng)調(diào)用函數(shù)時,實參是一個數(shù)組名,則向函數(shù)傳送的是 A)數(shù)組的長度
B)數(shù)組的首地址
C)數(shù)組每一個元素的地址
D)數(shù)組每個元素中的值
36、設(shè)有以下說明語句 struct ex { int x;float y;char z;} example;則下面的敘述中不正確的是 A)struct結(jié)構(gòu)體類型的關(guān)鍵字
B)example是結(jié)構(gòu)體類型名 C)x,y,z都是結(jié)構(gòu)體成員名
D)struct ex是結(jié)構(gòu)體類型
37、以下只有在使用時才為該類型變量分配內(nèi)存的存儲類說明是 A)auto和 static B)auto和 register C)register和 static D)extern和 register
38、若fp是指向某文件的指針,且已讀到文件末尾,則庫函數(shù)feof(fp)的返回值是 A)EOF B)-1 C)非零值 D)NULL
39、以下程序的輸出結(jié)果是 main(){ int i, k, a[10], p[3];k=5;for(i=0;i<10;i++)a[i ]=i;for(i=0;i<3;i++)p[i ]=a[i *(i+1)];for(i=0;i<3;i++)k+=p[i] *2;printf(“%dn”,k);} A)20 B)21 C)22 D)23
40、以下程序的輸出結(jié)果是 main(){ int i, x[3][3]={1,2,3,4,5,6,7,8,9};for(i=0;i<3;i++)printf(“%d,”,x[i][2-i]);} A)1,5,9 B)1,4,7 C)3,5,7 D)3,6,9
41、以下程序的輸出結(jié)果是 main(){ int a[3][3]={ {1,2},{3,4},{5,6} },i,j,s=0;for(i=1;i<3;i++)for(j=0;j<=i;j++)s+=a[i][j];printf(“%dn”,s);} A)18 B)19 C)20 D)21
42、以下程序的輸出結(jié)果是 main(){ char w[][10]={ “ABCD”,“EFGH”,“IJKL”,“MNOP”},k;for(k=1;k<3;k++)printf(“%sn”,w[k]);}
A)ABCD FGH KL
B)ABCD EFG IJ M
C)EFG JK O
D)EFGH IJKL
43、當(dāng)執(zhí)行下面的程序時,如果輸入ABC,則輸出結(jié)果是 #include “stdio.h” #include “string.h” main(){ char ss[10]=“1,2,3,4,5”;gets(ss);strcat(ss, “6789”);printf(“%sn”,ss);} A)ABC6789 B)ABC67 C)12345ABC6 D)ABC456789
44、假定以下程序經(jīng)編譯和連接后生成可執(zhí)行文件PROG.EXE,如果在此可執(zhí)行文件所在目錄的DOS提示符下鍵入: PROG ABCDEFGH IJKL<回車>,則輸出結(jié)果為
main(int argc, char *argv[])){ while(--argc>0)printf(“%s”,argv[argc]);printf(“n”);} A)ABCDEFG B)IJHL
C)ABCDEFGHIJKL D)IJKLABCDEFGH
45、以下程序的輸出結(jié)果是 long fun(int n){ long s;if(n= =1 || n= =2)s=2;else s=n-fun(n-1);return s;} main(){ printf(“%ldn”, fun(3));} A)1 B)2 C)3 D)4
46、以下程序的輸出結(jié)果是 #define SQR(X)X*X main(){ int a=16, k=2, m=1;a/=SQR(k+m)/SQR(k+m);printf(“dn”,a);} A)16 B)2 C)9 D)1
47、若定義了以下函數(shù): void f(……){……
*p=(double *)malloc(10*sizeof(double));…… } p是該函數(shù)的形參,要求通過p把動態(tài)分配存儲單元的地址傳回主調(diào)函數(shù),則形參p的正確定義應(yīng)當(dāng)是 A)double *p B)float **p C)double **p D)float *p
48、以下程序的輸出是 struct st { int x;int *y;} *p;int dt[4]={ 10,20,30,40 };struct st aa[4]={ 50,&dt[0],60,&dt[0],60,&dt[0],60,&dt[0],};main(){ p=aa;printf(“%dn”,++(p->x));} A)10 B)11 C)51 D)60
49、假定建立了以下鏈表結(jié)構(gòu),指針p、q分別指向如圖所示的結(jié)點,則以下可以將q所指結(jié)點從鏈表中刪除并釋放該結(jié)點的語句組是 A)free(q);p->next=q->next;B)(*p).next=(*q).next;free(q);C)q=(*q).next;(*p).next=q;free(q);D)q=q->next;p->next=q;p=p->next;free(p);
50、以下程序的輸出結(jié)果是 main(){ int x=0.5;char z='a';printf(“%dn”,(x&1)&&(z<'z'));}
A)0 B)1 C)2 D)3
答案:
CCCCC BADDC CCABC DBDAC CBBDA CCDCC ACBCB BBCBC ADADA BCCBB
第三篇:C語言程序設(shè)計試題 庫
目錄
第一章 基礎(chǔ)知識.....................................................................................................................................................2 一.填空..............................................................................................................................................................2 第二章 常量、變量和表達(dá)式.................................................................................................................................4 一.填空..............................................................................................................................................................4 第三章 順序結(jié)構(gòu).....................................................................................................................................................7 一.填空..............................................................................................................................................................7 第四章 選擇結(jié)構(gòu)...................................................................................................................................................10 一.填空............................................................................................................................................................10 二.閱讀程序?qū)懡Y(jié)果........................................................................................................................................10 三.補充程序....................................................................................................................................................16 四.編程一........................................................................................................................................................21 第五章 循環(huán)結(jié)構(gòu)...................................................................................................................................................26 一.填空............................................................................................................................................................26 二.閱讀程序?qū)懡Y(jié)果........................................................................................................................................26 三.補充程序....................................................................................................................................................32 四.編程一........................................................................................................................................................36 第六章 函數(shù)...........................................................................................................................................................41 一.填空............................................................................................................................................................41 二.閱讀程序?qū)懡Y(jié)果........................................................................................................................................42 三.補充程序....................................................................................................................................................56 四.編程二........................................................................................................................................................61 第七章 數(shù)組...........................................................................................................................................................74 一.填空............................................................................................................................................................74 二.閱讀程序?qū)懡Y(jié)果........................................................................................................................................76 三.補充程序....................................................................................................................................................88 第八章 結(jié)構(gòu)體.......................................................................................................................................................93 一.填空............................................................................................................................................................93 二.閱讀程序?qū)懡Y(jié)果........................................................................................................................................95 三.補充程序..................................................................................................................................................103 第九章 指針.........................................................................................................................................................111 一.填空..........................................................................................................................................................111 二.閱讀程序?qū)懡Y(jié)果......................................................................................................................................112 三.補充程序..................................................................................................................................................118 第十章 文件.........................................................................................................................................................124 一.改錯題......................................................................................................................................................124 第一章 基礎(chǔ)知識
一.填空
1.每個C程序都必須有且僅有一個____ main()____ 函數(shù)。
2.C語言程序開發(fā)到執(zhí)行通常要經(jīng)過6個階段即編輯、預(yù)處理、___編譯_____、鏈接、加載和執(zhí)行。3.軟件是程序,以及__開發(fā)____、使用和維護(hù)所需要的所有文檔。
4.國標(biāo)中規(guī)定:“計算機程序是按照具體要求產(chǎn)生的適合于計算機處理的__指令序列_______”。5.程序設(shè)計語言按照書寫形式,以及思維方式的不同一般分為低級語言和___高級語言_____兩大類。6.C語言是由_____函數(shù)___組成的。
7.C語言的函數(shù)可分為主函數(shù)main、標(biāo)準(zhǔn)庫函數(shù)和_____自定義函數(shù)____。8.一個函數(shù)是由兩部分組成的,即:___函數(shù)首部_____和 函數(shù)體。
9.編譯是將C語言所編寫的源程序_____翻譯___成機器代碼,也稱為建立目標(biāo)代碼程序的過程。10.程序是由某種程序設(shè)計語言編制出來,體現(xiàn)了編程者的控制思想和對計算機執(zhí)行操作的要求。不同的任務(wù)功能,就會需求不同的軟件程序,如:控制計算機本身軟硬件協(xié)調(diào)工作,并使其設(shè)備充分發(fā)揮效力,方便用戶使用的系統(tǒng)軟件程序,稱為操作系統(tǒng);而為辦公自動化(OA)、管理信息系統(tǒng)(MIS)、人工智能、電子商務(wù)、網(wǎng)絡(luò)互聯(lián)等等應(yīng)用而開發(fā)的軟件程序,統(tǒng)稱為__應(yīng)用軟件_______。
11.機器語言是以______二進(jìn)制代碼____形式表示的機器基本指令的集合,是計算機系統(tǒng)唯一不需要翻譯可以直接識別和執(zhí)行的程序設(shè)計語言。
12.與機器語言相比,使用匯編語言來編寫程序可以用_助記符______來表示指令的操作碼和操作對象,也可以用標(biāo)號和符號來代替地址、常量和變量。
13.在編譯程序之前,凡以 # ___開頭的代碼行都先由預(yù)處理程序預(yù)處理。14.C程序的執(zhí)行均是由執(zhí)行__ main函數(shù)_______開始。
15.函數(shù)體即為包含在{ }內(nèi)的部分。它分為___聲明部分_____和為完成功能任務(wù)由若干個C語句 組成的執(zhí)行部分。
16.C語言程序中一條簡單語句是以___;(或分號)_____字符作為結(jié)束符的。17.C語言是結(jié)構(gòu)化、__模塊化______的程序設(shè)計語言。
18.由于計算機硬件不能直接識別高級語言中的語句,因此,必須經(jīng)過“__翻譯_____程序”,將用高級語言編寫的程序翻譯成計算機硬件所能識別的機器語言程序方可執(zhí)行。19.用高級語言編寫的程序需翻譯成計算機硬件所能識別的機器語言程序方可執(zhí)行。所以說,用高級語言進(jìn)行程序設(shè)計,其編程效率高,方便易用,但__執(zhí)行速度_____沒有低級語言高。20.第一個系統(tǒng)體現(xiàn)結(jié)構(gòu)化程序設(shè)計思想的教學(xué)工具語言是__ PASCAL _____語言。
解答: 1.main()
6.函數(shù)
11.二進(jìn)制代碼
16.;(或分號)2.編譯
7.自定義函數(shù)
12.助記符
17.模塊化
3.開發(fā)
8.函數(shù)首部
13.#
18.翻譯
4.指令序列
9.翻譯
14.main函數(shù)
19.執(zhí)行速度
5.高級語言
10.應(yīng)用軟件
15.聲明部分
20.PASCAL 第二章 常量、變量和表達(dá)式
一.填空
1.以16位計算機為例,若定義long int a;則變量a占______個字節(jié)的內(nèi)存空間。2.以16位計算機為例,若定義double a;則變量a占______個字節(jié)的內(nèi)存空間。3.以16位計算機為例,若定義long double;則變量a占______個字節(jié)的內(nèi)存空間。4.在______位機,int型占4個字節(jié)。
5.C語言的數(shù)據(jù)類型有:基本數(shù)據(jù)類型、構(gòu)造數(shù)據(jù)類型、枚舉類型、______、空類型。6.在C語言中,基本數(shù)據(jù)類型有:______。
7.整型常量046轉(zhuǎn)換為十進(jìn)制數(shù)等于______。
8.整型常量054轉(zhuǎn)換為十進(jìn)制數(shù)等于______。9.整型常量0x125轉(zhuǎn)換為十進(jìn)制數(shù)等于 ______。
10.整型常量0x7C轉(zhuǎn)換為十進(jìn)制數(shù)等于______。
11.整型常量39轉(zhuǎn)換為八進(jìn)制等于______。
12.實數(shù)473.468寫成規(guī)范化指數(shù)形式,則應(yīng)為 ______。
13.實數(shù)0.0453寫成規(guī)范化指數(shù)形式,則應(yīng)為______。
14.將0x123轉(zhuǎn)換為二進(jìn)制等于______。
15.字符?A?表示成十六進(jìn)制等于______。
16.在C語言中,稱代表常量的標(biāo)識符為______。
17.C語言中是用編譯預(yù)處理命令______ 來定義符號常量
18.在C語言中,以反斜杠符()開頭,后跟字符的字符序列,稱之為 ______,要用來表示控制及不可見的字符或者一些圖形符號。
19.語句printf(“106”)執(zhí)行的結(jié)果輸出是______。
20.語句printf(“b”)執(zhí)行的結(jié)果輸出是______。
21.語句printf(“b”)執(zhí)行的結(jié)果輸出是______。
22.語句printf(“102”)執(zhí)行的結(jié)果輸出是 ______。
23.若有char ch1;ch1='a'+4;則語句printf(“%c”,x)的輸出結(jié)果為______。
24.字符串常量“Hello, everyone!”占據(jù)的內(nèi)存空間為______個字節(jié) 25.字符串常量“Hello,Bob!”占據(jù)的內(nèi)存空間為 ______個字節(jié)
26.十進(jìn)制整型常量由0~9個數(shù)據(jù)組成,但不能以______開始,沒有小數(shù)部分。27.十六進(jìn)制常量由0~9和______組成。28.unsigned long類型常量通常以______為后綴。29.實型常量通常有小數(shù)形式和______兩種表達(dá)方式。30.C語言中是用編譯預(yù)處理命令______來包含其他源文件。
31.為了表示字符串的結(jié)束,系統(tǒng)自動在字符串的最后加一個______,但不被輸出。32.C語言中,其值可被改變的量稱為變量,它具有三個基本要素:變量名、______和變量值 33.C語言規(guī)定,變量的標(biāo)識符只能由字母、數(shù)字和下劃線組成,且不能以______開頭。34.在16位機中,sizeof(“hellon”)等于 ______。
35.在16位機中,printf(““hello””)等于______。
36.字符變量在內(nèi)存中占用______個字節(jié)的存儲空間。37.若有定義int x=27, y=6;則表達(dá)式 x/y的值為______。38.若有定義int x=47, y=8;則表達(dá)式 x%y的值為______。
39.若有定義char ch1='A',ch2,ch3;執(zhí)行ch2=ch1++;ch3=++ch1;printf(“ch1=%c, ch2=%c”,ch1,ch2);則輸出為______。
40.若有定義char ch1='A',ch2,ch3;執(zhí)行ch2=ch1++;ch3=++ch1;printf(“ch2=%c, ch3=%c”,ch2,ch3);則輸出為______。
41.若有定義int i=5, j, k;執(zhí)行j=i--;k=--i;printf(“i=%d, j=%dn”, i, j);則輸出為______。
42.表達(dá)式(int)(13.7+25.6)/4%5 的值是______。
43.表達(dá)式 3.6-5/2+1.2+5%3 的值是______。
44.表達(dá)式54%10/2+4.0*(8/5)的值是______。
45.若定義int x;double b=5.45;執(zhí)行x=b后,則x的值為______。
46.若定義int y;char c='A';執(zhí)行y=c后,則y的值為______。
47.若定義 int a=8;float b=2.5;則a/(int)(b)的值為______。
48.若a=5,則執(zhí)行a*=7-3語句后,a的值是______。
49.若int a=1,b=0,c=4,d=2;則表達(dá)式(a>b ? a:b)&&(c-d)的值為______。
50.已知a = 0,表達(dá)式 a = 1?b = 1:b = 0;執(zhí)行后,b的值是______。
51.若定義int m=7,n=12;則表達(dá)式n%=m-m%5的值是______。
52.若定義int a=8;float b=4.5;執(zhí)行a*=a/=a-b后,a的值為______。53.int a=2;!a++的值為______。
54.int a=0;!++a的值為______。
55.int a=7;float b=4.5;則printf(“%d”,a*=a/=a-b)的值為 ______。
56.int k=7;float a=2.5,b=4.7;則表達(dá)式a+k%3*(int)(a+b)%2/4的值為 ______。
57.#define MM(a,b)
(a-b)?a:b
int a=2,b=6;printf(“%dn”,MM(a,b))的值為 ______。
58.在32位機中,int a=4,b=7;printf(“%0x”,a-b)的值為:______。
59.int x,y,z;x=y=2;z=3;y=x++-1;printf(“%d,%d”,x,y)的值為: ______。
60.int i=2,j;printf(“%d”,j=i<1)的值為:______ 解答: 1.4
2.4
3.10
6.int、float、double、char 7.38
11.047
12.4.734680e+002 13.4.530000e-002 16.符號常量
17.#define 18.轉(zhuǎn)義字符常量
21.b
22.B
23.e
26.0
27.A~F
28.U
31.“