




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、【精品文檔】如有侵權,請聯系網站刪除,僅供學習與交流C期末考試復習題2(1).精品文檔.(1) int a4=5,3,8,9;其中 a3的值為( D )。 A. 5 B. 3 C. 8 D. 9(2) 以下 4
2、 個數組定義中,(D )是錯誤的。 A. int a7; B.int n=5; long bn; C. char c5; D. int n,d7;(3) 對字符數組進行初始化,( B )形式是錯誤。 A. char&
3、#160;c1 ='1', '2', '3' B. char c2 =123; C. char c310 = '1', '2', '3', '0' D. char c4 ="123
4、"(5) 在數組中,數組名表示( A. )。 A. 數組第 1 個元素的首地址 B.數組第 2 個元素的首地址 C. 數組所有元素的首地址 D.數組最后 1 個元素的首地址(6) 若有以下數組說明,則數值最小的和最大的元素下標分別是(B &
5、#160;)。 int a12 =1,2,3,4,5,6,7,8,9,10,11,12; A. 1,12 B. 0,11 C. 1,11 D. 0,12 (7) 若有以下說明,則數值為 4 的表達式是( D )。 int a12 =1,2,3,
6、4,5,6,7,8,9,10,11,12; char c=a, d=4, g=3 A. ag-c B. a4 C. a'd'-'c' D. a'd'-c (8) 設有定義:char s12 = "stri
7、ng" 則printf( "%dn",strlen(s); 的輸出是( A )。 A. 6 B. 7 C. 11 D. 12(9) 設有定義:char s12 = "string" 則pri
8、ntf("%dn ", sizeof(s); 的輸出是( D)。 A. 6 B. 7 C. 11 D. 12(10) 合法的數組定義是( A)。 A. char a = "string &q
9、uot; B. int a5 =0,1,2,3,4,5; C. char a= "string " D. char a =0,1,2,3,4,5(11) 下面的程序中哪一行有錯誤( D )。 #include <stdio.h> ma
10、in() float array5=0.0; /第A行 int i; for(i=0;i<5;i+) scanf("%f",&arrayi); for(i=1;i<5;i+) array0=array0+arra
11、yi;/第B行 printf("%fn",array0); /第C行 A. 第A行 B. 第B行 C. 第C行 D. 沒有(12) 下面哪一項是不正確的字符串賦值或賦初值的方式( C )。 C
12、0;A. char *str; str="string" B. char str7='s','t','r','i','n','g' C. char str110;str1="string" D. char str1="stri
13、ng",str2="12345678"(13) 若有以下說明和語句,則輸出結果是哪一項( C )。 (strlen(s)為求字符串s的長度的函數) char s12="a book!" printf("%d",strlen(s); A. 12 B. 8 &
14、#160; C. 7 D. 11(14) 若有以下說明和語句,則輸出結果是( C )。char str=""c:abc.dat"" printf("%s",str); A. 字符串中有非法字符 B. "c:abc.dat"
15、 C. "c:abc.dat" D. "c:abc.dat" (15)若有以下語句,則下面 是正確的描述。char x="123456" char y='1', '2','3','4','5','6' (B )A.
16、 x數組與y數組長度相同。 B. x數組長度大于y數組長度。 C. x數組長度小于y數組長度。 D. x數組和y數組的賦值是非法的。(16)在C 語言中,引用數組元素時,其數組下標的數據類型允許是。C A)整型常量B)整型表達式C)整型常量或整型表達式D)任何類型的表達式(17)以下對一維整型數組a 的正確說明是。 DA)inta(10);B)int n=10,an;C)int n;D)#define SIZE 10scanf(“%d”,&n);int aSIZE;int an;(18)若有說明:int a10;則對
17、a 數組元素的正確引用是。 C A)a10 B)a3.5 C)a(5) D)a10-10(19)在C 語言中,一維數組的定義方式為:類型說明符數組名; (C) A)整型常量表達式 B)整型表達式C)整型常量 或整型表達式 D)常量(20)以下能對一維數組a 進行正確初始化的語句是。 ( C)A)int a10=(0,0,0,0,0); B)int a10=;C)int a=0; D)int a10=”10*1”;(21)下面程序如果只有一個錯誤,那么是(每行程序前面的數字表示行號) 。(A)1 main()2 3 float a3=3*0;4 int i;5 for(i=0;i<3;i+
18、) scanf(“%d”,&ai);6for(i=1;i<3;i+) a0=a0+ai;7 printf(“%dn”,a0);8 A)第3 行有錯誤B)第7 行有錯誤C)第5 行有錯誤D)沒有錯誤(22)下面程序中有錯誤9*/的行是(每行程序前面的數字表示行號)。(D)1 main()2 3 float a3=1;4 int i;5 scanf(“%d”,&a);6 for(i=1;i<3;i+) a0=a0+ai;7printf(“a0=%dn”,a0);8 A)3 B)6 C)7 D)5(23)下面程序(每行程序前面的數字表示行號)。 (D)1 main()2
19、3float a3=0;4 int i;5 for(i=0;i<3;i+) scanf(“%f”,&ai);6 for(i=1;i<4;i+) a0=a0+ai;7 printf(“%fn”,a0);8 A)沒有錯誤B)第3 行有錯誤C)第5 行有錯誤D)第6 行有錯誤(24)對以下說明語句的正確理解是。 (B)int a10=6,7,8,9,10;A)將5 個初值依次賦給a1至a5B)將5 個初值依次賦給a0至a4C)將5 個初值依次賦給a6至a10D)因為數組長度與初值的個數不相同,所以此語句不正確1.變量的指針,其含義是指該變量的_B_. a)值 b)地址 c)名 d
20、)一個標志2若有語句int *point,a=4;和point=&a;下面均代表地址的一組選項是_D_. a)a,point,*&a b)&*a,&a,*point c)*&point,*point,&a d)&a,&*point ,point3若有說明;int *p,m=5,n;以下正確的程序段的是_D_.a)p=&n; b)p=&n;scanf("%d",&p); scanf("%d",*p);c)scanf("%d",&n); d)p
21、=&n; *p=n; *p=m;4. 以下程序中調用scanf函數給變量a輸入數值的方法是錯誤的,其錯誤原因是_B_. main()int *p,*q,a,b;p=&a;printf(“input a:”);scanf(“%d”,*p);a)*p表示的是指針變量p的地址b)*p表示的是變量a的值,而不是變量a的地址c)*p表示的是指針變量p的值d)*p只能用來說明p是一個指針變量5. 已有變量定義和函數調用語句:int a=25; print_value(&a); 下面函數的正確輸出結果是_D_. voidprint_value(int *x) printf(“%dn”
22、,+*x);a)23b)24 c)25 d)266.若有說明:long *p,a;則不能通過scanf語句正確給輸入項讀入數據的程序段是A A) *p=&a;scanf("%ld",p); B) p=(long *)malloc(8);scanf("%ld",p); C) scanf("%ld",p=&a); D) scanf("%ld",&a);7.有以下程序B #include<stdio.h> main() int m=1,n=2,*p=&m,*q=&n,*
23、r; r=p;p=q;q=r;printf("%d,%d,%d,%dn",m,n,*p,*q);程序運行后的輸出結果是A)1,2,1,2 B)1,2,2,1C)2,1,2,1 D)2,1,1,28.有以下程序 Cmain() int a=1, b=3, c=5;int *p1=&a, *p2=&b, *p=&c; *p =*p1*(*p2);printf("%dn",c);執行后的輸出結果是A)1B)2C)3D)49.有以下程序 main() inta,k=4,m=4,*p1=&k,*p2=&m;a=p1=&
24、;m;printf("%dn",a);程序運行后的輸出結果是(C)A)4B)1C)0 D)運行時出錯,無定值10.在16位編譯系統上,若有定義int a=10,20,30, *p=&a;,當執行p+;后,下列說法錯誤的是(A) A)p向高地址移了一個字節B)p向高地址移了一個存儲單元C)p向高地址移了兩個字節D)p與a+1等價11.有以下程序段int a10=1,2,3,4,5,6,7,8,9,10,*p=&a3,b;b=p5;b中的值是(C) A)5 B)6 C)8 D)912.若有以下定義,則對a數組元素的正確引用是_d_. int a5,*p=a; a
25、)*&a5 b)a+2 c)*(p+5) d)*(a+2)13.若有以下定義,則p+5表示_A_.int a10,*p=a; a)元素a5的地址 b)元素a5的值 c)元素a6的地址 d)元素a6的值14.設已有定義: int a10=15,12,7,31,47,20,16,28,13,19,*p; 下列語句中正確的是(B) A) for(p=a;a<(p+10);a+); B) for(p=a;p<(a+10);p+); C) for(p=a,a=a+10;p<a;p+);D) for(p=a;a<p+10; +a);15.有以下程序段#include <
26、;stdio.h>int main() int x = 10, 20, 30;int *px = x;printf("%d,", +*px); printf("%d,", *px);px = x;printf("%d,", (*px)+); printf("%d,", *px);px = x;printf("%d,", *px+); printf("%d,", *px);px = x;printf("%d,", *+px); printf("
27、;%dn", *px); return 0;程序運行后的輸出結果是(A )A)11,11,11,12,12,20,20,20 B)20,10,11,10,11,10,11,10C)11,11,11,12,12,13,20,20 D)20,10,11,20,11,12,20,2016.設有如下定義:intarr=6,7,8,9,10;int *ptr;ptr=arr; *(ptr+2)+=2;printf ("%d,%dn",*ptr,*(ptr+2);則程序段的輸出結果為 DA)8,10 B)6,8 C)7,9 D)6,1017.若有定義:int a=2
28、,4,6,8,10,12,*p=a;則*(p+1)的值是_. *(a+5)的值是_A_.A)4 12 B)4 10 C)2 8 D)5 1721.有以下定義 char a10,*b=a;不能給數組a輸入字符串的語句是(B)A)gets(a) B)gets(a0) C)gets(&a0); D)gets(b);22.下面程序段的運行結果是_C_. char *s="abcde" s+=2;printf("%d",s); a)cde b)字符'c' c)字符'c'的地址 d)無確定的輸出結果23.以下程序段中,不能正確
29、賦字符串(編譯時系統會提示錯誤)的是(C)A) char s10="abcdefg" B) char t="abcdefg",*s=t;C) char s10;s="abcdefg" D) char s10;strcpy(s,"abcdefg");24.設已有定義: char *st="how are you" 下列程序段中正確的是(A) A) char a11, *p; strcpy(p=a+1,&st4); B) char a11; strcpy(+a, st); C) char a
30、11; strcpy(a, st);D) char a, *p; strcpy(p=&a1,st+2);25.有以下程序 main()char a="programming",b="language"char *p1,*p2;int i;p1=a;p2=b;for(i=0;i<7;i+)if(*(p1+i)=*(p2+i)printf("%c",*(p1+i);輸出結果是(D) A)gm B)rg C)or D)ga26設p1和p2是指向同一個字符串的指針變量,c為字符變量,則以下不能正確執行的賦值
31、語句是_B_. a)c=*p1+*p2; b)p2=c c)p1=p2 d)c=*p1*(*p2);27以下正確的程序段是_C_. a)char str20; b)char *p;scanf("%s",&str); scanf("%s",p); c)char str20; d)char str20,*p=str;scanf("%s",&str2); scanf("%s",p2);28若有說明語句 char a="It is mine" char *p="It is mi
32、ne"則以下不正確的敘述是_D_. a)a+1表示的是字符t的地址 b)p指向另外的字符串時,字符串的長度不受限制 c)p變量中存放的地址值可以改變 d)a中只能存放10個字符29下面程序的運行結果是_B_. #include <stdio.h> #include <string.h> main() char *s1="AbDeG" char *s2="AbdEg" s1+=2;s2+=2;printf("%dn",strcmp(s1,s2); a)正數 b)負數 c)零 d)不確定的值30.有以下程
33、序 void f(int *x,int *y) int t; t=*x;*x=*y;*y=t; main() int a8=1,2,3,4,5,6,7,8,i,*p,*q; p=a;q=&a7; while(*p!=*q)f(p,q);p+;q-; for(i=0;i<8;i+) printf("%d,",ai); 程序運行后的輸出結果是_C_。A)8,2,3,4,5,6,7,1, B)5,6,7,8,1,2,3,4, C)1,2,3,4,5,6,7,8, D)8,7,6,5,4,3,2,1,31. 已定義以下函數 C fun
34、 (int *p) return *p; 該函數的返回值是 A)不確定的值 B)形參p中存放的值 C)形參p所指存儲單元中的值 &
35、#160; D)形參p的地址值33.若有以下函數首部 int fun(double x10, int *n)則下面針對此函數的函數聲明語句中正確的是DA)int fun(double x, int *n);B)int fun(double , int );C)int fun(double *x, int n);D)int fun(double *, int *);34.有以下程序Avoid sum(int *a) a0=a1;main( ) intaa10=1,2,3,4,5,6,7,8,9,10,i;for(i=2;i>=0;i-) sum(&aai);printf
36、("%dn",aa0);執行后的輸出結果是()A)4 B)3 C)2 D)135.下段代碼的運行結果是:Dint main()char a;char *str=&a;strcpy(str,"hello");printf(str);return 0;A)hello B)null C)h D)發生異常36.下段程序的運行結果是:Bvoid main()char *p,*q;char str="Hello,Worldn"q = p = str;p+;print(q);print(p);void print(char *s)print
37、f(“%s”,s);A)H e B)Hello,World ello,WorldC)Hello,World Hello,World D)ello,World ell,World37.有以下程序void fun(char *c,int d)*c=*c+1;d=d+1;printf("%c,%c,",*c,d);void main()char a='A',b='a'fun(&b,a); printf("%c,%cn",a,b);程序運行后的輸出結果是_D_。A) B,a,B,aB) a,B,a,BC) A,b,A,bD
38、) b,B,A,b38、下面選項屬于函數指針的是:DA、(int*)p(int, int) B、int *p(int, int) C、兩者都是 D、兩者都不是39、若有函數max(a,b),并且已使函數指針變量p指向函數max,當調用該函數時,正確的調用方法是_C_.A)(*p)max(a,b); B)*pmax(a,b);C) (*p)(a,b); D) *p(a,b);41、下列選項中聲明了一個指針數組的是:EA)int *p2; B)int (*p)2; C)typedefint* intPtr;intPtr p2;D)A和BE)A和CF)B和C42、下面代碼能通過編譯的是:AA)int
39、 main()int a3=1,2,3;int *b3=&a1,&a2,&a3;int *p = b;return 0;B)int main()int a3=1,2,3;int *b3=a1,a2,a3;int *p = b;return 0;C)int main()int a3=1,2,3;int *b3=&a1,&a2,&a3;int *p = b; return 0;D)int main()int a3=1,2,3;int *b3=&a1,&a2,&a3;int *p = &b;return 0;2當定義一個
40、結構體變量時,系統為它分配的內存空間是【】 A)結構中一個成員所需的內存容量B)結構中第一個成員所需的內存容量C)結構體中占內存容量最大者所需的容量D)結構中各成員所需內存容量之和4定義以下結構體數組cstruct c int x;int y; s2=1,3,2,7;語句printf("%d",s0.x*s1.x)的輸出結果為 【 】 A) 14 B) 6 C) 2D) 215運行下列程序段,輸出結果是 【a 】 struct country intnum; char name10; x5=1,"China",2,"USA",3,&q
41、uot;France",4, "England",5, "Spanish"struct country *p; p=x+2;printf("%d,%c",p->num,(*p).name2);A) 3,a B) 4,g C) 2,U D) 5,S6下面程序的運行結果是【c 】。structKeyWordchar Key20;int ID;kw="void",1,"char",2,"int",3,"float",4,"double&
42、quot;,5;main()printf("%c,%dn",kw3.Key0, kw3.ID);A) i,3B) n,3C) f,4D) l,48如果有下面的定義和賦值,則使用【 】不可以輸出n中data的值。astructSNodeunsigned id;int data;n,*p;p=&n;A) p.dataB) n.dataC) p->dataD) (*p).data9.根據下面的定義,能輸出Mary的語句是B【】。struct personchar name9;int age;structperson class5="John",1
43、7,"Paul",19,"Mary",18,"Adam",16;A) printf("%sn",); B) printf("%sn",);C) printf("%sn",); D) printf("%sn",);10.定義以下結構體數組 Astruct date int year;int month;int day; ;struct s struct date birt
44、hday; char name20; x4=2008, 10, 1, "guangzhou", 2009, 12, 25, "Tianjin"語句printf("%s,%d,%d,%d",,x1.birthday.year); 的輸出結果為 【】。A) guangzhou,2009 B) guangzhou,2008 C) Tianjin,2008 D) Tianjin,200911運行下列程序段,輸出結果是【D】。struct country intnum; char name20; x5=1,"China&
45、quot;,2,"USA",3,"France",4, "England",5, "Spanish"struct country *p; p=x+2;printf("%d,%s",p->num,);A) 2,FranceB) 3,FranceC) 4,EnglandD) 3, China12定義以下結構體數組Dstructintnum; char name10; x3=1,"china",2,"USA",3,"England&
46、quot;語句printf("n%d,%s",x1.num,)的輸出結果為【】DA)2,USAB)3,England C)1,chinaD)2,England13定義以下結構體數組struct dateint year;int month;struct sstruct date birth; char name20; x4=2008,8,"hangzhou",2009,3,"Tianjin"語句printf("%c,%d",1,x1.birth.year);的輸出結果為【】CA)a,2008B)hangzhou,2008C)i,2009D)Tianjin,200914運行下列程
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年錘紋助劑合作協議書
- 2025年社會福利收養服務合作協議書
- 醫療服務機構采購流程改善計劃
- 2025年慢性病管理與干預計劃
- 小學語文課后輔導德育提升計劃
- 農業基礎設施工程造價人員職責
- 創新工作坊活動心得體會
- 職業健康呼吸道暴露監測流程
- 教育機構ISO三體系認證管理評審計劃
- 藝術教育教師師德師風建設心得體會
- 磷酸鐵鋰生產配方及工藝
- 高處作業吊籃進場驗收表
- 電工電子技術及應用全套課件
- 護理管理學練習題題庫
- DB33T 1233-2021 基坑工程地下連續墻技術規程
- 8.生發項目ppt課件(66頁PPT)
- 手榴彈使用教案
- 《新農技推廣法解讀》ppt課件
- 車載式輪椅升降裝置的結構設計-畢業設計說明書
- 社區家庭病床護理記錄文本匯總
- 劍橋BEC中級真題第四輯TEST1
評論
0/150
提交評論