福建省二级c语言资料.docx
- 文档编号:5269413
- 上传时间:2022-12-14
- 格式:DOCX
- 页数:104
- 大小:129.29KB
福建省二级c语言资料.docx
《福建省二级c语言资料.docx》由会员分享,可在线阅读,更多相关《福建省二级c语言资料.docx(104页珍藏版)》请在冰豆网上搜索。
福建省二级c语言资料
语法基础
12、在C语言中,正确的用户标识符是()
A.3fB._forC.structD._f.5
16、以下()是正确的字符常量
A.“c”B.‘//”C.‘W’D.“\32a”
17、以下()是不正确的字符串常量
A.‘abc’B.“12’12”C.“0”D.““
18、C语言的整型数据在内存中的存储形式是()
A.原码B.反码C.补码D.ASCII码
19、以下()是正确的浮点数
A.e3B..62C.2e4.5D.123
20、下列不属于C语言关键字的是()
A.continueB.integerC.staticD.signed
21、C语言的字符型数据在内存中的存储形式是()
A.原码B.补码C.反码D.ASCII
22、在C语言中,变量所分配的内存空间大小是()
A.由变量的类型决定B.由用户自己决定
C.任意的D.均为两个字节
23、若有定义:
inta=2;则正确的赋值表达式是()
A.a-=(a*3)B.double(-1)C.a*3D.a*4=3
24、语句x=(a=3,b=++a);运行后,x、a、b的值依次为()
A.3,3,4B.4,4,3C.4,4,4D.3,4,3
25、语句a=(3/4)+3%2;运行后,a的值为()
A.0B.1C.2D.3
27、若有定义:
intx,a;则语句x=(a=3,a+1);运行后,x、a的值依次为()
A.3,3B.4,4C.4,3D.3,4
28、若变量已正确定义并赋值,符合C语言语法的表达式是()
A.a=8+b+c,a++B.a=3aC.int(12.3%4)D.a=a+1=c+b
29、若有定义:
inta,b;doublex;则以下不符合C语言语法的表达式是()
A.x%(-3)B.a+=-1C.a=b=2D.x=a+b
30、若有定义:
intx=2,y=3;floati;则以下符合C语言语法的表达式是()
A.x=x*3=2B.x=(y==1)C.i=float(x)D.i%(-3)
31、若有定义:
intx;则语句x=(2*3)+6%5;运行后,x的值是()
A.8B.7C.6D.5
32、下面关于C语言变量的叙述中,错误的是()
A.可以用const关键字定义变量B.在C程序中,SUM和sum是不同的变量
C.变量名必须由字母或下划线组成D.变量的类型确定了变量的取值范围
33、若有定义:
intx=5,y=6;则表达式x=(y==6)的值为()
A.5B.1C.6D.0
34、下面叙述正确的是()
A.2/3与2.0/3.0等价B.(int)2.0/3与2/3等价
C.++5与6等价D.‘A’与”A”等价
35、下面叙述中,错误的是()
A.C语言基本的算术运算符不包含模运算符”%”
B.算术运算符的优先级高于关系运算符
C.自加和自减运算符的结合方向是”自右向左”
D.C语言规定在表达式求值时,按其中运算符的优先级先高后低的次序进行
36、下面叙述正确的是()
A.强制类型转换运算的优先级高于算术运算B.若a和b是整型变量,(a+b)++是合法的
C.‘A’*’B’是不合法的D.“A”+”B”是合法的
38、设整型变量a为5,使b不为2的表达式是()
A.b=(++a)/3B.b=6-(--a)C.b=a%2D.b=a/2
39、若有定义:
inta=1,b=2,c=3;则语句++a||++b&&++c;运行后b的值为()
A.1B.0C.2D.3
40、若有定义:
inti,j;则表达式(i=2,j=5,i++,i+j++)的值是()
A.7B.8C.9D.10
41、若有定义:
inta,b;则表达式(a=2,b=5,a*2,b++,a+b)的值是()
A.7B.8C.9D.10
42、若有定义:
inti=2,j=5;则表达式(i+1,j+1,(++i+(j--))的值为()
A.8B.6C.7D.5
43、若已定义:
inti=3,k;则语句k=(i--)+(i--);运行后k的值为()
A.4B.5C.6D.7
44、C语言的运算符按运算对象的个数可以分为()
A.单目运算符一种B.单目和双目运算符
C.单目、双目和三目运算符D.单目、双目、三目和四目运算符
45、若已定义:
floatm;拟从键盘输入135.78这一数据给变量m,则应选用的语句是()
A.scanf(“%5.2f”,&m);B.scanf(“%3.2f”,&m);
C.scanf(“6.2f”,&m);D.scanf(“6f”,&m);
46、已知doublea;使用scanf()函数输入一个数值给变量a,正确的函数调用是()
A.scanf(“%ld”,&a);B.scanf(“%lf”,&a);
C.scanf(“%c”,&a);D.scanf(“%u”,&a);
47、已知chara;使用scanf()函数输入一个字符给变量a,不正确的函数调用是()
A.scanf(“%d”,&a);B.scanf(“%lf”,&a);C.scanf(“%c”,&a);D.scanf(“%u”,&a);
48、putchar()函数的功能是向终端输出()
A.多个字符B.一个字符C.一个实型变量值D.一个整型变量表达式
49、以下程序段运行后的输出结果是()
intk=11;
printf(“k=%d,k=%o,k=%x\n”,k,k,k);
A.k=11,k=13,k=cB.k=11,k=12,k=13
C.k=11,k=13,k=bD.k=11,k=13,k=a
50、若有定义:
intx=1234,y=123,z=12;则语句printf(“%4d+%3d+%2d”,x,y,z);运行后的输出结果为()
A.123412312B.12341234123412341231231231212
C.1234+1234+1234D.1234+123+12
51、已有如下定义和输入语句,
inta;charc1,c2;
scanf(“%d%c%c”,&a,&c1,&c2);
若要求a、c1、c2的值分别为10、A和B,正确的数据输入是()
A.10ABB.10ABC.10ABD.10AB
52、以下程序段的运行结果是()
inta=0,b=0,c=0;
if(a&&++b)
c++;
printf(“%d,%d\n”,b,c);
A.0,0B.1,2C.2,2D.1,0
53、以下程序的运行结果是()
voidmain()
{
inta=65;
charc=’A’;
printf(“%x,%d”,b,c);
}
A.65,aB.41,aC.65,65D.41,65
54、若已定义:
inta=5;floatb=63.72;以下语句中能输出正确值的是()
A.printf(“%d%d”,a,b);B.printf(“%d%2f”,a,b);
C.printf(“%2f%2f”,a,b);D.printf(“%2f%d”,a,b);
55、运行以下程序段时编译出错,其原因是()
charc1='8',c2='2008';
printf("%c,%d\n",c1,c2);
A.c2是字符变量,只能赋以字符常量,不能赋以字符串常量
B.字符串要用“2008“表示,而‘2008’不是字符串表示
C.‘2008’只能赋值给字符数组
D.字符变量不能用%d格式输出
56、若已定义:
inta=3,b=15,c;则语句c=a>b;运行后c的值为()
A.1B.0C.tD.f
57、在C语言中,判定逻辑值为“真“的最正确的叙述是()
A.1B.非0的数C.大于0的数D.非0的整数
58、若已定义:
inta=-36,b=-30,c;则语句c=a
A.1B.tC.0D.f
59、能正确表示数学关系式800>=y>=500的C语言表达式为()
A.(y<=800)&&(y>=500)B.(y<=800)AND(y>=500)
C.800>=y>=500D.(y<=800)&(y>=500)
60、若有定义:
intx=3,y=4;则表达式!
x||y的值为()
A.1B.0C.3D.4
61、若有定义:
inti=7,j=8;则表达式i>=j||i A.1B.变量i的值C.0D.变量j的值 62、若希望当a的值为奇数时,表达式的值为“真”,a的值为偶数时,表达式的值为”假”。 则不能满足要求的表达式是() A.a%2==1B.! (a%2==0)C.! (a%2)D.a%2 63、若有定义: intx=3,y=4,z=5;则值为0的表达式是() A.‘x’&&yB.x<=y C.x||y+z&&y-zD.! ((x z||1) 64、若有定义: inta=5,b=2,c=1;则表达式a-b A.0B.1C.3D.-1 67、已知doublea=5.2;则正确的赋值表达式是() A.a+=a-=(a=4)*(a=3)B.a=a*3=2 C.a%3D.a=double(-2) 68、已知chara='R';则正确的赋值表达式是() A.a=(a++)%4B.a+2=3C.a+=256--D.a=’\078’ 69、已知inta=’R’;则正确的表达式是() A.a%10B.a=int(3e2)C.2*a=a++D.a=a+a=a+3 75、若有定义: inta=6,b=2;charc1=’a’,c2=’b’;则表达式a+b%5+c2-c1的值是(c) A.7B.8C.9D.表达式错误 77、设有定义: charc;floatf;inti;unsignedu;doubled;下列各表达式的类型分别是() 1.u+92.d! =f&&(i+2)3.8.2*i+c A.1.unsigned,2.int,3.doubleB.1.double,2.double,3.double C.1.int,2.double,3.charD.1.unsigned,2.double,3.int 控制结构 81、以下程序段运行的结果是() inta,b,c,x; a=b=c=0;x=15; if(! a)x--; elseif(b); if(c)x=3; else x+=4; printf("%d\n",x); A.15B.17C.18D.19 89、若有定义: intx;以下不会产生死循环的是() A.for(;(x=getchar())! =’\n’;);B.while (1){x++;} C.for(i=10;;i++);D.for(;;x+=1); 90、在循环语句的循环体中,break语句的作用是() A.暂停程序的运行B.结束本次循环 C.继续执行break语句之后的循环体各语句 D.提前结束循环,接着执行该循环后续的语句 96、以下程序的运行结果是() voidmain() { intsum=0,item=0; while(item<5) { item++; sum+=item; if(sum>=6) break; } printf(“%d\n”,sum); } A.10B.15C.6D.7 97、以下程序的运行结果是() voinmain() { intsum=0,item=0; while(item<5) { item++; if(item==2) continue; sum+=item; } printf(“%d\n”,sum); } A.10B.13C.15D.1 99、以下程序的运行结果是() #include main() { inty=10; do {y--;} while(--y); printf("%d\n",y--); } A.1B.2C.-1D.0 数组 101、下列数组定义中,正确的是() A.inta[10];B.intn=10,a[n]; C.intN=10;inta[N];D.intn;scanf(“%d”,&n);inta[n]; 102、若已定义: inta[13];则不能正确引用a数组的元素的是() A.a[0]B.a[10]C.a[10+3]D.a[13-5] 103、若有定义: inta[3]={0,1,2};则a[1]的值为() A.0B.1C.2D.3 104、若有定义: inta[5]={1,2,3,4,5}; 则语句a[1]=a[2]+a[2+2]-a[3-1];运行后a[1]的值为() A.6B.5C.1D.2 106、若有如下程序段: chars[10]; s=“abcd”; printf(“%s\n”,s); 则()。 A.执行时输出: abcdB.执行时输出: a C.执行时输出: abD.编译不通过 107、下面程序段的运行结果是() inti=0,a[]={7,5,7,3,8,3}; do{ a[i]+=2; }while(a[++i]>5); for(i=0;i<6;i++) printf("%d",a[i]); A.9795105B.9593103C.957383D.757383 108、下面程序段的运行结果是() inti=0,a[]={1,2,3,4,5}; do{ a[i]+=10; }while(a[++i]>2); for(i=0;i<5;i++) printf("%d",a[i]); A.112345B.12345C.1112131415D.1112345 109、西面关于数组的叙述中,正确的是() A.数组必须先定义,然后使用 B.定义数组时,可不加类型说明符 C.定义数组后,可通过赋值运算符“=”对该数组名直接赋值 D.在数据类型中,数组属于基本类型 110、一下程序段的运行结果是() inti=0,a[]={6,5,3,7}; do { a[i]++; }while(a[i]<4); for(i=0;i<4;i++)printf("%d",a[i]); A.6537B.7563C.7537D.5673 111、有如下程序段: intt[][3]={1,2,3,4,5,6,7,8,9,10,11,12}; printf("%d\n",t[2][1]); 则执行该程序段后输出结果是() A.8B.7C.4D.2 112、以下程序段运行后s的值是() inta[3][3]={1,2,3,1,2,3,1,2,3}; inti,j,s=1; for(i=0;i<3;i++) for(j=i;j<3;j++)s*=a[i][j]; A.18B.108C.2D.12 113、以下不能对二维数组arr进行正确初始化的语句是() A.intarr[2][3]={0};B.intarr[][3]={1,2,3,4,5}; C.intarr[2][3]={{1,2},{3,4},{5,6}};D.intarr[2][3]={{1},{3,4,5}}; 114、若有定义: inta[3][4]={{1,2},{0},{1,2,3}};则a[1][1]的值为() A.0B.{1,2}C.1D.3 116、若有定义: inti=0,x=0;inta[3][3]={1,2,3,4,5,6,7,8,9};则以下程序段运行后x的值为() for(;i<3;i++)x+=a[i][2-i]; A.0B.12C.15D.18 117、若有定义inta[2][3];则对数组元素的非法引用的是() A.a[0][1/2]B.a[1][1]C.a[4-4][0]D.a[0][3] 118、以下数组定义中,正确的是() A.inta[2][]={1,2,3,4,5};B.inta[][2]={{0},{}}; C.inta[2][2]={{1,2},{3}};D.inta[][]={1,2,3,4}; 120、以下程序段运行后s的值是() inta[3][3]={1,2,3,4,5,1,2,3,4}; inti,j,s=1; for(i=0;i<3;i++) for(j=i+1;j<3;j++) s*=a[i][j]; A.6B.120C.24D.480 121、设已定义: inta[][4]={0,0};则下列描述错误的是() A.数组a的每个元素都可得到初值0B.二维数组a的第一维大小为1 C.数组a的行数为1 D.只有元素a[0][0]和a[0][1]可得到初值0,其余元素均得不到初值0 122、设已定义: charstr1[10],str2[10]=”Fujian”;则能将字符串”Fujian”赋给数组str1的正确语句是() A.str1=”Fujian”B.strcpy(str1,str2);C.strcpy(str2,str1);D.str1=str2; 123、有如下定义: charstr[3][2]={'a','b','c','\0','e','f'};则语句: printf("%s",str[0]);的输出结果是() A.abB.abcefC.abc\0D.abc 124、设有如下数组定义: charstr[8]={"Fujian"};则分配给数组str的存储空间是()字节 A.6B.7C.8D.9 125、若有定义: chara[]="abcdef";charb[]="xyz";则以下程序段运行后屏幕输出为() strcpy(a,b); printf("%c",a[2]); A.cB.zC.\0D.d 126、以下程序段运行后屏幕输出为() chara[]="abc\0mis"; printf("%d",strlen(a)); A.5B.8C.3D.4 127、若有定义: inta=2;则语句a=strcmp("miss","miss");运行后a的值为() A.1B.0C.-1D.2 128、以下对C语言字符数组描述中,正确的是() A.可以用length函数计算字符数组中字符串的长度 B.可以在赋值语句中通过赋值运算符"="对字符数组整体赋值 C.存放在字符数组中的字符串,以’\0’作为该字符串结束标志 D.字符数组只能存放字符串,不能存放字符 129、以下程序段运行后屏幕输出为() charstr[80]; strcpy(str,"hello"); printf("%d",strlen(str)); A.5B.6C.7D.80 131、已有定义: charstr1[15]={“university”},str2[15];则以下语句中正确的是() A.str2=str1;B.str2=”college”;C.scanf(“%s”,&str2);D.printf(“%s”,str1); 132、设已定义: chars1[20]=”Youare”,s2[9]=”welcome! ”;若要形成字符串”Youarewelcome! ”,正确的语句是() A.strcat(s1,s2);B.strcpy(s1,s2);C.s1+s2;D.s1&s2 函数 134、以下程序的运行结果是() intfun(intarray[4][4]) { intj; for(j=0;j<4;j++)printf("%2d",array[2][j]); printf("\n"); } main() { inta[4][4]={0,1,2,0,1,0,0,4,2,0,0,5,0,4,5,0}; fun(a); } A.2005B.1004C.0120D.0450 136、以下程序运行后屏幕输出为() #include intf(intx,inty) { return(x+y); } main() { inta=2,b=3,c; c=f(a,b); printf("%d+%d=%d\n",a,b,c); } A.0B.2+3=5C.2+3=0D.3+2=5 137、以下程序运行后屏幕输出为() #include inta=2,b=3; intmax(inta,intb) { intc; c=a>b? a: b; return(c); } main() { inta=4; printf("%d",max(a,b)); } A.3,2B.2C.3D.4 138、以下程序的运行结果是() fun(inti) { inta=2; a=i++; printf("%d",a); } main() { inta=5,c=3; fun(c); printf("%d",a); } A.45B.35C.44D.33 139、若有如下函数定义: intfun() { staticintk=0; return++k; } 以下程序段运行后屏幕输出为() inti; for(i=1;i<=5;i++)fun(); printf("%d",fun()); A.0B.1C.5D.6 140、下面程序的输出结果是: () #include intglobal=100; fun() { intglobal=5; return++global; } voidmain() { printf("%d\n",fun()); } A.100B
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 福建省 二级 语言 资料
![提示](https://static.bdocx.com/images/bang_tan.gif)