37.以下程序執(zhí)行后,a的值是( C )。
main()
{int a, k=4, m=6, *p1=&k, *p2=&m;
a=p1= =&m;(等于運(yùn)算符==優(yōu)先級(jí)高于賦值運(yùn)算符=,即為a=(p1==&m))
printf(“%d\n”, a);
}
A) 4
B) 1
C) 0
D) 運(yùn)行時(shí)出錯(cuò),a無(wú)定值
38.以下程序運(yùn)行后,如果從鍵盤上輸入:
book<回車>
book<空格><回車>
則輸出結(jié)果是( B )。
#include
main()
{char a1[80], a2[80], *s1=a1, *s2=a2;
gets(s1); gets(s2);
if(!strcmp(s1, s2)) printf(“*”);
else printf(“#”);
printf(“%d\n”, strlen(strcat(s1, s2)));
}
A) *8
B) #9
C) #6
D) *9
39.若有以下調(diào)用語(yǔ)句,則不正確的fun函數(shù)的首部是( D )。
main()
{ …
int a[50], n;
…
fun (n, &a[9]);
…
}
A) void fun(int m,int x[ ])
B) void fun(int s,int h[41])
C) void fun(int p,int *s) D) void fun(int n,int a)
40.假定下列程序的可執(zhí)行文件名為prg . exe,則在該程序所在的子目錄下輸入命令行:
prg hello good<回車>后,程序的輸出結(jié)果是( B )。
main(int argc, char *argv[ ])
{int i;
if(argc<=0) return;
for(i=1; i } A) hello good B) hg C) hel D) hellogood 41.以下程序的輸出結(jié)果是( D )。 main( ) {char s[ ]=”ABCD”, *p; for(p=s+1; p } A) ABCD BCD CD D B) A B C D C) B C D D) BCD CD D 42.若已定義:int a[9], *p=a; 并在以后的語(yǔ)句中未改變p的值,不能表示a[1]地址的表達(dá)式是( C )。 A) p+1 B) a+1 C) a++ D) ++p 43.執(zhí)行以下程序后,y的值是( C )。 main( ) {int a[ ]={2, 4, 6, 8, 10}; int y=1, x, *p; p=&a[1]; for(x=0;x<3;x++) y+=*(p+x); printf(“%d\n”, y); } A) 17 B) 18 C) 19 D) 20 44.下列程序的輸出結(jié)果是( C )。 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 45.下列程序的輸出結(jié)果是( D )。 #include 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 46.設(shè)有以下定義: int a[4][3]={1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12}; int (*prt)[3]=a, *p=a[0]; 則下列能夠正確表示數(shù)組元素a[1][2]的表達(dá)式是( D )。 A) *((*prt+1)[2]) B) *(*(p+5)) C) (*prt+1)+2 D) *(*(a+1)+2) 47.閱讀程序: main( ) {int a[10]={1, 2, 3, 4, 5, 6, 7, 8, 9, 0}, *p; p=a; printf("%x\n",p); printf("%x\n",p+9); } 該程序有兩個(gè)printf語(yǔ)句,如果第一個(gè)printf語(yǔ)句輸出的是194,則第二個(gè)printf語(yǔ)句的輸出結(jié)果是( D )。 A) 203 B) 204 C) 1a4 D) 1a6 48.以下程序的輸出結(jié)果是( C )。 #include #include void fun(char *w, int m) {char s, *p1, *p2; p1=w; p2=w+m-1; while(p1 {s=*p1++; *p1=*p2--; *p2=s;} } main( ) {char a[ ]="ABCDEFG"; fun(a, strlen(a)); puts(a); } A) GEFDCBA B) AGADAGA C) AGAAGAG D) GAGGAGA 49.以下程序的輸出結(jié)果是( C )。 #include void fun(int *s) {static int j=0; www.Examda.CoM do s[j]+=s[j+1]; while (++j<2); } main( ) {int k, a[10]={1, 2, 3, 4, 5}; for(k=1; k<3; k++) fun (a); for(k=0; k<5; k++) printf (“%d”, a[k]); } A) 34756 B) 23445 C) 35745 D) 12345 50.請(qǐng)讀程序: #include char fun(char *C) {if(*c<=‘Z’&&*c>=‘A’) *c-=‘A’-‘a(chǎn)’; return *c; } main( ) {char s[81], *p=s; gets (s); while(*p) {*p=fun(p); putchar(*p); p++;} putchar(‘\n’); } 若運(yùn)行時(shí)從鍵盤上輸入OPEN THE DOOR<回車>,則上面程序的輸出結(jié)果為(B )。 A) oPEN tHE dOOR B) open the door C) OPEN THE DOOR D) Open The Door 51.以下程序的輸出結(jié)果是( B )。 #include main( ) {char *s1="AbCdEf",*s2="aB"; s1++;s2++; printf("%d\n",strcmp(s1, s2)); } A) 正數(shù) B) 負(fù)數(shù) C) 零 D) 不確定的值 52.下面各語(yǔ)句行中,能正確進(jìn)行賦字符串操作的語(yǔ)句行是( C )。 A) char st[4][5]={“ABCDE”}; B) char s[5]={‘A’, ‘B’, ‘C’, ‘D’, ‘E’}; C) char *s; s= “ABCDE”; D) char *s; scanf(“%s”,s); 53.以下程序的輸出結(jié)果是( C )。 fun(int *s, int n1, int n2) {int i, j, t; i=n1; j=n2; while(i {t=*(s+i); *(s+i)=*(s+j); *(s+j)=t; i++; j--; } } main( ) {int a[10]={1, 2, 3, 4, 5, 6, 7, 8, 9, 0}, i, *p=a; fun (p, 0, 3); fun (p, 4, 9); fun (p, 0, 9); for(i=0; i<10; i++) printf("%d ", *(a+i)); printf(“\n”); } A) 0 9 8 7 6 5 4 3 2 1 B) 4 3 2 1 0 9 8 7 6 5 C) 5 6 7 8 9 0 1 2 3 4 D) 0 9 8 7 6 5 1 2 3 4 54.下面函數(shù)的功能是( B )。 sss (char *s, char *t) {while((*s)&&(*t)&&(*t= =*s)) s++, t++; return(*s-*t); } A) 求字符串的長(zhǎng)度 B) 比較兩個(gè)字符串的大小 C) 將字符串s復(fù)制到字符串t中 D) 將字符串s連接到字符串t中
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |