![《C語言程序設(shè)計》考試模擬練習(xí)題【附答案】_第1頁](http://file4.renrendoc.com/view/2c1443f54d5faf5d007d731b3c054afa/2c1443f54d5faf5d007d731b3c054afa1.gif)
![《C語言程序設(shè)計》考試模擬練習(xí)題【附答案】_第2頁](http://file4.renrendoc.com/view/2c1443f54d5faf5d007d731b3c054afa/2c1443f54d5faf5d007d731b3c054afa2.gif)
![《C語言程序設(shè)計》考試模擬練習(xí)題【附答案】_第3頁](http://file4.renrendoc.com/view/2c1443f54d5faf5d007d731b3c054afa/2c1443f54d5faf5d007d731b3c054afa3.gif)
![《C語言程序設(shè)計》考試模擬練習(xí)題【附答案】_第4頁](http://file4.renrendoc.com/view/2c1443f54d5faf5d007d731b3c054afa/2c1443f54d5faf5d007d731b3c054afa4.gif)
![《C語言程序設(shè)計》考試模擬練習(xí)題【附答案】_第5頁](http://file4.renrendoc.com/view/2c1443f54d5faf5d007d731b3c054afa/2c1443f54d5faf5d007d731b3c054afa5.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、C語言程序設(shè)計考試模擬練習(xí)題【附答案】選擇題若定義:int x=2;y=3;float i;則以下符合C語言語法的表達(dá)式是( )A、x=x*3=2 B、x=(y=1) C、i=float(x) D、i%(-3)B2、若有定義:int a=5,b=2,c=1;則表達(dá)式a-b0C、str1=str2; D、表達(dá)式strlen(str1)的值為6B16、關(guān)于C語言函數(shù)的描述中,正確的是()A、函數(shù)的定義可以嵌套,但函數(shù)的調(diào)用不可以嵌套B、函數(shù)的定義不可以嵌套,但函數(shù)的調(diào)用可以嵌套C、函數(shù)的定義和函數(shù)的調(diào)用都可以嵌套D、函數(shù)的定義和函數(shù)的調(diào)用都不可以嵌套B17、設(shè)有如下定義typedef int *I
2、NTEGER:INTEGER p,*q:則()是正確的表述A、P是int型變量 B、q是基類型為int 的指針變量 C、p是基類型為int的指針變量 D、程序中可用INTEGER代替int類型名C18、若有定義:int m=5,n=3則表達(dá)式(m+1,n+1,(-m),=(n-))的值是()A、6 B、7 C、8 D、919、已知char a;使用scanf()函數(shù)輸入一個字符給變量a ,不正確的函數(shù)調(diào)用是()A、scanf(“%d”,&a) B、scanf(“%lf”,&a) C、scanf(“%c”,&a) D、scanf(“%u”,&a)B20、C語言對于計嵌套語句的規(guī)定:else總是與
3、()配對A、第一個if B、之前最近且尚未配對 C、縮進(jìn)位置相同的if D之前最近的ifB21、對于基類型相同的兩個指針變量之間,不能進(jìn)行的運算是() A、2;后C的值為()A、5 B、7 C、80 D、11233、結(jié)構(gòu)化程序設(shè)計的三種基本語句是()A、函數(shù)結(jié)構(gòu) 分支結(jié)構(gòu) 判斷結(jié)構(gòu)B、函數(shù)結(jié)構(gòu) 嵌套結(jié)構(gòu) 平行結(jié)構(gòu)C、順序結(jié)構(gòu) 分支結(jié)構(gòu) 循環(huán)結(jié)構(gòu)D、分支結(jié)構(gòu) 循環(huán)結(jié)構(gòu) 嵌套結(jié)構(gòu)C34、以下()是不正確的字符串常量A、abc B、”1212” C、”0” D、“ ”35、已知double a=5.2;則正確的賦值表達(dá)式是()A、a+=a-=(a=4)*(a=3) B、a=a*3 C、a%3 D、a
4、=double(-3)B36、以下的計語句中,x的值一定被重新賦值的是()A、if(x=y) x+=y; B、if(xy&x!=y);x+=y; C、if(x!=y) scanf(“%d”,&x) else scanf(“%d”,&y) D、if(xy&x!=y) x+=y; C、if(x!=y) scanf(“%d”,&x); else scanf(”%d”,%y) D、if(x B、| C、& D、+43、若有定義:int a,b;double x,則以下不符合C語言的表達(dá)是()A、x%(-3) B、a+=-2 C、a=b=2 D、x=a+b44、關(guān)于C語言的源程序的敘述中,錯誤的是()A
5、、C語言的源程序由函數(shù)構(gòu)成 B、main函數(shù)可以書寫在自定義函數(shù)之后C、必須包含有輸入語句 D、一行可以書寫多個語句45、設(shè)有以下定義語句:struct student int num;char name10;float score;wang,zhang;則不正確的敘述是()A、struct是結(jié)構(gòu)體類型的關(guān)鍵字 B、zhang是結(jié)構(gòu)體變量名 C、wang是結(jié)構(gòu)體類型名 D、num,name,score都是結(jié)構(gòu)體類型student的成員名46、若有定義:int a33;則表達(dá)式&a21-a的值為()A、7 B、8 C、6 D、947、下列數(shù)組定義中,正確的是()A、int a10 B、int n
6、=10 a10 C、int N=10;int aN D、int n;scanf(“%d”,&n);int an48、若有定義int a23;則對數(shù)組元素的非法應(yīng)用是()A、a01/2 B、a11 C、a4-40 D、a0349、若有:int a=2;則a=ctrcmp(“miss”,”miss”)運行后a的值是()A、1 B、0 C、-1 D、 250、若struct teacherint num;char name10;char sex;int age;float score;teacher1;則變量teacher1所占用的內(nèi)存字節(jié)是()A、B、C、D、51、以下()是正確的變量名 A、a.
7、bee B、-p11 C、int D、p_1152、下面敘述中,()不是結(jié)構(gòu)化程序設(shè)計中的三種基本結(jié)構(gòu)之一A、數(shù)據(jù)結(jié)構(gòu) B、選擇結(jié)構(gòu) C、循環(huán)結(jié)構(gòu) D、順序結(jié)構(gòu)53、若有定義:int a=1,b=2,c=3,d=4,x=5,y=6;則表達(dá)式(x=ab)&(y=cb)的值為()A、0 B、1 C、5 D、654、以下()是正確變量名A、5f B、if C、f.5 D、_f555、char型變量存放的是()A、ASC碼值 B、字符本身 C、十進(jìn)制代碼值 D、十六進(jìn)制代碼值56、putchar()函數(shù)的功能是向終端輸出 ()A、多個字符 B、一個字符 C、一個實型變量值 D、一個整型變量表達(dá)式57、
8、若有定義:int x=3,y=4,z=5,則值為0的表達(dá)式是() A、x&y B、x=y C、x|y=z&y-z D、!(xy)&!z|1)58、以下程序結(jié)束后屏幕輸出(B) A、4 B、5 C、6 D、759、若有定義:int x,a;則語句x=(a=3,a+1):運行后,x、a的值依次為(C) A、3,3 B、4,4 C、4,3 D、3,460、若有定義:int a,b;則表達(dá)式(a=2,b=5,a*2,b+,a+b)的值是(D) A、7 B、8 C、9 D、1061、已有如下定義和輸入語句 Int a;char c1,c2; Scanf(“%d%c%c,”&a,&c1,&c2); 若要求
9、a、c1、c2的值分別是10、A和B,正確的數(shù)據(jù)輸入是(B) A、10AB B、10 A B C、10A B D、10 AB62、若有定義:int a=2,b=3;float x=3.5,y=2.5;則表達(dá)式(float)(a+b)/2+(int)x%(int)y的值是(A) A、3.5 B、3.0 C、2.5 D、2.063、以下程序運行后,循環(huán)體運行的次數(shù)為(B)Int i=10,x;For(i=0;i10;i+) x=x+I; A、10 B、0 C、1 D、無限64、已知int a10;則對a數(shù)組元素引用不正確的是(A) A、a10 B、a3+5 C、a10-10 D、a565、設(shè)有以下
10、變量定義:char str1 =”string”,str28,*str3;*str4=”string”; A、strcpy(str1,”china”) B、str2=”chinta” C、strcpy(*str3,”china”) D、strcpy(str40,”china”)66、設(shè)有以下語句,則(D)是對a數(shù)組元素的不正確引用,其中0=i0) j+) /*語句3*/A、語句2錯誤,其他正確 B、語句1正確,其他錯誤C、語句3正確,其他錯誤 D、語句錯誤,其他正確68、以下敘述不正確的是(D)A、C程序的執(zhí)行總是從main函數(shù)開始、B、一個C源程序必須包含一個main函數(shù)C、C語言程序的基本
11、組成單位是函數(shù)D、在編譯C程序源程序時,可發(fā)現(xiàn)注釋中的拼寫69、以下(B)是錯誤的整形常量A、-0 xcdf B、018 C、0 xe D、01170、語句a=(3/4)+3%2;運行后,a的值為(B)A、0 B、1 C、2 D、371、設(shè)整形變量a為5,使b不為2的表達(dá)式是(C)A、b=(+a)/3 B、b=6-(-a) C、b=a%2 D、b=a/272、已知如下定義和輸入語句:Int a,b;Scanf(“%d,%d”,&a,&b);若要求a、b的值分別為10和20,正確餓數(shù)據(jù)輸入是(A)A、10 20 B、10,20 C、a=10,b=20 D、10;2073、若有定義,int x=3
12、,y=4;則表達(dá)式!x|y的值為(A)A、1 B、0 C、3 D、474、已知char a=R;則正確的賦值表達(dá)式是(D)A、a=(a+)%4 B、a+2=3 C、a+=256-c D、a=07875、設(shè)有整形變量x,下述語句(B)不會出現(xiàn)死循環(huán)A、for(;x+=1) B、for(;(x=gether()!=ln;)C、while(l) x+; D、for(x=10;x-)76、以下能對一維數(shù)組a進(jìn)行正確初始化的語句是(D)A、int a5=(0,0,0,0,0); B、int as=0C、int a5=1,2,3,4,5,6,7 D、int a =077、若有定義:int a 3=1,2,
13、3,4,5,6,7,8,9;則表達(dá)式sizeof(a)/sizeof(a0)的值為(A)A、3 B、4 C、5 D、978、以下敘述中,正確的是(A)A、宏展開不占用運行時間,只占用編譯時間B、預(yù)編譯處理命令行必須以分號結(jié)束C、一個源程序只能有一個預(yù)編譯處理命令行D、使用帶參數(shù)的宏定義時,應(yīng)該說明每個參數(shù)的數(shù)據(jù)類型79、在16位編譯系統(tǒng)上,若有定義int a =10,20,30,*p=&a;當(dāng)執(zhí)行p+;后下列敘述錯誤的是(A)A、p向高地址移了一個字節(jié)B、p與a+1等價C、語句printf(“%d”,p);輸出20D、p指向數(shù)組元素a180、以下C語言共用體類型數(shù)據(jù)的描述中,不正確的是(C)A
14、、共用體變量占的內(nèi)存大小等于所需內(nèi)在最大的成員所占的內(nèi)存B、共用體類型可以出現(xiàn)在結(jié)構(gòu)體類型定義中C、在定義共用體變量的同時允許對另一個成員的值進(jìn)行初始化D、同一共用體中各成員的首地址不相同81、若有以下類型說明,敘述正確的是(A)Typedef structint sum; Char *name Int score;STU,*PSTUA、STU是變量名 B、PSTU是變量名C、PSTU是指向結(jié)構(gòu)體類型STU的指針類型名D、類型說明語句有錯誤82、以下敘述正確的是(D)A、C語言中的文件是流式文件,因此只能順序存取數(shù)據(jù)B、打開一個已存在的文件進(jìn)行了寫操作后,原有文件中的全部數(shù)據(jù)必定被覆蓋C、在一
15、個程序中當(dāng)對文件進(jìn)行了寫操作后,必須先關(guān)閉該文件然后再打開,才能讀到第一個數(shù)據(jù)D、當(dāng)對文件的寫操作完成之后,必須將它關(guān)閉,否則可能導(dǎo)致數(shù)據(jù)丟失83、在C語言源程序中,以下敘述正確的是(C)A、main函數(shù)必須位于文件的開頭B、每行只能寫一條語句C、程序中的每一語句可以寫成行的形式D、每個語句的最后必須有點號84、下面敘述正確的是(B)A、2/3與2.0/3.0等價 B、(int)2.0/3月2/3等價C、+5與6等價 D、A與”A”等價85、getchar()函數(shù)的功能是從終端輸入(D)A、一個整形數(shù)值 B、一個實型變量值C、多個字符 D、一個字符86、若有定義:int I=7,j=8;則表達(dá)
16、式ij|ij的值是(A)A、1 B、變量i的值 C、0 D、變量j的值87、在C語言中while循環(huán)和do-while循環(huán)的主要區(qū)別是(B)A、do-while循環(huán)體內(nèi)可以使用break語句,while循環(huán)內(nèi)不能使用break語句B、do-while的循環(huán)至少無條件執(zhí)行一次,while的循環(huán)體不是C、do-while循環(huán)體內(nèi)可以使用continue語句,while循環(huán)體內(nèi)不能使用continue語句D、while的循環(huán)體至少無條件執(zhí)行一次,do-while的循環(huán)體不是88、以下的敘述中不正確的是(C)A、宏展開不占用運行時間,只占用編譯時間B、宏名無類型C、宏名必須用大寫字母表示D、預(yù)處理命令
17、都必須以#號開始89、以下程序段運行后*(+p)的值為(C) Char a=”work” Char *p;P=a;A、w B、存放w的地址 C、0 D、存放0的地址90、設(shè)有如下定義語句:Union u-typeint I; Double x; Float f; Struct str-typechar str100; Union u_type u2;則語句“printf(“%d”,sizeof(struct str-type);”的輸出結(jié)果是(B)A、100 B、116 C、120 D、20091、標(biāo)準(zhǔn)函數(shù)fgets(s,n,f)的功能是(D)A、從文件f中讀取長度為n的字符串存入指針s所指的
18、內(nèi)存B、從文件f中讀取長度不超過n-1的字符串存入指針s所指的內(nèi)存C、從文件f中讀取幾個字符存入指針s所指的內(nèi)存D、從文件f中讀取長度為n-1的字符串存入指針s所指的內(nèi)存92、若有說明語句:hat c=95;則變量c包含(A)個字符、A、1 B、2 C、3 D、語法錯誤93、若有定義:int i,j;則表達(dá)式(i=2,j=5,i+,j+)的值是(B)A、7 B、8 C、9 D、1094、已知int a;使用scanf()函數(shù)輸入一個整數(shù)給變量a,正確的函數(shù)調(diào)用是(B)Ascanf(“%d”,a); Bscanf(“%d”,&a);Cscanf(“A”,&a); Dscanf(“%df”,&a)
19、95以下程序運行結(jié)果是(D) Void main( ) int n=5;if(n+7=6)printf( “%dn”,n);else printf(“%dn”,n);A4 B5 C6 D7 96對于整形變量x和y, 語句For(x=0y=0;(y!=123) & (x4);x+) y+;中的“y+;”被執(zhí)行(A)A4 次 B0次 C123次 D3次97下列數(shù)組定義中,正確的是(A)Aint a5=0 Bint a=0 1 2 Cint a5=0 Dint a98下列數(shù)組定義中,正確的是(B)Aint a23=1,2,3,4,5,6,7;Bint a =1,2,3,4,5,6,7,8,9;Cin
20、t a2 =1,2,3,4,5,6;Dint a 4=6;99對于C語言源程序,以下敘述錯誤的是(C)A可以有空語句B函數(shù)之間是平等的,在一個函數(shù)內(nèi)不能定義其它函數(shù)C程序調(diào)試時如果沒有提示錯誤,就能得到正確的結(jié)果D注釋可以出現(xiàn)在語句的前面100若有定義:int a34=1,2,0,1,2,3;則a11的值為(A)A0 B1,2 C1 D3101若希望當(dāng)a的值為奇數(shù)時,表達(dá)式的值為“真”,a的值為偶數(shù)時,表達(dá)式的值為“假”,則不能滿足要求的表達(dá)式是(C)Aa%2=1 B(a%2=0) C!(a%2) Da%2102若有定義:int a3=0,1,2;則a1 的值為(B)A0 B1 C2 D3 1
21、03在16位編譯系統(tǒng)上,若有定義int a=10,20,30,*p=&a;當(dāng)執(zhí)行p+后下列敘述錯誤的是(A)Ap向高地址移了一個字節(jié) Bp與p+1等價C語句printf(“%d”,*p);輸出20 Dp指向數(shù)組元素a1104C語言的的函數(shù)體由(B)括起來A() B C D/*/105下面敘述正確的是(A)A強(qiáng)制類型轉(zhuǎn)換運算的優(yōu)先級高于算術(shù)運算B若a和b是整形變量,(a+b)+是合法的CA*B是合法的D“A”+“B”是合法的106下面敘述中,(A)不是結(jié)構(gòu)程序設(shè)計的三種基本結(jié)構(gòu)的共同特點A先判斷后執(zhí)行 B單入口,單出口 C程序中沒有執(zhí)行布道的語句 D無死循環(huán)107以下程序運行后變量a的值為(D)
22、int x=6,y=5;int a;A=(-x=y+)?x:y+1A0 B1 C6 D5108以下程序運行后變量n的值為(D)int i=1,n=1;for(;i3;i+)continue;n=n+1;A4 B3 C2 D1109若有定義:int a5=1,2,3,4,5;則語句a1=a3+a2+2-a3-1;運行后a1的值為(A)A6 B5 C1 D2110設(shè)有如下程序段:int a33=1,0,2,1,0,2,1,0,1,I,j,s=0;for(i=0;i3;i+)for(j=0;jI;j+)s=s+aij;則執(zhí)行程序段后,s的值是(C)A0 B1 C2 D3111如下fun函數(shù)的類型是(
23、C)fun(float x)double y;int z;y=x*x;z=(int)yreturn(z);Avoid Bdouble Cint Dfloat 112.以下敘述中,正確的是(B) A.“# define PRICE=30”定義了30等價符號常量PRICE。 B.預(yù)編譯處理命令行都必須以“#”開頭。 C.宏名只能是含大寫字母和數(shù)字字符。 D.在程序的一行上可以書寫幾個有效的宏定義。113.以下程序段運行后X的值為(B) int a=1,2,3,b=4,5,6;int* p,* q; int I,x; p=a;q=b; for(i=0;inext;Free(p) p=q; (A) A
24、.刪除整個單向鏈表 B.刪除單向鏈表中的一個結(jié) C.顯示單向鏈表中的所有數(shù)據(jù) D.創(chuàng)建單向鏈表116.對枚舉類型進(jìn)行定義,不正確的是(A) A. enum b1,2,3; B. enum aA,B,C; C. enum cD=3,E,F; D. enum dx=0,y=5,z=9;運行結(jié)果題以下程序運行結(jié)果 (C)void main()int sum=0,iten=0;While(item=6) break;Printf(“%dn”,sum);A. 10 B. 15 C. 6 D. 72.下面程序的輸出結(jié)果為(B) #include Void main() ennm Wwwkday sum=7
25、,mon=1,tue,thu.fri,sat;Ennm weekday day=sat;Printf(“%dn”,day);A. 7 B. 6 C. 5 D.43.下面程序運行結(jié)果是(A) Int i=0,a=1,2,3,4,5; Do ai+=10; While(a+i2); For(i=0;i5;i+) Printf(“%d”,ai); A. 11 2 3 4 5 B.1 2 3 4 5 C.11 12 13 14 15 D.11 12 3 4 54.若有定義:int i=0,x=0;int a33=1,2,3,4,5,6,7,8,9; 則以下程序段運行后x的值為(C) For(;i3;i
26、+) x+=a12-i; A. 0 B. 12 C. 15 D. 185.以下程序運行后*(p+3)的值為(A) Char a=”good”; char *p; p=a; A. d B. 0 C.存放d的地址 D. 06.設(shè)有如下變量定義:char aa3=a,b,c,d,e,f; char (*p); A. a B. b C. c D. d7.以下程序的運行結(jié)果 (D) #include Union utypeint I;float fu2; void main()printf(“sizef(u):%dn”,sizeof(u); A. 2 B. 4 C. 6 D. 88.設(shè)有如下函數(shù)定義:
27、Int fun(char*str) char *p;If(p!=0) p+1;Return (p-str);Printf(“%dn”,fun(“student”); 則以下語句執(zhí)行后的輸出結(jié)果是(A) A. 7 B. 8 C. 9 D. 109.若有定義:int a=1,b=2,c=3;則執(zhí)行以下 程序后a,b,c的值分別為(D) If(ab=c=a,a=b,b=c;) A.a=1,b=2,c=3 B.a=2,b=3,c=1; C.a=2,b=3,c=3; D.a=1,b=1,c=1;10.有如下定義:char str6=a,b,0,d,e,f;則語句printf(“%s”,str);的輸出結(jié)
28、果為(D) A. ab B.abdef C.ab0 D.ab11.若有定義:int x=1234,y=123,z=12;則語句printf(“%4d+%3d+%2d”,x,y,z);運行后的輸出結(jié)果為(D) A.123412312 B.1234123412341234131231231212 C.1234+1234+1234 D.1234+123+1212.以下程序的運行結(jié)果是(B) Void main()int sum=0,item=0;While(item5)item+; sum+=item;If(sum=5) break;Printf(“%dn”,sum); A. 10 B. 15 C.
29、 5 D.613.下面程序段的運行結(jié)果是(D)Int i=0,a=3,4,5,4,3; Do ai+; while(a+i5); For(i=0;i5;i+) Printf(“%d”,ai); A. 45654 B.34543 C.45554 D.4554314.以下程序的屏幕輸出為(B)#include Void f (int i) int a=2;a=i+Printf(“%d”,a);Main()int a=1, c=3;F(c);a=c+;printf(“%d”,a); A.4,3 B. 3,3 C. 4,5 D. 3,515.下面程序的輸出結(jié)果是(C)#include#define O
30、NE 1#define TWO ONE+1#define THREE TWO+1 Void main() printf(“%dn”,THREE-ONE); A.產(chǎn)生錯誤 B. 1 C. 2 D. 316.以下程序運行后x的值為(D) Int a9=1,2,3,4,5,6,7,8,9; Int *p,*q; Int I,x; P=&a0; Q=&a8; For(i=0;i3;i+) If(*(p+i)=*(q-i) X=*(p+i)*2; A. 2 B. 4 C. 6 D.不確定17.下面程序段的運行結(jié)果是() Int a=5,b=6;printf(“%d”,a/b); A. 5 B. 6 C.
31、 7 D.818.若有以下函數(shù)定義: Int fun()static int k=0;return +k; 以下程序段運行后屏幕輸出為(D) Int I; For(i=1;i=5;i+) Fun(); Printf(“%d”,fun(); A. 0 B. 1 C. 5 D. 619.以下程序運行結(jié)果是(A) Int fun(int array44)int j;For(j=0;j5); For(i=0;i6;i+) Printf(“%d”,ai);A. 9 7 9 5 10 5 B. 9 5 9 3 10 3 C.9 5 7 3 8 3D. 7 5 7 3 8 321.以下程序運行段運行后x的值
32、為(D) Int a=1,2,3,4,5,6,7,8; Int I,x,*p; X=1; P=&a2; For(i=0;i3,i+) X*=(p+i); A.不確定 B. 24 C. 120 D. 6022.以下程序運行后屏幕輸出為(D) #include Int a=2,b=3; Int max(int a,int b) int c;c=ab?a:b;return (c); main() int a=4;Printf(“%d”,max(d,b); A. 2,3 B. 2 C. 3 D. 423.定義char a=”abcdef”; char b=”xyz”;以下程序運行后輸出(B)Strcp
33、y (a,b); Printf(“%c”,a2);A. c B. z C. 0 D. d24.以下程序運行后屏幕輸出為(B) #include Int f(int x, int y)return(x+y);Main()int a=2,b=3,c;c=f(a,b);printf(“%d+%d=%dn”,a,b,c);A. 0 B. 2+3=5 C.2+3=0 D.3+2=525.以下程序執(zhí)行時,輸入1 2 3 4 5輸出為(A) #include#define N 5 Void main() int aN; intp=a;While(pa) Printf(“%s”,-p);A.5 4 3 2 1
34、 B. 1 2 3 4 5 C.2 3 4 5 1 D.4 3 2 1 526.以下程序的運行結(jié)果是(D) Void main()int a=65;char c=A;printf(“%x,%d”,a,c); A.65,a B.41,a C.65,65 D.41,6527.若有以下定義 #define MOD(x,y) x%y 則執(zhí)行以下程序段后,z的值是(D) Int z,a=15,b=100;z=MOD(b,a);A. 100 B. 15 C. 11 D. 1028.下面程序的輸出結(jié)果是(A) #include#define SQR(x) (x*x)Void main() int a,b=3
35、;a=SQR(b+2);printf(“n%d”,a);A.11 B. 25 C. 不定值 D.產(chǎn)生錯誤29.以下程序的運行結(jié)果是(C) Void main()int n=e;Switch(n-)default:printf(“error”);Case a:Case b:printf(“good”);break;Case c:printf(“pase”);Case d:printf(“warn”); A.error B.good C.error good D.warn30.以下程序段運行后屏幕輸出為(A) Char str80; Strcpy(str,”hello”); Printf(“%d”
36、,strlen(str); A. 5 B. 6 C. 7 D. 831.下面程序的輸出結(jié)果是(D) #includeInt global=100;Fun()int global=5;Return +global;Void main() Pritnf(“%dn”,fun();A. 100 B. 101 C. 5 D. 610.下面程序的輸出結(jié)果是(A)#include Void main() int I;Char *s=”abc”;For(i=0;i3;i+)Printf(“%sn”,s+i);A.a b c B.c C.a b c D.a b c b c c a b c a b c b c a
37、 b c11.以下程序段運行后屏幕輸出為(C) Char a=”abc0mis”;Printf(“5d”,strlen(a);A. 5 B. 8 C. 3 D. 412.執(zhí)行以下程序段的輸出結(jié)果是(B) Int a=10,*p=&a; Printf(“%d”,+*p); A. 1 0 B. 1 1 C.變量a的地址 D.變量a的地址+1 文件題以下程序運行后,屏幕顯示write ok!,下列說法正確的是(D)#include Main() FILE *fp;fp=fopen(“date,txt”,”wt”);if (fp!=NULL)fpr int f(fp,”%sn”,”File write
38、 successed!n”);Fclose(fp);Printf(“write ok!n”); 當(dāng)前工作目錄下存在data.txt文件,其中內(nèi)容是”write ok!” Fclose(fp);語句的功能是打開文件 當(dāng)前工作目錄下一定不存在data.txt文件當(dāng)前工作目錄下一定存在data.txt文件以下程序的功能是(B)#include Main() FILE *fp;Long int n;Fp=fopen(“wj.txt”,”rb”);Fseek(fp,0,SEEK END);N=ftell(fp);Fclose(fp);Printf(“%ld”,n);計算文件wj,txt的起始地址計算文件
39、wj,txt的終止地址計算文件wj,txt內(nèi)容的字節(jié)數(shù)將文件指針定位到文件末尾以下程序執(zhí)行文件名是 file.exeMain(int argc,char *argv) int i;For(i=I;iarge;i+)Printf(“%s%c”,argvi,(iargc-1?:n);在DOS命令篇輸入:File My C Language and Programming回車,其輸入結(jié)果是(A)AC Language and ProgrammingB. My C Language and ProgrammingC. My CLanguage and ProgrammingD. file My C L
40、anguage and Programming4.對下面程序正確的描述是(B)#include#includeVoid main FILE*in,*out; If(in=fopen(“infile.txt”,”r”)=NULL)printf(“cannot open infilen”);Exit(0);While(!feof(in) Fputc(f get(in).out);Fclose(in);Fclose(out);A. 程序?qū)崿F(xiàn)在屏幕上顯示磁盤文件infile.txt的內(nèi)容B. 程序?qū)崿F(xiàn)將兩個磁盤文件infile.txt和outfile.txt的內(nèi)容合二為一C. 程序?qū)崿F(xiàn)將兩個磁盤文件i
41、nfile.txt復(fù)制到磁盤文件outfile.txtD. 程序?qū)崿F(xiàn)將兩個磁盤文件合并在屏幕上輸出5以下程序的可執(zhí)行文件名為tt.exe,若程序運行后屏幕顯示:We are, 則在Dos提示符下輸入的行名是(C)Void main (int argc,char*argv)int I;printf(“%d”,argc);For(i=1;iargc;i+)Printf(%s),argci;A.tt B.tt we C.tt we are D.tt we are happy! 鏈表題1 若有以下定義2 Struct link Int data; Struct link*next;*head,*p;并
42、已建立如下圖示的鏈表結(jié)構(gòu)Headdata next data next data null則能保留鏈表其他結(jié)點,而刪除P所指向結(jié)點的程序段是(A)A. headnext=pnext;free(p);B. headnext=p;pnext=headC. free(p);headnext=p; pnext=head next;D. free(p);headnext=pnext;2.若有定義Struct node Int data Struct node*next; Void fun(struct node*head)及函數(shù): struct node*p=head;While(p)printf(%d
43、,pdata);P=pnext;break;則函數(shù)()的功能是(C)A.刪除單向鏈表 B.顯示單向鏈表的所有數(shù)據(jù) . C.顯示單向鏈表中的第一個數(shù)據(jù) D.創(chuàng)建單向鏈表3若有如下定義,函數(shù)fun的功能是(B),其中head指向鏈表著結(jié)點整個鏈表結(jié)構(gòu)如下圖: .datadatadatanullhead.Struct nodeint data;struct node*next;int fun(struct node*head)int n=0;struct node*t=head;while(t!=NULL)n+;t=tnext;return n;A.刪除鏈表head的所有結(jié)點 B.計算鏈表head中
44、的結(jié)點個數(shù)C.插入一個元素到鏈表head中D.創(chuàng)建一個鏈表head11若有以下定義: struct linkint data;struct link*next;*head, *p; 并已建立如下圖所示的鏈表結(jié)構(gòu):datanextdatanextdataNULLhead. 指針P指向如下傳點:datanextP則能夠把P所指結(jié)點插入到鏈表中成為鏈表第2個結(jié)點的程序段是(C)APnext=headnext;headnext=PBheadnext=P; Pnext=headnextCP. next=head.next;head.next=PD(*head).next=P;(*P).next=(*he
45、ad).next;編程題1.打開程序Cprog 041.c,其中的fun()函數(shù),使其計算:0 x0 x0|x|+3.2sin(x)+2 Fx0|x|+3.2sin(x)+2輸入:1232.250.113輸出:f(12.000)=10.387f(32.250)=12.935f(0.113)=1.568答案:#include#includedouble f(float x)/* */float y;if(x0)y=(fab(x)+3.2)/(sin(x)+2);return y;elsereturn 0;/*/void main()float x;double y;printf(Please i
46、nput a number:n);scanf(%f,&x);y=f(x);printf(f(%.3f)=%.3fn,x,y);getch(); 2.打開Cprong032.c,完成其中的函數(shù)fun(char*s),使得其實現(xiàn)統(tǒng)計輸入字符串中空格的個數(shù)答案:#includeint fun(char*s)/* */ int n=0; while(*s!=0)if(*s=);return n;/* */void main()char str255;gets(str);printf(%dn,fun(str); 3.打開Cprog031.c,完成其中的函數(shù)fun1,該函數(shù)的數(shù)學(xué)表達(dá)式是: 1.2 當(dāng)x3
47、時 fun1(x)= 10 當(dāng)x=3時 2x+1 當(dāng)x3時例如:fun1(0.76)=1.200 fun1(3.00)=10.000 fun1(3.76)=8.520答案:#include#includedouble fun1(double x)/* */if(x3) return 1.2;else if(x=3) return 10;else return 2*x+1;/* */void main()clrscr();printf(fun1(0.76)=%8.3lfn,fun1(0.76);printf(fun1(3.00)=%8.3lfn,fun1(3.00);printf(fun1(3.
48、76)=%8.3lfn,fun1(3.76);4.Cprog 021.c,完成其中的函數(shù)fun1,該函數(shù)的數(shù)字表達(dá)式是:+|x-6|x+1.3xefun1(x)=答案:#include#includedouble fun1/* */double y;y=(exp(x)+fabs(x-6)/(x+1.3);return y;void main()clrscr();printf(fun1(0.76)=%8.31fn,fun1(0.76);printf(fun1(3.00)=%8.3lfn,fun1(3.00);printf(fun1(3.76)=%8.3lfn,fun1(3.76);5.Cprog
49、 022.c,完成其中函數(shù)fun2char a,char b,char c,實現(xiàn):將三個字符串a(chǎn),b,c從小到大排序后輸出。注意:字符串比較函數(shù)為strcmpchar*,char*,字符串復(fù)制函數(shù)為strcpychar*,char*.答案:#include#include#include#includevoid fun2(char a,char b,char c)/* */ char t10; if(strcmp(a,b)0) strcpy(t,a); strcpy(a,b); strcpy(b,t);if(strcmp(a,c) 0) strcpy(t,a); strcpy(a,c); st
50、rcpy(c,t);if(strcmp(b,c)0)strcpy(t,b);strcpy(c,b);strcpy(b,t);/* */void main()char str115=Fuzhou,str215=Fujian,str315=China;clrscr();fun2(str1,str2,str3);printf(The ordered strings is:%s,%s,%sn,str1,str2,str3);gerch();3xlg(|x|+2.6)6.3xlg(|x|+2.6) |x|300 f(x)= -1 |x|300 如:輸入:0.8,輸出f(0.80)=0.96 輸入:4.5
51、,輸出f(4.50)=107.05輸入:725,輸出f(725.00)=-1.00答案:#include#includedouble f(float x)/* */double y;if(fabs(x)300) return y = pow(x,3)/log10(fabs(x)+2.6);else return -1;/* */void main() float x; double y; printf(Please input a number:n); scanf(%f,&x); y=f(x); printf(f(%0.2f)=%0.2fn,x,y); getch(); 7.打開程序Cprog
52、 062.c,完成其中的fun()函數(shù),使其實現(xiàn)四則運算的功能, 如:輸入:3.2 2.1 輸出:3.20+2.10=5.30 3.20-2.10=1.10 3.20*2.10=6.72 3.20/2.10=1.52答案:#include#includefloat fun(float a,char flag,float b)/* */ switch(flag) case+:return a+b; break;case-: return a-b; break;case*: return a*b; break; case/: return a/b; break; default: break;/*
53、 */void main()float a,b;printf(Please input two numbers:n);scanf(%f%f,&a,&b);printf(%.2f+%.2f=%.2fn,a,b,fun(a,+,b);printf(%.2f+%.2f=%.2fn,a,b,fun(a-,b);printf(%.2f+%.2f=%.2fn,a,b,fun(a, *,b);printf(%.2f+%.2f=%.2fn,a,b,fun(a,/,b);getch();8.打開程序cprog052.c完成其中的fun()函數(shù),使其判斷一個矩陣是否為對稱矩陣,若矩陣對稱返回1,不對稱返回0,說明
54、:矩陣a是一個二維數(shù)組,若其中的第k行第j列的元素與第j行第k列的元素相同,則稱其為對稱矩陣,否則為非對稱矩陣。如輸入:6 3 12 輸入:6 9 12 3 18 8 3 18 8 12 8 7 34 8 12 輸出:Yes 輸出:No#include#includeint fun(int a3,int m)/* */int i,j; for(i=0;i3;i+) for(j=0;ji;j+) if(aij!=aji) return 0; return 1; /* */void main() int a33,i,j; int b; fun(a,20); for(i=0;i3;i+) for(j
55、=0;j3;j+) scanf(%d,&aij);b=fun(a,3);if(b=1) printf(Yesn);else printf(Non);getch();9.打開程序Cprong042.c,完成其中的fun()函數(shù),是程序打印出Fibonacci,數(shù)列的前20個數(shù)。該數(shù)列1,1,2,3,5,8,13的第1,第2個數(shù)為1,從第3個數(shù)開始每個數(shù)等于前2個數(shù)之和。答案:#include#includevoid fun(int a,int m)/* */int i;a0=1;a1=1;for(i=2;im;i+) ai=ai-1+ai-2;/* */void main() int a20,i
56、; fun(a,20);for(i=0;i20;i+) printf(%d ,ai);printf(n);getch();10.打開程序cprog051.c,完成其中的fun()函數(shù),使其計算;|x|700 5.8+(x);|x|700f(x) = cos(x)+2.1 -1 ;|x|700如輸入:0.4 輸出:f(0.40)=0.82 輸入:1.5 輸出:f(1.50)=1.24 輸入:7.80 輸出:f(780.00)=-1.00答案:#include#includedouble f(float x)/*/float y;if(fabs(x)700) y=sqrt(5.8+fabs(x)/
57、(cos(x)+2.1); return y;else Return -1;/*/Void main() float x;double y;printf(“please input a number:n”);scanf(“%f”,&x);y=f(x);printf(“f(0.2f)=%0.2fn”,x,y);getch();11.打開考生文件夾中的cprog012.c,完成其中的函數(shù)fun2(inta,int n,int b,int c),實現(xiàn):將數(shù)組a中大于-20的元素,依次存放到數(shù)組b中。將數(shù)組b中的元素按照從小到大的順序存放到數(shù)組c中。函數(shù)返回數(shù)組b中的元素個數(shù)。答案:#include#
58、include#include#includeint fun2(int a,int n,int b,int c) /*/int i,j,k;for(i=0;i-20) bk+=ai; for(i=0;ik-1;i+)for(j=0;jcj+1; t=cj; cj=cj+1; cj+1=t; return k;/*/void main()int n=10,i,nb;int aa10=12,-10,-31,-18,-15,50,17,15,-20,20;int bb10,cc10;/ clrscr()printf(“There are %2d elements in aa.n”,n);printf
59、(“They are:”);for (i=0;in;i+)printf(“%6d”,aai)printf(“n”)nb=fun2(aa,n,bb,cc);printf(“Elements in bb are:”);for(i=0;inb;i+)printf(“%6d”,bbi);printf(“n”);printf(“Elements in cc are:”);for(i=0;inb;i+)printf(“%6d”,cci);printf(“n”);printf(“There are %2d elements in bb.n”,nb);12.打開考生文件夾cprog011.c完成其中的函數(shù)fu
60、n1,該函數(shù)的數(shù)學(xué)表達(dá)式為:答案:#include#includedouble fun1(double x)/*/ double y; y=(1+sin(x)+exp(x)/(1+x); return y;/*/void main() clrscr(); printf(“fun1(0.76)=%8.31fn”,fun1(0.76); printf(“fun1(3.00)=%8.31fn”,fun1(3.00); printf(“fun1(3.76)=%8.31fn”,fun1(3.76);改錯題1程序Cmody041.c,其功能是統(tǒng)計輸入字符串中大小寫字母的個數(shù),如輸入:abcdEFGHIJK
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 現(xiàn)代網(wǎng)絡(luò)編程語言的性能優(yōu)化探討
- 11 爸爸媽媽在我心中(說課稿)-統(tǒng)編版道德與法治三年級上冊
- 9古詩三首《題西林壁》說課稿-2024-2025學(xué)年統(tǒng)編版語文四年級上冊
- 《5 童年在游戲中成長》說課稿-2024-2025學(xué)年三年級上冊綜合實踐活動長春版
- Unit 4 Position Lesson 1 The Magic Show(說課稿)-2024-2025學(xué)年北師大版(三起)英語五年級上冊
- 2023三年級數(shù)學(xué)上冊 3 測量第1課時 毫米的認(rèn)識說課稿 新人教版
- 7 小書包 說課稿-2024-2025學(xué)年語文一年級上冊統(tǒng)編版
- 16大家一起來合作-團(tuán)結(jié)合作快樂多(說課稿)-統(tǒng)編版道德與法治一年級下冊
- 2025拌合站租賃合同模板
- 2025公對私房屋租賃合同
- 肖像繪畫市場發(fā)展現(xiàn)狀調(diào)查及供需格局分析預(yù)測報告
- 國家公務(wù)員考試(面試)試題及解答參考(2024年)
- 名著閱讀:簡答、閱讀題(解析版)-2025年中考語文復(fù)習(xí)專練
- 2021-2022學(xué)年遼寧省重點高中協(xié)作校高一上學(xué)期期末語文試題
- 同等學(xué)力英語申碩考試詞匯(第六版大綱)電子版
- 2024義務(wù)教育道德與法治課程標(biāo)準(zhǔn)(2022版)
- 墓地個人協(xié)議合同模板
- 2024年部編版初中語文各年級教師用書七年級(上冊)
- 企事業(yè)單位公建項目物業(yè)管理全套方案
- 2024年北京市房山區(qū)初三語文一模試卷及答案
- 4P、4C、4R-營銷理論簡析
評論
0/150
提交評論