福建省10级二级C选择题.docx
- 文档编号:24526337
- 上传时间:2023-05-28
- 格式:DOCX
- 页数:35
- 大小:29.14KB
福建省10级二级C选择题.docx
《福建省10级二级C选择题.docx》由会员分享,可在线阅读,更多相关《福建省10级二级C选择题.docx(35页珍藏版)》请在冰豆网上搜索。
福建省10级二级C选择题
2010级二级C语言选择题练习
50124、以下叙述正确的是()。
答案:
A、注释部分可单独占用一行,也可跟在语句的后面
B、函数体定界符也可用一对方括号"[]"
C、C语言源程序每一行就是一条语句
D、由于C语言源程序都是从main()函数开始执行,所以main()函数必须位于程序文件最前面
50125、下面叙述错误的是()。
答案:
A、所有语句都必须以分号";"结束
B、语句是构成C语言源程序的基本单位
C、C语言源程序必须包含一个main()函数
D、注释部分在程序编译和运行时不起作用
50126、main()函数的位置()。
答案:
A、必须位于程序文件的最前面
B、必须位于用户自定义函数的前面
C、可位于用户自定义函数之前,也可位于用户自定义函数之后
D、必须位于用户自定义函数的后面
50127、()是结构化程序设计应遵循的原则。
答案:
A、选用的控制结构可有多个入口和一个出口
B、根据需要可使用嵌套基本控制结构表示程序逻辑
C、应使用顺序、选择、循环三种基本控制结构表示程序逻辑
D、为提高程序效率,应尽量使用Goto语句
50128、描述一个算法可以有不同的方式,常见的有()。
答案:
A、汇编语言、高级语言和低级语言
B、自然语言、流程图和伪代码
C、机器语言、汇编语言和高级语言
D、高级语言、自然语言和伪代码
50224、下列不属于C语言数据类型的是()。
答案:
A、双精度型
B、枚举类型
C、复数类型
D、长整型
50225、下列合法的浮点数的是()。
答案:
A、.65
B、E2
C、2E0.5
D、123
50226、下列不合法的字符常量的是()。
答案:
A、'\t'
B、'\n'
C、'\\'
D、"a"
50227、下列()是不正确的常量形式。
答案:
A、'x5'
B、1.6E6
C、1E-2
D、"\0"
50228、下列()是不合法的用户标识符。
答案:
A、_f6
B、div
C、5x
D、_num
50324、若已定义:
intn=2;doublex=2.5;则下列表达式中不符合语法的是()。
答案:
A、(int)x%n
B、(int)(x%n)
C、(int)(x/n)
D、(int)x/n
50325、若已定义:
longinti;charc;doublex;则表达式i*c+(int)x结果的类型是()。
答案:
A、int
B、char
C、double
D、longint
50326、若已定义:
intx=3,y=2;则下列不正确的赋值表达式是()。
答案:
A、x=2,y=2;
B、x-y=1;
C、x-=x+=y;
D、x=y+2
50327、若已定义:
intx;则逗号表达式x=5,3+x,x=x*2的值是()。
答案:
A、16
B、10
C、5
D、15
50328、对应代数式3a÷(b+c),C语言的表达式是()。
答案:
A、3*a/b+c
B、3*a\(b+c)
C、3a/(b+c)
D、3*a/(b+c)
50424、若已定义:
intx=2,y=3;则执行语句y=x+++(--y);后,y的值为()。
答案:
A、3
B、6
C、5
D、4
50425、若已定义:
inti=2,j=2;floatx=2.5,y=3.5;则表达式(float)(i+j)/2+(int)x%(int)y的值为()。
答案:
A、4.5
B、4.0
C、3.5
D、3.0
50426、若已定义:
intx=2,y;则逗号表达式y=3,x+=x+(++y)%x的值是()。
答案:
A、2
B、3
C、4
D、5
50427、若已定义:
doublex,y;则下列表达式不能正确计算(x-2)/3*y的是()。
答案:
A、y/3*(x-2)
B、(x-2)*y*1/3
C、y*(x-2)/3
D、(1/3)*(x-2)*y
50428、若已定义:
intx=2,y;则执行语句y=x%2+(--x);后y的值是()。
答案:
A、0
B、1
C、2
D、3
50524、若已定义:
charc;则下列正确的输入语句是()。
答案:
A、gets(c);
B、scanf("%s",&c);
C、scanf("%c",c);
D、getchar(c);
50525、若已定义:
doublex;则exp(x)+sqrt(x)/2所表示的数学式是()。
答案:
A、公式
(1)
B、公式
(2)
C、公式(3)
D、公式(4)
50526、若已定义:
intx=5,y=7;正确实现输出形式:
5+7=12的语句是()。
答案:
A、printf("x+y=%d",x+y);
B、printf("%d+%d=%d",x,y,x+y);
C、printf("%d+%d=x+y",x,y);
D、printf("x+y=x+y");
50527、若已定义:
doublex=2.5;则求x的平方的正确的函数调用是()。
答案:
A、pow(x,2)
B、sqrt(x)
C、rand(2,x)
D、exp(x)
50528、要使用以下程序段给三个整变量x1,x2,x2分别赋值1,2,3,正确的数据输入格式是()。
intx1,x2,x3;
scanf("%d,%d,%d",&x1,&x2,&x3);
答案:
A、1
2
3
B、1,2,3
C、123
D、123
50624、若已定义:
intx=2,y=3;则下列表达式值为假的是()。
答案:
A、x>y||x B、x==(y=x) C、x&&y D、! x||! y 50625、若已定义: inta=0,b=1;则下列表达式值为真的是()。 答案: A、a++&&b++ B、(a=0)&&(b=1) C、a==1||a! =1 D、a! =0||b! =1 50626、判断char型变量cl是否为小写字母的正确表达式为()。 答案: A、'a'<=c1<='z' B、(c1>='a')&&(c1<='z') C、('a'>=c1)&&('z'<=c1) D、(c1>=a)&&(c1<=z) 50627、下列当x的值在5至10之间为“假”,否则为“真”的逻辑表达式为()。 答案: A、x<=5&&x>=10 B、x>=5&&x<=10 C、! (5<=x<=10) D、! (5<=x&&x<=10) 50628、若已定义: intx,y;则下列不能正确表示数学关系式|x-y|>5的表达式是()。 答案: A、(x-y)>5||(x-y)<-5 B、abs(x-y)>5 C、(x-y)<-5&&(x-y)>5 D、(x-y)*(x-y)>25 50724、若已定义: inta=1,b=2,c=2;则表达式(a+b)/1.0/c的值是()。 答案: A、1.5 B、1 C、0.0 D、1.0 50725、若已定义: intx=11;doubley=3.5;则表达式y/2+x%2/2的值是()。 答案: A、1.5 B、1.75 C、1.0 D、3.5 50726、下列四个运算符,按优先级别由高到低排列的是()。 答案: A、! 、%、==、= B、%、! 、==、= C、! 、%、=、== D、! 、=、%、== 50727、若已定义: doublex=3,y;intz=2;则语句y=(x+z)/2*z;执行后,y的值为()。 答案: A、4.0 B、5.0 C、1.0 D、1.25 50728、若已定义: intx=2,y=4;则表达式(double)x/y+y%x的值是()。 答案: A、2 B、0 C、0.5 D、2.5 50824、若已定义intk;下列()语句与其他三条语句不等价。 答案: A、if(k) printf("Yes! \n"); else printf("No! \n"); B、if(k==0) printf("No! \n"); else printf("Yes! \n"); C、if(k! =0) printf("Yes! \n"); else printf("No! \n"); D、if(k==0) printf("Yes! \n"); else printf("No! \n"); 50825、若已定义intk=4,s=10;则下列程序段的运行结果是()。 if(2*k>9) s=k+5; printf("%d\n",s+k); 答案: A、10 B、14 C、19 D、13 50826、下列()不能当作一条语句。 答案: A、if(k>0) m=1; else n=2; B、m=1,n=2,k=3; C、if(k>0); D、if(k==0) m=1; n=2; 50827、若已定义intx=5;则下列程序段的运行结果是()。 if((x--)<5) printf("%d\n",x); else printf("%d\n",x++); 答案: A、3 B、4 C、5 D、6 50828、下列程序段的运行结果是()。 intk=8; switch(k%5) {default: printf("DD"); case1: printf("AA"); break; case2: printf("BB"); case0: printf("CC"); } 答案: A、CC B、AA C、DDAA D、DD 50924、下列程序段运行时,语句k+=2;执行的次数是()。 inti,k=0; for(i=7;i>3;i--,i--) k+=2; 答案: A、3 B、2 C、1 D、4 50925、若已定义: inti=5,m=1;则()语句不会产生无限循环。 答案: A、for(;i>0;i--) m+=3; B、while(i=1) m+=3; C、for(;i<10;) m+=3; D、do {m+=3; }while(i==5); 50926、循环语句的循环体中,continue语句的作用是()。 答案: A、继续执行continue语句之后的循环体各语句 B、结束本次循环,跳出循环体 C、结束本次循环 D、立即终止程序运行 50927、下列程序段运行后m的值为()。 inti,j,m=0; for(i=1;i<=3;i++) for(j=2;j<=4;j++) m=m+i+j; 答案: A、33 B、45 C、27 D、30 50928、下列程序段运行后sum的值为()。 inti=8,sum=0; while((i--)>=5) {sum+=2; } 答案: A、10 B、8 C、6 D、4 51024、若已定义: inta[8],k=2;无法正确引用数组a中元素的是()。 答案: A、a[8/k] B、a[8-k] C、a[8+k] D、a[0] 51025、下列叙述正确的是()。 答案: A、数组中每一个元素都属于同一个数据类型 B、定义数组时,若不加类型说明符则为整型 C、C语言中,数组长度在程序运行中可作动态调整 D、可利用数组名引用数组的第一个元素 51026、下列程序段的运行结果是()。 inta[]={1,3,4,6,9},i,x=1; for(i=0;i<3;i++) x+=a[i+1]; printf("%d\n",x); 答案: A、9 B、14 C、15 D、10 51027、下列程序段的运行结果是()。 inta[]={8,7,6,5,4,3,2,1},i,sum=0; for(i=0;i<8;i++) if(i<=3) sum+=a[i]; else sum-=a[i]; printf("%d\n",sum); 答案: A、0 B、16 C、10 D、15 51028、下列程序段的运行结果是()。 inta[]={0,1,2,3,4,5,6,7,8,9},i=0,t; while(i<=7) {t=a[i]; a[i]=a[i+2]; a[i+2]=t; i+=2; } for(i=0;i<10;i++) printf("%d",a[i]); 答案: A、0123456789 B、2143658709 C、2468013579 D、1357924680 51124、对二维数组arr初始化正确的是()。 答案: A、intarr[2][3]={{1,2},{3,4},{0}}; B、intarr[2][]={1,2,3,4,5}; C、intarr[2][3]={{1,2},{3,4}}; D、intarr[][]={{1},{3,4,5}}; 51125、下列程序段的运行结果是()。 intarr[][4]={1,2,3,4,5,6,7,8,9,10,11,12}; printf("%d\n",arr[1][3]); 答案: A、8 B、3 C、11 D、12 51126、若已定义: inta[][4]={{1,2},{3,4},{5,6,7},{8,9,10,11}};则a[2][2]的值为()。 答案: A、7 B、4 C、10 D、6 51127、下列程序段的运行结果是()。 inta[3][3]={1,2,3,4,5,6,7,8,9},i; for(i=0;i<3;i++) printf("%2d",10-a[2-i][i]); 答案: A、357 B、753 C、951 D、841 51128、二维数组元素在内存中的存放顺序是()。 答案: A、由用户自己定义 B、按列优先 C、按行优先 D、由编译器决定 51224、若已定义charstra[50],strb[50];能正确从键盘读入字符串的是() 答案: A、gets(strb,stra); B、scanf("%s%s",stra[50],strb[50]); C、scanf("%s%s",stra,strb); D、getch(stra,strb); 51225、若已定义: charstr1[20]="guangzhou",str2[20]="2010";能形成字符串"GUANGZHOU2010"的语句是()。 答案: A、strcpy(strupr(str1),str2); B、strcat(strupr(str1),str2); C、strcpy(str2,strupr(str1)); D、strcat(str2,strupr(str1)); 51226、下列程序段的运行结果是()。 charstr[]={'Y','o','u','\0','a','r','e','\0','w','e','l','c','o','m','e'}; puts(str); 答案: A、welcome B、Youare C、Youarewelcome D、You 51227、若已定义: charstr[20]={"Good\0morning"};则函数strlen(str)的值是()。 答案: A、4 B、5 C、6 D、12 51228、下列程序段的运行结果是()。 chars1[7]="abcdef",s2[4]="123"; strcpy(s1,s2); printf("%s%c",s1,s1[4]); 答案: A、abc B、123 C、abce D、123e 51324、下列程序段中函数调用语句tnk((a,b),m+n);的实参值是()。 inta=1,b=2,m=3,n=4; tnk((a,b),m+n); 答案: A、2和7 B、3和7 C、1和7 D、2和3 51325、对于无返回值的自定义函数,在定义时最好使用()类型标识符。 答案: A、void B、float C、int D、long 51326、下列叙述错误的是()。 答案: A、定义函数时可以有参数,也可以没有参数 B、形参是变量名时,实参也只能是变量名,不可以是表达式 C、函数的形参在函数被调用前是没有确定值的 D、函数的形参和对应的实参个数应相等,类型应相同或赋值兼容 51327、下列叙述正确的是()。 答案: A、函数的定义允许嵌套,但函数的调用不允许嵌套 B、函数的定义不允许嵌套,但函数的调用允许嵌套 C、函数的定义和调用都不允许嵌套 D、函数的定义和调用都允许嵌套 51328、下列程序的运行结果是()。 #include intfun(intx,inty) {intz; z=x>y? x: y; return(x+z); } main() {inta=6,b=1,c=3; printf("%d\n",fun(a-b,b+c)); } 答案: A、10 B、5 C、4 D、9 51424、下列程序的运行结果是()。 #defineK5 voidmain() {inta=3,b=4; printf("%d\n",K*(a+b)); } 答案: A、20 B、5 C、35 D、15 51425、下列叙述错误的是()。 答案: A、预处理命令行都必须以#号开始 B、#definePER1.5的作用是用标识符PER代表1.5 C、C语言源程序中加入一些预处理命令是为了改进程序设计环境,提高编程效率 D、宏定义可出现在源程序中任意合适的位置,且必须在行末加分号 51426、下列程序的运行结果是()。 #defineM5 #defineNM+1 #defineNNN*N-M voidmain() {printf("%d\n",3*NN); } 答案: A、108 B、21 C、16 D、103 51427、下列叙述正确的是()。 答案: A、为提高程序运行速度可在源程序中加入一些宏定义 B、宏定义不占用程序运行时间,但与程序中的语句一样需要编译 C、一个C语言源程序只能有一条预处理命令 D、宏定义中的宏名必须用大写字母表示 51428、下列程序中定义的二维数组a的()。 #defineM3 #defineN4 voidmain() {inta[M][N]; …… } 答案: A、第一维为3,第二维为4 B、第一维为4,第二维为3 C、第一维和第二维都为3 D、第一维和第二维都为4 51524、若已定义: inta=5,*p1=&a;floatf=6.5,*p2=&f;则下列正确的赋值语句是()。 答案: A、p1=&f; B、p2=p1; C、f=*p1+*p2; D、p2=&a; 51525、若已定义: inta,b=5,*p=&a;与语句a=b;等价的是()。 答案: A、a=*p; B、*p=*&b; C、a=&b; D、a=**p; 51526、变量的指针,其值是该变量的()。 答案: A、值 B、标识符 C、一个标志 D、内存单元地址 51527、若已定义: inta[5]={1,2,3,4,5},*pa=a;下列叙述错误的是()。 答案: A、a++与pa++的作用相同 B、pa与a的值相等 C、a[2]与pa[2]的值相等 D、*(pa+2)与a[2]的值相同 51528、若已定义: inta[5]={1,2,3,4,5},*p=a;且p值未发生变化,下列不能表示a[1]地址的是()。 答案: A、p+1 B、a++ C、a+1 D、++p 51624、下列程序的运行结果是()。 voidmain() {inta[5]={2,3,5,11,4},b[5]={12,1,6,9,8}; int*pa=a,*pb=b; inti; for(i=0;i<5;i++) if(*(pa+i)<*(pb+i)) printf("%d",*(pa+i)); } 答案: A、5 B、254 C、311 D、2 51625、下列程序的运行结果是()。 voidmain() {charstr[]="abcd",*p=str; inti; while(*p) printf("%c",*(p++)); } 答案: A、cd B、abcd C、abc D、bcd 51626、下列程序的运行结果是()。 voidmain() {inta=11,b=22,temp; int*pa=&a,*pb=&b; temp=*pa; *pa=*pb; *pb=temp; printf("%d,%d\n",a,b); } 答案: A、11,11 B、22,22 C、22,11 D、11,22 51627、下列程序的运行结果是()。 voidmain() {inta[]={1,2,3,4,5,7},*p; p=a; *(p+3)+=2; printf("%d,%d\n",*p,*(p+3)); } 答案: A、1,5 B、1,3 C、1,4 D、1,6 51628、下列程序的运行结果是()。 voidfn(int*p,intn) {intj; for(j=0;j *(p+j)+=10; } voidmain() {inta[5]={1,2,3,4,5}; inti; fn(a,5); for(i=0;i<5;i++) printf("%d",*(a+i)); } 答案: A、12345 B、112345 C、123415 D、1112131415 51724、若已定义: structstudent {intnum; charname[20]; }stu1,stu2; 下列语句不正确的是()。 答案: A、stu1=stu2; B、stu1.num=stu2.num; C、strcpy(stu1.name,stu2.name)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 福建省 10 二级 选择题