选择题.docx
- 文档编号:13324904
- 上传时间:2023-06-13
- 格式:DOCX
- 页数:86
- 大小:39.22KB
选择题.docx
《选择题.docx》由会员分享,可在线阅读,更多相关《选择题.docx(86页珍藏版)》请在冰点文库上搜索。
选择题
[1-1]
在C语言中,合法的字符常量是()。
[答]D,1.1
A)'字'B)"A"C)"ABC"D)'\x41'
[1-2]
在C语言中,用户能使用的合法标识符是()。
[答]B,1.1
A)姓名B)_xyzC)5iD)for
[1-3]
在C语言中,不合法的实型常量是()。
[答]D,1.1
A)-0.123B)-.123C)-1.23e-1D)-123e-3.0
[2-1]
C语言的下列运算符中,优先级最高的运算符是()。
[答]A,1.1
A)++B)+=C)||D)!
=
[2-2]
设有说明语句intk,i=5,j=10;,则表达式k=(++i)*(j--)的值是()。
[答]B,1.1
A)50B)60C)45D)55
[2-3]
设有说明语句inti,j;,则表达式i>=j||i [答]D,1.1 A)视i、j的具体值而定B)FALSE C)TRUED)1 [3-1] 已知'A'的ASCII码的十进制值为65,'0'的ASCII码的十进制值为48,则以下程序运行结果是()。 main() {charch1,ch2; ch1='A'+'5'-'3'; ch2='A'+'6'-'3'; printf("%d,%c\n",ch1,ch2); } [答]A,1.1 A)67,DB)C,DC)C,68D)67,68 [3-2] 设有语句intx=2,y=3;,则表达式x=(y==3)的值是()。 [答]B,1.1 A)0B)1C)2D)3 [3-3] 以下程序的运行结果是()。 main() {unsigneda=0x3ef,b; b=a<<2; printf("%x,%x\n",a,b); } [答]B,1.1 A)3ef,fbB)3ef,fbcC)fbc,3efD)fbc,fbc [4-1] 下列语句中,符合C语言语法的赋值语句是()。 [答]C,1.1 A)a=7+b+c=a+7; B)a=7+b++=a+7; C)a=7+b,b++,a+7; D)a=7=b,c=a+7; [4-2] 为表示x≥y≥z,须用的C语言表达式为()。 [答]A,1.1 A)(x>=y)&&(y>=z)B)(x>=y)AND(y>=x) C)x>=y>=zD)(x>=y)&(y>=z) [4-3] 设inta,b;,用语句scanf('%d%d",&a,&b);输入a、b值时,不能作为输入数据分隔符的是()。 [答]B,1.1 A)空格B),C)回车D)[Tab] [5-1] 以下程序运行时,若从键盘输入5,则输出结果是()。 main() {inta; scanf("%d",&a); if(a++>5)printf("%d\n",a); elseprintf("%d\n",a--); } [答]D,1.1 A)7B)4C)5D)6 [5-2] 以下程序的运行结果是()。 main() {inta,b,c; a=b=c=1; if(a++||++b)c++; printf("%d,%d,%d\n",a,b,c); } [答]A,1.1 A)2,1,2B)1,2,1 C)2,2,2D)2,2,1 [5-3] 以下程序的运行结果是()。 main() {inti=3,j=2,k; k=i+j; { intk=8; if(i==3)printf("%2d",k); elseprintf("%2d",j); } printf("%2d%2d\n",i,k); } [答]A,1.1 A)835B)838 C)383D)583 [6-1] 有以下程序: main() {intc; while((c=getchar())! ='\n') {switch(c-'2') {case0: case1: putchar(c+4); case2: putchar(c+4);break; case3: putchar(c+3); default: putchar(c+2);break; } } printf("\n"); } 当输入: 247<回车>,程序的输出结果是()。 [答]B,1.1 A)689B)6689C)66778D)66887 [6-2] 以下程序的运行结果是()。 main() {inta=1,b=0; switch(a) { case1: switch(b) { case0: printf("0000\n"); case1: printf("1111\n");break; } case2: printf("2222\n");break; } } [答]B,1.1 A)0000 1111 B)0000 1111 2222 C)0000 2222 D)1111 2222 [6-3] 以下程序的运行结果是()。 voidmain() {inta=1; switch(a) { case1: printf("aaaa\n"); case2: printf("bbbb\n");break; default: printf("cccc\n"); } } [答]C,1.1 A)aaaa B)aaaa bbbb cccc C)aaaa bbbb D)aaaa cccc [7-1] 以下程序运行后,a的值是()。 main() {inta,b; for(a=1,b=1;a<=100;a++) { if(b>=20)break; if(b%3==1){b+=3;continue;} b-=5; } } [答]D,1.1 A)101B)100C)8D)7 [7-2] 以下程序段的运行结果是()。 main() {inti,j; i=10; j=20; for(;j>=0;j-=20) { if(i=j)printf("Good! "); elseprintf("Notgood! "); } } [答]D,1.1 A)Good! Good! B)Notgood! C)Good! D)Good! Notgood! [7-3] 以下程序的运行结果是()。 main() {inta,b,c,n=13; printf("ABC\n"); for(a=1;a<=n;a++) for(b=1;b<=n;b++) for(c=b;c<=n;c++) if(a*a==b*b+c*c) printf("%3d%3d%3d\n",a,b,c); } [答]A,1.1 A)ABC 534 1068 13512 B)ABC 354 6108 51312 C)ABC 453 8106 12135 D)ABC 543 1086 13125 [8-1] 以下程序段的运行结果是()。 intx=3; do{ printf("%3d,",x-=2); }while(! (--x)); [答]D,1.1 A)1B)30 C)死循环D)1,-2 [8-2] 设E为表达式,以下与do…while(E);不等价的语句是()。 [答]C,1.1 A)do…while(! E==0); B)do…while(E>0||E<0); C)do…while(E==0); D)do…while(E! =0); —————————————————— A班[8-3] 以下程序的运行结果是()。 main() {inti,s; i=0; s=1; do{ s/=s+1; i++; }while(i<=10); printf("%2d%2d\n",i,s); } [答]D,1.1 A)102B)112C)100D)110 [9-1] 下列程序段中,非死循环的是()。 [答]A,1.1 A)inti=100; while (1) {i=i%100+1; if(i>=100)break; } B)intk=0; do{ ++k; }while(k>=0); C)ints=10; while(++s%2+s%2)s++; D)for(;;) [9-2] 循环语句循环体中执行continue语句,其作用是()。 [答]C,1.1 A)立即终止程序运行 B)继续执行continue语句之后的循环体各语句 C)结束本次循环 D)结束本次循环,跳出循环 [9-3] 下列do...while循环的循环次数是()。 inti=5; do{ printf("%d\n",i--); i--; }while(i! =0) [答]D,1.1 A)0B)2C)5D)死循环 [10-1] 设已定义chars[]="\"Name\\Address\023\n";,则字符串所占的字节数是()。 [答]B,1.1 A)19B)15C)18D)14 [10-2] 已定义charx[8];inti;,为了给该数组赋值,下列语句正确的是()。 [答]D,1.1 A)x[8]="TurboC";B)x="TurboC"; C)x[]="TurboC";D)for(i=0;i<7;i++)x[i]=getchar(); [10-3] 设inta[][4]={0,0};,则下列描述错误的是()。 [答]D,1.1 A)数组a的每个元素的值为0 B)二维数组a的第一维大小为1 C)数组a有4个元素 D)只有元素a[0][0]和a[0][1]的值为0,其余元素的值不确定 [11-1] 以下程序段的运行结果是()。 main() {inti=4,j; j=i; pic(i+2*j-2,'*'); putchar('\n'); for(j-=2;j>=0;j--) {pic(3-j,''); pic(i+2*j,'*'); putchar('\n'); } } pic(intlen,charc) {intk; for(k=1;k<=len;k++)putchar(c); } [答]D,1.1 A)* *** ***** ******* B)********** ********** ********** ********** C)**** ****** ******** ********** D)********** ******** ****** **** [11-2] 以下程序运行结果是()。 main() {chara[][5]={"ABCD","1234","abcd","5678","EFGH"}; inti; for(i=0;i<3;i++)printf("%s",a[i]); } [答]B,1.1 A)A1aB)ABCD1234abcd C)ABCD)ABCD1234abcd5678EFGH [11-3] 以下程序的运行结果是()。 main() {intarray[4][4]; inti,j; for(i=0;i<4;i++) for(j=0;j<4;j++)array[i][j]=i+j; for(i=0;i<4;i++) for(j=0;j<4;j++) if(i==j||i+j==3)array[i][j]=0; for(j=0;j<4;j++)printf("%2d",array[2][j]); printf("\n"); } [答]A,1.1 A)2005B)1004 C)0120D)0450 [12-1] 设有下列语句,则()是对a数组元素的不正确引用,其中0≤i<10。 inta[10]={0,1,2,3,4,5,6,7,8,9},*p=a; [答]D,1.1 A)a[p-a]B)*(&a[i]) C)p[i]D)*(*(a+i)) [12-2] 若有以下程序: main {charch[]="Iamstudent! ",*p; p=ch; printf("%x\n",p); printf("%x\n",p+9); } 其中第一个printf()运行结果是ffd6,则第二个printf()运行结果是()。 [答]A,1.1 A)ffdfB)ffe8C)ffd6D)ffcf [12-3] 以下程序的运行结果是()。 main() {inti; charaa[][3]={'a','b','c','d','e','f'}; char(*p)[3]=aa; for(i=0;i<2;i++) if(i==0)aa[i][i+1]=**(p++); printf("%c\n",**p); } [答]D,1.1 A)aB)bC)cD)d [13-1] 设有下列语句: charstr1[]="string",str2[8],*str3,*str4="string"; 则()是对库函数strcpy的不正确调用。 此函数用来复制字符串。 [答]A,1.1 A)strcpy(str3,"HELLO3"); B)strcpy(str2,"HELLO2"); C)strcpy(str1,"HELLO1"); D)strcpy(str4,"HELLO4"); [13-2] 若有以下定义和语句,且0≤i<4,0≤j<3,则不能访问a数组中的元素的是()。 inti,(*p)[3]; inta[][3]={1,2,3,4,5,6,7,8,9,10,11,12}; p=a; [答]D,1.1 A)*(*(a+i)+j)B)p[i][j] C)(*(p+i))[j]D)p[i]+j [13-3] 以下关于指针概念的叙述中,错误的是()。 [答]C,1.1 A)一个指针变量只能指向同一类型的变量 B)一个变量的地址称为该变量的指针 C)两个同类型的指针变量可以作加减运算 D)任何指针变量都可以与空指针NULL进行比较 [14-1] 以下程序的运行结果是()。 fun3(intx) {staticinta=3; a+=x; returna; } main() {intk=2,m=1,n; n=fun3(k); n=fun3(m); printf("%d\n",n); } [答]C,1.1 A)3B)4C)6D)9 [14-2] 以下程序运行后,输出的结果是()。 func(inta) {staticintm=0; m+=a; return(m); } main() {intk=4,p; p=func(k);printf("%d,",p); p=func(k);printf("%d\n",p); } [答]C,1.1 A)4,4B)0,4C)4,8D)8,8 [14-3] 以下程序的运行结果是()。 age(n) intn; {intc; if(n==1)c=10; else if(n%2==0)c=age(n-1)+2; elsec=age(n-1)+3; return(c); } main() {printf("%d\n",age(5));} [答]A,1.1 A)18B)20C)10D)21 [15-1] 以下程序的运行结果是()。 voidast(intx,inty,int*cp,int*dp) {*cp=x+y;*dp=x-y; } main() {inta=4,b=3,c,d; ast(a,b,&c,&d); printf("%d,%d\n",c,d); } [答]A,1.1 A)7,1B)1,7C)7,-1D)c、d未赋值,编译出错 [15-2] 以下程序的输出结果是()。 swap(int*p,int*q) {intt; t=*p;*p=*q;*q=t; } main() {inta=10,b=20; swap(&a,&b); printf("%d,%d\n",a,b); } [答]D,1.1 A)10,10B)20,20C)10,20D)20,10 [15-3] 以下程序的运行结果是()。 main() {voidchange_p(); int*p,a[]={1,4,7,10}; p=&a[1]; change_p(p); printf("%d\n",*p); } voidchange_p(int*pi) {*pi+=2; pi+=2; *pi+=2; } [答]D,1.1 A)7B)8C)5D)6 [16-1] 以下程序段的运行结果是()。 enumweekday{aa,bb=2,cc,dd,ee}week=ee; printf("%d\n",week); [答]B,1.1 A)eeB)5C)2D)4 [16-2] 以下对枚举类型进行定义,不正确的是()。 [答]A,1.1 A)enumb{1,2,3};B)enuma{A,B,C}; C)enumc{D=3,E,F};D)enumd{X=0,Y=5,Z=9}; [16-3] 在C程序中,设一表达式含有int、long、unsigned和char类型的常数和变量,则表达式的最后运算结果是()。 [答]D,1.1 A)intB)charC)unsignedD)long [17-1] 若定义如下结构,则能打印出字母M的语句是()。 structperson{ charname[9]; intage; }; structpersonclass[10]={"Wujun",20, "Liudan",23, "Maling",21, "zhangming",22}; [答]B,1.1 A)printf("%c\n",class[3].name);B)printf("%c\n",class[2].name[0]); C)printf("%c\n",class[2].name[1]);D)printf("%c\n",class[3].name[1]); [17-2] 以下程序的运行结果是()。 main() {unionu_type {inti; doublex; floatf; }; structstr_type {charstr[100]; unionu_typeu[2]; }; printf("%d\n",sizeof(structstr_type)); } [答]B,1.1 A)100B)116C)120D)200 [17-3] 以下程序的输出结果是()。 main() {unionexample {struct {intx; inty; }in; inta[2]; }e={0,0}; e.a[0]=1;e.a[1]=2; printf("%d,%d\n",e.in.x,e.in.y); } [答]C,1.1 A)2,1B)0,0C)1,2D)0,1 [18-1] 以下程序的输出结果是()。 main() {printf("%d\n",fac(5)); } fac(intn) {ints; if(n==1)return1; elsereturnn*fac(n-1); } [答]A,1.1 A)120B)60C)6D)1 [18-2] 以下程序的运行结果是()。 main() {charch[7]="12xy89"; inti,s=0; for(i=0;ch[i];i++) if(ch[i]>='0'&&ch[i]<='9')s=10*s+ch[i]-'0'; printf("%d\n",s); } [答]D,1.1 A)12B)xyC)12xy89D)1289 [18-3] 以下程序运行后,输出的结果是()。 fun(char*w) {chart,*s1,*s2; for(s1=w,s2=w+strlen(s1)-1;s1 {t=*s1; *s1=*s2; *s2=t; } } main() {char*p="12345"; fun(p); puts(p); } [答]B,1.1 A)12345B)54321C)15115D)51551 [19-1] 以下程序中的循环执行了()次。 #defineN2 #defineMN+1 #defineNUM(M+1)*M/2 main() {inti,n=0; for(i=0;i printf("%d\n",n); } [答]C,1.1 A)5B)6C)8D)9 [19-2] 以下程序的输出结果是()。 #defineSUM(y)1+y main() {in
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 选择题