301、變量a所占內(nèi)存字節(jié)數(shù)是 A) 4 B) 5 C) 6 D) 8 union U { char st[4]; int i; long l; }; struct A { int c; union U u; }a;、C、3
302、標(biāo)準(zhǔn)函數(shù) fgets(s, n, f) 的功能是 A) 從文件f中讀取長(zhǎng)度為n的字符串存入指針s所指的內(nèi)存 B) 從文件f中讀取長(zhǎng)度不超過(guò)n-1的字符串存入指針s所指的內(nèi)存 C) 從文件f中讀取n個(gè)字符串存入指針s所指的內(nèi)存 D) 從文件f中讀取長(zhǎng)度為n-1的字符串存入指針s所指的內(nèi)存、B、3
303、rewind函數(shù)的作用是________。 A、重新打開(kāi)文件 B、使文件位置指針重新回到文件末 C、使文件位置指針重新回到文件的開(kāi)始 D、返回文件長(zhǎng)度值、C、3
304、當(dāng)____,可以不指定數(shù)組長(zhǎng)度。 (A) 對(duì)靜態(tài)數(shù)組賦初值 (B) 對(duì)動(dòng)態(tài)數(shù)組賦初值 (C) 只給一部分元素賦值 (D) 對(duì)全部數(shù)組元素賦初值、D、3
305、以下程序的輸出結(jié)果是____ i=5; i=++i*4+2; A、5 B、6 C、23 D、26、D、3
306、以下程序的輸出結(jié)果是____ i=5; i=i++*4+2; A、5 B、6 C、23 D、26、C、3
307、以下程序的輸出結(jié)果是____ main() {int x,y,z; x=y=z=0; ++x||++y||++z; printf(“%d,%d,%d\n”,x,y,z); } A、1,1,1 B、1,0,0 C、1,1,0 D、1,0,1、B、3
308、C語(yǔ)言中函數(shù)能否嵌套調(diào)用和遞歸調(diào)用? A、二者均不可 B、前者可,后者不可 C、前者不可,后者可 D、二者均可、D、3
309、C語(yǔ)言聯(lián)合類(lèi)型在任何給定時(shí)刻_____。 A、 所有成員一直駐留在結(jié)構(gòu)中。 B、 只能有一個(gè)成員駐留在結(jié)構(gòu)中。 C、 部分成員駐留在結(jié)構(gòu)中。 D、 沒(méi)有成員駐留在結(jié)構(gòu)中。 、B、3
310、#include main() { int a,b,c,d; scanf("%d%d",&a,&b); c=gbs(a,b); d=gys(a,b); printf("a=%db=%d gbs=%d gys=%d\n",a,b,c,d); } gbs(a,b) int a,b; { int c; a=a>0?a:-a; b=b>0?b:-b; c=a*b; if(c==0) return(0); while(a!=b) if(a>b) a-=b; else b-=a; return(c/a); } gys(a,b) int a,b; { if(a*b==0) return(0); a=a>0?a:-a; b=b>0?b:-b; while(a!=b) if(a>b) a-=b;else b-=a; return(a); } 請(qǐng)寫(xiě)出上面程序的運(yùn)行結(jié)果: A、a=30 b=63 gbs=189 gys=9 B、a=27 b=63 gbs=190 gys=10 C、a=27 b=63 gbs=189 gys=9 D、a=27 b=63 gbs=188 gys=10、C、3
311、請(qǐng)讀程序: main() { int *p,x; x=10; *p=x; printf("%d\n",*p); } 請(qǐng)判斷上面程序____ A、錯(cuò)誤:*p=x; printf("%d\n"),*p); 正確:p=&x; printf("%d\n",p); B、錯(cuò)誤:*p=x; printf("%d\n"),*p); 正確:p=**x; printf("%d\n",p);C、錯(cuò)誤:int *p,x; 正確:int *(p),*(x);D、錯(cuò)誤:*p=x; 正確:p=&x;、A、3
312、根據(jù)下面的定義,能打印出字母M的語(yǔ)句是____ A) printf("%c\n",class[3]、name); D) printf("%c\n",class[2]、name[0]); B) printf("%c\n",class[3]、name[1]); C) printf("%c\n",class[2]、name[1]); struct person { char name[9]; int age;}; struct person class[10]={"John",17, "Paul",19, "Mary",18, "Adam",16};、D、3
313、假定建立了以下鏈表結(jié)構(gòu),指針p、q分別指向如圖所示的結(jié)點(diǎn),則以下可以將q所指結(jié)點(diǎn)從鏈表中刪除并釋放該結(jié)點(diǎn)的語(yǔ)句組是 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);、B、3
314、假定下列程序的可執(zhí)行文件名為prg、exe,則在該程序所在的子目錄下輸入命令行: prg hello good后,程序的輸出結(jié)果是 A) hello good B) hg C) hel D) hellogood main()(int argc, char *argv[]) { int i; if(argc<-0)return; for(i=1;i、B、3
315、假定以下程序經(jīng)編譯和連接后生成可執(zhí)行文件PROG、EXE,如果在此可執(zhí)行文件所在目錄的DOS提示符下鍵入: PROG ABCDEFGH IJKL,則輸出結(jié)果為 A) ABCDEFG B) IJHL C) ABCDEFGHIJKL D) IJKLABCDEFGH main( int argc, char *argv[])) { while(--argc>0) printf("%s",argv[argc]); printf("\n"); }、D、3
316、利用數(shù)組寫(xiě)出一個(gè)與int *p[4]等價(jià)的說(shuō)明。 A、int &p[4]; B、int p[4]; C、int **p[4]; D、int *(*p[4]);、B、3
317、請(qǐng)選出以下程序段的輸出結(jié)果 #include #define MIN(x,y) (x)、A、3
318、若a=5,b=3,c=4,邏輯表達(dá)式!(a+b)&&!c的值為_(kāi)___ (A) 0 (B) -1 (C) 1 (D) 2、C、3
319、若fp是指向某文件的指針,且已讀到文件末尾,則庫(kù)函數(shù)feof(fp)的返回值是____ A) EOF B) -1 C) 非零值 D) NULL、C、3
320、若程序中有下面的說(shuō)明和定義 struct abc {int x;char y;} struct abc s1,s2; 則會(huì)發(fā)生的情況是 A) 編譯進(jìn)錯(cuò) B) 程序?qū)㈨樌幾g`連接`執(zhí)行 C) 能順利通過(guò)編譯`連接`但不能執(zhí)行 D) 能順利通過(guò)編譯`但連接出錯(cuò)、A、3
321、若想要通過(guò)異或運(yùn)算對(duì)變量a進(jìn)行高4位求反,低四位不變,則b應(yīng)為_(kāi)___。(二進(jìn)制表示) A、11110000 B、00001111 C、視a值而定 D、不可能實(shí)現(xiàn)、A、3
322、若要打開(kāi)A盤(pán)上user子目錄下名為abc、txt的文本文件進(jìn)行讀、寫(xiě)操作,下面符合此要求的函數(shù)調(diào)用是 A) fopen("A:\user\abc、txt","r") B) fopen("A:\\user\\abc、txt","r+") C) fopen("A:\user\abc、txt","rb") C) fopen("A:\\user\\abc、txt","w")、B、3
323、若給定條件表達(dá)式(M)?(a++):(a--)則 其中表達(dá)式M和________等價(jià)。 A、(M==0) B、(M==1) C、(M!=0) D、(M!=0)、C、3
324、若已定義:int a[9],*p=a;并在以后的語(yǔ)句中未改變p的值,不能表示a[1] 地址的表達(dá)式是 A) p+1 B) a+1 C) a++ D) ++p、C、3
325、若要用下面的程序片段使指針變量p指向一個(gè)存儲(chǔ)整型變量的動(dòng)態(tài)存儲(chǔ)單元: int *p; p=__________ malloc( sizeof(int)); 則應(yīng)填入 A)int B)int * C)(*int) D)(int *)、D、3
326、以下程序的輸出結(jié)果是____ main() {int x,y,z; x=y=z=0; ++x&&++y||++z; printf(“%d,%d,%d\n”,x,y,z); } A、1,1,1 B、1,0,0 C、1,1,0 D、1,0,1、C、3
327、若以下程序所生成的可執(zhí)行文件名為filel、exe ; 當(dāng)打入以下命令行執(zhí)行該程序時(shí); FILE1 CHINA BEIJING SHANGHA1 程序的輸出結(jié)果是 A、 XHIN VWIJINF AHANJHAI B、 FILE1 CHINA BEIJING C、 C B S D、 F C B main(int arge,char * argv []) { char ch [7]={"65ab21"}; int i,s=0; for (i=0;ch [i]>='0'&&ch [i]'9';i+=2) s=10*s+ch[i]-'0'; print ("%d\n",s)' }、A、3
328、若有定義和語(yǔ)句: int **pp,*p,a=10,b=20; pp=&p;p=&a;p=&b;printf("%d\n",*p,**pp); 則輸出結(jié)果是: A)10,20 B)10,10 C)20,10 D)20,20、D、3
329、若有說(shuō)明語(yǔ)句:int a,b,c,*d=&c;,則能正確從鍵盤(pán)讀入三個(gè)整數(shù)分別賦給變量a、b、c的語(yǔ)句是 A) scanf("%d%d%d",&a,&b,d); B) scanf("%d%d%d",&a,&b,&d); C) scanf("%d%d%d",a,b,d); D) scanf("%d%d%d",a,b,*d);、A、3
330、若有說(shuō)明:int i, j=2,*p=&i;,則能完成i=j賦值功能的語(yǔ)句是 A) i=*p; B) p*=*&j; C) i=&j; D) i=**p;、B、3
331、若有說(shuō)明:int i,j=7, *p=&i;,則與i=j;等價(jià)的語(yǔ)句是 A) i= *p; B) *p=*&j; C) i=&j; D) i=* *p;、B、3
332、若有說(shuō)明:long *p,a;則不能通過(guò)scanf語(yǔ)句正確給輸入項(xiàng)讀入數(shù)據(jù)的程序段是 A) *p=&a; scanf("%ld",p); B) p=(long *)malloc(8); scanf("%ld",p); C) scanf("%ld",p=&a); D) scanf("%ld",&a);、A、3
333、若有以下的定義: int a[]={1,2,3,4,5,6,7,88,9,10}, *p=a; 則值為3的表式是 A) p+=2, *(p++) B) p+=2,*++p C) p+=3, *kp++ D) p+=2,++*p、A、3
334、若有以下的說(shuō)明,則對(duì)初值中字符'a'的引用方式為_(kāi)__。 static struct { char ch; double x; char a[]; }c[2][2]={{{'a',3、5,'bc'},{'c',4、5,'de'},{'m',8、6,'abc'}}}; A、c、ch B、c[0][0]、ch C、c[1][1]、ch D、a[0]、B、3
335、若有以下的說(shuō)明和語(yǔ)句,則在執(zhí)行for語(yǔ)句后,*(*(pt+l)+2)表示的數(shù)組元素是 A) t[2][0] B) t[2][2] C) t[l][2] D) t[2][l] int t[3][3], *pt([3], k; for (k=0;k、C、3
336、若有下面的說(shuō)明和定義: struct test { int ml; char m2; float m3; union uu {char ul[5]; int u2[2];} ua; } myaa; 則sizeof(struct test )的值是____ A) 12 B) 16 C) 14 D) 9、A、3
337、若有以下定義,則語(yǔ)句( )是正確的。 union data {int i; char c; float f; }a; int n; A: s=5 B:a={2,'a'1、2} C:printf("%d\n",a) D:n=a、C、3
338、若有以下定義和語(yǔ)句: int a[10]={1,2,3,4,5,6,7,8,9,10},*p=a; 則不能表示a數(shù)組元素的表達(dá)式是 A) *p B) a[10] C) *a D) a[p-a]、B、3
339、若有以下定義和語(yǔ)句: double r=99, *p=&r; *p=r; 則以下正確的敘述是 A) 以下兩處的*p含義相同,都說(shuō)明給指針變量p賦值 B) 在"double r=99, *p=&r;"中,把r的地址賦值給了p所指的存儲(chǔ)單元 C) 語(yǔ)句"*p=r;"把變量r的值賦給指針變量p D) 語(yǔ)句"*p=r;"取變量r的值放回r中、D、3
340、若有以下定義和語(yǔ)句: int w[2][3],(*pw)[3]; pw=w; 則對(duì)w數(shù)組元素非法引用是 A)*(w[0]+2) B)*(pw+1)[2] C)pw[0][0] D)*(pw[1]+2)、B、3
341、若有以下說(shuō)明和定義 fun(int *c){ } main() { int (*a)()=fun,*b(),w[10],c; ┆ } 在必要的賦值之后,對(duì)fun函數(shù)的正確調(diào)用語(yǔ)句是 A) a=a(w); B) (*a)(&c); C) b=*b(w); D) fun (b);、B、3
342、若有以下說(shuō)明: int a[10]={1,2,3,4,5,6,7,8,9,10},*p=a; 則數(shù)值為6的表達(dá)式是 A) *p+6 B) *(p+6) C) *p+=5 D) p+5、C、3
343、若指針p已正確定義,要使p指向兩個(gè)連續(xù)的整型動(dòng)態(tài)存儲(chǔ)單元,不正確的語(yǔ)句是 A) p=2*(int*)malloc(sizeof(int)); B) p=(int*)malloc(2*sizeof(int)); C) p=(int*)malloc(2*2); D) p=(int*)calloc(2,sizeof(int));、A、3
344、設(shè)已有定義: char *st="how are you"; 下列程序段中正確的是 A) char a[11], *p; strcpy(p=a+1,&st[4]); B) char a[11]; strcpy(++a, st); C) char a[11]; strcpy(a, st); D) char a[], *p; strcpy(p=&a[1],st+2);、A、3
345、設(shè)有如下程序: #include main() { int **k, *j, i=100; j=&i; k=&j; printf("%d\n", **k); } 上面程序的輸出結(jié)果是 A) 運(yùn)行錯(cuò)誤 B) 100 C) i的地址 D) j的地址、B、3
346、設(shè)一整型(int)變量占用2個(gè)字節(jié)則下述共同體變量x所占用內(nèi)存字節(jié)數(shù)為_(kāi)_______。 union exp { int i; float j; double k; }x; A、14個(gè) B、7個(gè) C、8個(gè) D、隨機(jī)而定、C、3
347、設(shè)x的值為4,則表達(dá)式(++x)+(++x)+(++x)的值是( ) A:12; B:18; C:16; D:21 、D、3
348、設(shè)p1和p2是指向同一個(gè)int型一維數(shù)組的指針變量,k為int型變量,則不能正確執(zhí)行的語(yǔ)句是 A) k=*p1+*p2; B) p2=k; C) p1=p2; D) k=*p1 * (*p2);、B、3
349、設(shè)x、y、t均為int型變量,則執(zhí)行語(yǔ)句:x=y=3;t=++x||++y;后,y的值為 A) 不定值 B) 4 C) 3 D) 1、C、3
350、設(shè)a=3,b=2,則表達(dá)式a^b>>2的值的二進(jìn)制表示為_(kāi)_______。 A、00000011 B、00000110 C、00000100 D、00000010、A、3
上一頁(yè) [1] [2] [3] [4] [5] [6] [7] [8] 下一頁(yè)
351、設(shè)ch是char型變量,其值為A,且有下面的表達(dá)式: ch=(ch>='A'&&ch<='Z')?(ch+32):ch 的值是____ A) A B) a C) Z D) z、B、3
352、設(shè)有如下定義: struct sk {int a;float b;}data,*p; 若有p=&data;,則對(duì)data中的a域的正確引用是 A)(*p)、data、a B)(*p)、a C)p->data、a D)p、data、a、B、3
353、設(shè)有如下定義: int (*ptr)*(); 則以下敘述中正確的是 A)ptr是指向一維組數(shù)的指針變量 B)ptr是指向int型數(shù)據(jù)的指針變量 C)ptr是指向函數(shù)的指針,該函數(shù)返回一個(gè)int型數(shù)據(jù) D)ptr是一個(gè)函數(shù)名,該函數(shù)的返回值是指向int型數(shù)據(jù)的指針、C、3
354、設(shè)有如下定義: int (*ptr)*(); 則以下敘述中正確的是 A) ptr是指向一維組數(shù)的指針變量 B) ptr是指向int型數(shù)據(jù)的指針變量 C) ptr是指向函數(shù)的指針,該函數(shù)返回一個(gè)int型數(shù)據(jù) D) ptr是一個(gè)函數(shù)名,該函數(shù)的返回值是指向int型數(shù)據(jù)的指針、C、3
355、設(shè)有如下枚舉類(lèi)型定義: enum language { Basic=3,Assembly,Ada=100,COBOL,Fortran}; 枚舉量Fortran的值為 A) 4 B) 7 C) 102 D) 103、C、3
356、設(shè)有如下函數(shù)定義: int f(char *s) { char *p=s; while(*p!='\0') p++; return(p-s); } 如果在主程序中用下面的語(yǔ)句調(diào)用上述函數(shù),則輸出結(jié)果為 printf("%d\n",f("goodbey!")); A) 3 B) 6 C) 8 D) 0、C、3
357、設(shè)有說(shuō)明int(*ptr)[m];其中的標(biāo)識(shí)符ptr是( )。 (A) M個(gè)指向整型變量的指針 (B)指向M個(gè)整型變量的函數(shù)指針 (C) 一個(gè)指向具有M個(gè)整型元素的一維數(shù)組的指針 (D) 具有M個(gè)指針元素的一維指針數(shù)組,每個(gè)元素都只能指向整型量、C、3
358、為表示關(guān)系x≥y≥z,應(yīng)使用C語(yǔ)言表達(dá)式 A) (x>=y)&&(y>=z) B(x>=y)AND(y>=z) C)(x>=y>=z) D)(x>=y)&(y>=z)、A、3
359、設(shè)有以下定義: typedef union { long i;int k[5];char c;}DATE; struct date { int cat;DATE cow;double dog;}too; DATE max; 則下列語(yǔ)句的執(zhí)行結(jié)果是 printf("%d",sizeof(struct date)+sizeof(max)); A) 25 B) 30 C) 18 D) 8、B、3
360、設(shè)有以下說(shuō)明語(yǔ)句 typedef struct { int n; char ch[8]; }PER; 則下面敘述中正確的是 A) PER 是結(jié)構(gòu)體變量名 B) PER是結(jié)構(gòu)體類(lèi)型名 C) typedef struct 是結(jié)構(gòu)體類(lèi)型 D) struct 是結(jié)構(gòu)體類(lèi)型名、B、3
361、設(shè)有以下說(shuō)明語(yǔ)句 struct ex { int x ; float y; char z ;} example; 則下面的敘述中不正確的是 A) struct結(jié)構(gòu)體類(lèi)型的關(guān)鍵字 B) example是結(jié)構(gòu)體類(lèi)型名 C) x,y,z都是結(jié)構(gòu)體成員名 D) struct ex是結(jié)構(gòu)體類(lèi)型、B、3
362、下列程序的輸出結(jié)果是 main( ) { int a[5]={2,4,6,8,10},*p,* *k; p=a; k=&p; printf("%d",*(p++)); printf("%d\n",* *k); } A) 4 4 B) 2 2 C) 2 4 D) 4 6、C、3
363、下列程序的輸出結(jié)果是 main( ) { char*p1,*p2,str[50]="xyz"; p1="abcd"; p2="ABCD"; strcpy(str+2,strcat(p1+2,p2+1); printf)"%s",str); } A) xyabcAB B) abcABz C) Ababcz D) xycdBCD、D、3
364、下列程序的輸出結(jié)果是 A) 4 B) 6 C) 8 D) 10 int b=2; int func(int *a) { b += *a; return(b);} main() { int a=2, res=2; res += func(&a); printf("%d \n",res); }、B、3
365、下列程序的輸出結(jié)果是 A) 5 B) 6 C) 7 D) 8 struct abc { int a, b, c; }; main() { struct abc s[2]={{1,2,3},{4,5,6}}; int t; t=s[0],a+s[1],b; printf("%d \n",t); }、B、3
366、下列程序的輸出結(jié)果是 A) 非法 B)a[4]的地址 C)5 D)3 main() { char a[10]={9,8,7,6,5,4,3,2,1,0},*p=a+5; printf("%d",*--p); }、C、3
367、下列程序的運(yùn)行結(jié)果是 A) 6 3 B) 3 6 C) 編譯出錯(cuò) D) 0 0 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); }、B、3
368、請(qǐng)讀程序: int x,y; for(x=1;x、C、3
369、下列程序執(zhí)行后的輸出結(jié)果是 A) 6 B) 8 C) 10 D) 12 #define MA(x) x*(x-1) main() { int a=1,b=2; printf("%d \n",MA(1+a+b));}、B、3
370、下列程序執(zhí)行后的輸出結(jié)果是 A) -32767 B) FFFE C) -1 D) -32768 main() { char x=0xFFFF; printf("%d \n",x--); }、C、3
371、下列分支語(yǔ)句合法的是( )。(A) if(a>c) m=a else m=c (B) if a>c (if a>b) m=a (C) if (a>b && a>c) m=a (D) case 6,7:printf("reset\n") 、C、3
372、下面程序的輸出結(jié)果為 struct st { int x; int *y; } *p; int dt[4]={10,20,30,40}; struct st aa[4]={ 50,&dt[0],60,&dt[1], 70,&dt[2],80,&dt[3] }; main() { p=aa; printf("%d\n", ++p->x ); printf("%d\n", (++p)->x); printf("%d\n", ++( *p->y)); } A) 10 B) 50 C) 51 D) 60 20 60 60 70 20 21 21 31、C、3
373、下列有關(guān)長(zhǎng)度不同的數(shù)據(jù)進(jìn)行運(yùn)算時(shí),系統(tǒng)的擴(kuò)充操作正確的是______ A、右端對(duì)齊,短方按符號(hào)位擴(kuò)充,無(wú)符號(hào)數(shù)以零擴(kuò)充 B、右端對(duì)齊,短方按零擴(kuò)充 C、左端對(duì)齊,短方按符號(hào)位擴(kuò)充,無(wú)符號(hào)數(shù)以零擴(kuò)充 D、左端對(duì)齊,短方以"1"擴(kuò)充、A、3
374、下面程序的輸出是 A) 32 B) 16 C) 8 D) 24 typedef union { long x[2]; int y[4]; char z[8]; } MYTYPE; MYTYPE them; main() { printf("%d\n", sizeof(them));}、C、3
375、下面程序的輸出是 A) 0 B) 1 C) 3 D) 6 main() { struct cmplx { int x; int y; } cnum[2]={1,3, 2,7}; printf("%d\n",cnum[0]、y /cnum[0]、x * cnum[1]、x);}、D、3
376、請(qǐng)讀程序: main( ) {struct cmplx{int x;int y;}cnum[2]={1,3,2,7}; printf("%d\n",cnum[0]、y/cnum[0]、x*cnum[1]、x); } 則上面程序的輸出結(jié)果是____ A:0 B:1 C:3 D:6、D、3
377、寫(xiě)出下列程序段運(yùn)行結(jié)果 unsigned int a=3,b=10; printf("%d\n",a<、A、3
378、以數(shù)據(jù)塊為單位對(duì)數(shù)據(jù)進(jìn)行整體 讀寫(xiě)時(shí)如果ptr是指向內(nèi)存中數(shù)據(jù)塊的首地址,fp是文件指針,那么數(shù)據(jù)塊中每個(gè)數(shù)據(jù)項(xiàng)的大小為( )。 (A) sizeof(*ptr) (B) *ptr (C) sizeof(ptr) (D) sizeof(*fp)、A、3
379、已知字符0的ASCII碼為十六進(jìn)制的30,下面程序的輸出是 A) 6 B) 9 C) 0 D) 3 main() { union { unsigned char c; unsigned int i[4]; } z; z、i[0]=0x39; z、i[1]=0x36; printf("%c\n",z、c);}、B、3
380、以下程序的輸出是____ A) 10 B) 11 C) 51 D) 60 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("%d\n",++(p->x)); }、C、3
381、以下程序的輸出結(jié)果是 struct HAR { int x, y; struct HAR *p;} h[2]; main() { h[0],x=1;h[0];y=2; h[1],x=3;h[1];y=4; h[0],p=&h[1],p=h; printf("%d %d \n",(h[0],p)->x,(h[1],p)->y); } A) 12 B) 23 C) 14 D) 32、D、3
382、以下程序的輸出結(jié)果是 union myun { struct { int x, y, z; } u; int k; } a; main() { a、u、x=4; a、u、y=5; a、u、z=6; a、k=0; printf(%d\n",a、u、x); } A) 4 B) 5 C) 6 D) 0、D、3
383、請(qǐng)讀程序: main() {union {int k; char i[2]; }*s,a; s=&a; s--i[0]=0x39;s--i[1]=0x38; printf(“%x、n”,s--k); } 則上面程序的輸出結(jié)果是____ A)3839 B)3938 C)380039 D)390038、A、3
384、有如下定義 struct person{char name[9]; int age;}; strict person class[10]={"Johu", 17, "Paul", 19 "Mary", 18, "Adam 16,}; 根據(jù)上述定義,能輸出字母M的語(yǔ)句是 A) prinft("%c\n",class[3]、mane); B) pfintf("%c\n",class[3]、name[1]); C) prinft("%c\n",class[2]、name[1]); D) printf("%^c\n",class[2]、name[0]);、D、3
385、有如下函數(shù)調(diào)用語(yǔ)句 func(rec1,rec2+rec3,(rec4,rec5); 該函數(shù)調(diào)用語(yǔ)句中,含有的實(shí)參個(gè)數(shù)是 A) 3 B) 4 C) 5 D) 有語(yǔ)法錯(cuò)、A、3
386、以下選項(xiàng)中,能定義s為合法的結(jié)構(gòu)體變量的是 A) typedef struct abc B) struct { double a; { double a; char b[10]; char b[10]; } s; } s; C) struct ABC D) typedef ABC { double a; { double a; char b[10]; char b[10]; } } ABC s; ABC s;、B、3
387、以下對(duì)結(jié)構(gòu)體類(lèi)型變量的定義中,不正確的是 A) typedef struct aa B) #define AA struct aa { int n; AA {int n; float m; float m; }AA; }td1; AA td1; C) struct D) struct { int n; { int n; float m; float m; }aa; }td1; stuct aa td1;、C、3
388、以下程序運(yùn)行后,輸出結(jié)果是 A) 1 B) 7 C)9 D)11 fut (int **s,int p[2][3]) { **s=p[1][1];) main() { int a[2][3]={1,3,5,7,9,11},*p; p=(int *)malloc(sizeof(int)); fut (&p,a); printf("%d\n",*p); }、C、3
389、有語(yǔ)句char str1[10],str2[10]={"china"};則能將字符串china賦給數(shù)組str1的正確語(yǔ)句是________。 A、str1={"china"}; B、strcpy(str1,str2); C、str1=str2; D、strcpy(str2,str1);、B、3
390、有以下結(jié)構(gòu)體說(shuō)明和變量的定義,且如下圖所示指針p指向變量a,指針q指向變量b。則不能把結(jié)點(diǎn)b連接到結(jié)點(diǎn)a之后的語(yǔ)句是 A) a、next=q; B) p、next=&b; C) p->next=&b; D) (*p)、next=q; struct node { char data; struct node *next; { a,b,*p=&a,*q=&b; data next data next、B、3
391、有以下程序段 char arr[]="ABCDE"; char *ptr; for(ptr=arr;ptr main() { union { int k; char i[2]; } *s,a; s=&a; s->i[0]=0x39; s->i[1]=0x38; printf("%x\n",s->k); } 輸出結(jié)果是 A) 3839 B) 3938 C) 380039 D) 390038、D、3
392、有以下程序 #include "stdio、h" struct stu { int num; char name[10]; int age; }; void fun(struct stu *p) { printf("%s\n",(*p)、name); } main() { struct stu students[3]={ {9801,"Zhang",20}, {9802,"Wang",19}, {9803,"Zhao",18} }; fun(students+2); } 輸出結(jié)果是 A) Zhang B)Zhao C) Wang D) 18、B、3
393、運(yùn)行下面的程序,如果從鍵盤(pán)上輸入: ab c def 則輸出結(jié)果為 A、a B、a C、ab D、abcdef b b c c c d d d e f #include #define N 6 main () { char c[N]; int i=0; int i=0; for ( ;i ss (char *s) { char *p=s; while (*、p)p++; return(p-s); } main() { char *a="abded"; int i; i=ss(a); print ("%d\n",i); }、C、3
394、在C程序中,可把整型數(shù)以二進(jìn)制形式存放到文件中的函數(shù)是 A) fprintf函數(shù) B) fread函數(shù) C) fwrite函數(shù) D) fputc函數(shù)、A、3
395、在C語(yǔ)言中,fclose()函數(shù)返回____時(shí), 表示關(guān)閉不成功 (A) 0 (B) -1 (C) EOF (D) 非零值、D、3
396、在C語(yǔ)言中,如果下面的變量都是int類(lèi)型,則輸出的結(jié)果是( )。 sum=5,p=5;p=sum++,p++,++p; printf("%d\n",p); A、 7 B、 6 C、 5 D、 4、A、3
397、在scanf( )中,表示本輸入項(xiàng)在讀入后不賦給相應(yīng)變量的格式說(shuō)明字符是____ (A) L (B) h (C) C (D) *、D、3
398、在TC語(yǔ)言中int和short兩種數(shù)據(jù)所占用的內(nèi)存____ A) 均為2個(gè)字節(jié) B) 由用戶(hù)自己定義 C) 由所用機(jī)器的機(jī)器字長(zhǎng)決定 D) 是任意的、A、3
399、在以下定義中,標(biāo)識(shí)符p______ int (*p)[3] A) 定義不合法 B) 是一個(gè)指針數(shù)組名,每個(gè)元素是一個(gè)指向整數(shù)變量的指針 C) 是一個(gè)指針,它指向一個(gè)具有三個(gè)元素的一維數(shù)組 D) 是一個(gè)指向整型變量的指針、C、3
400、字符'0'的ASCII碼的十進(jìn)制數(shù)為48,且數(shù)組的第0個(gè)元素在低位,則以下程序的輸出結(jié)果是 #include main( ) { union { int i[2]; long k; char c[4]; }r,*s=&r; s->i[0]=0x39; s->i[1]=0x38; printf("%c\n",s->c[0]) } A) 39 B) 9 C) 38 D) 8、B、3