c:
d的值()。
A)1B)2C)3D)4
7.有以下程序
main()
{
intc=35;printf("%d",c&c);
}
程序运行后的输出结果是()。
A)0B)70C)35D)1
8.以下程序运行后的输出结果是
main()
{
inta,b,c
a=10;b=20;c=(a%b<1)||(a/b>1);
printf("%d%d%d",a,b,c);
}
9.以下叙述中错误的是()。
A)C语句必须以分号结束
B)复合语句在语法上被看作一条语句
C)空语句出现在任何位置都不会影响程序运行
D)赋值表达式末尾加分号就构成赋值语句
10.以下叙述中正确的是()。
A)调用printf函数时,必须要有输出项
B)使用putchar函数时,必须在之前包含头文件stdio.h
C)在C语言中,整数可以以十二进制、八进制或十六进制的形式输出
D)调用getchar函数读入字符时,可以从键盘上输入字符所对应的ASCII码
11.以下不能正确计算代数式值的C语言表达式是()。
A)1/3*sin(1/2)*sin(1/2)B)sin(0.5)*sin(0.5)/3
C)pow(sin(0.5),2)/3D)1/3.0*pow(sin(1.0/2),2)
12.设有定义:
intk=1,m=2;floatf=7;,则以下选项中错误的表达式是()。
A)k=k>=kB)-k++C)k%int(f)D)k>=f>=m
13.设有定义:
inta=2,b=3,c=4;,则以下选项中值为0的表达式是()。
A)(!
a==1)&&(!
b==0)B)(aC)a&&bD)a||(b+b)&&(c-a)
14.有以下程序段
intk=0,a=1,b=2,c=3;
k=ac?
c:
k;
执行该程序段后,k的值是()。
A)3B)2C)1D)0
15.以下不合法的用户标识符是
A)j2_KEYB)DoubleC)4dD)_8_
16.以下不合法的数值常量是
A)011B)lelC)8.0E0.5D)0xabcd
17.)以下不合法的字符常量是
A)'\018'B'\”'C)'\\'D)‘\xcc'
18.下列定义变量的语句中错误的是________。
A)int_int;B)doubleint_;C)charFor;D)floatUSS
19.若变量x、y已正确定义并赋值,以下符合C语言语法的表达式是________。
A)++x,y=x--B)x+1=yC)x=x+10=x+yD)double(x)/10
20.以下关于逻辑运算符两侧运算对象的叙述中正确的是________。
A)只能是整数0或1B)只能是整数0或非0的整数
C)可以是结构体类型的数据D)可是任意合法的表达式
21.若有定义intx,y;并已正确给变量赋值,则以下选项中与表达式(x-y)?
(x++):
(y++)中的条件表达式(x-y)等价的是________。
A)(x-y>0)B)(x-y<0)C)(x-y<║x-y>0)D)(x-y==0)
22.有以下程序
main()
{intx,y,z;
x=y=1;
z=x++,y++,++y;
printf("%d,%d,%d\n",x,y,z);
}
程序运行后的输出结果是________。
A)2,3,3B)2,3,2C)2,3,1D)2,2,1
23.设有定义:
intk=0;,以下选项的四个表达式中与其他三个表达式的值不相同的是()
A)k++B)k+=1C)++kD)k+1
24.以下选项中,当x为大于1的奇数时,值为0的表达式()
A)x%2==1B)x/2C)x%2!
=0D)x%2==0
25.以下关于long、int和short类型数据占用内存大小的叙述中正确的是
A)均占4个字节B)根据数据的大小来决定所占内存的字节数
C)由用户自己定义D)由C语言编译系统决定
第四章例年等级考试试题
1.数字字符0的ASCII值为48,若有以下程序
main()
{chara='1',b='2';
printf("%c,",b++);
printf("%d",b-a);
}
程序运行后的输出结果是()。
A)3,2B)50,2C)2,2D)2,50
2.有以下程序
main()
{intm,n,p;
scanf("m=%dn=%dp=%d",&m,&n,&p);
printf("%d%d%d",m,n,p);
}
若想从键盘上输入数据,使变量m中的值为123,n中的值为456,p中的值为789,则正确的输入是()。
A)m=123n=456p=789B)m=123n=456p=789
C)m=123,n=456,p=789D)123456789
3.有以下程序
main()
{
inta,b,d=25;
a=d/10%9;
b=a&&(-1);
printf("%d,%d",a,b);
}
程序运行后的输出结果是()。
A)6,1B)2,1C)6,0D)2,0
4.以下程序运行时若从键盘输入:
102030<回车>。
输出结果是10300
#include
main()
{inti=0,j=0,k=0;
scanf("%d%*d%d",&i,&j,&k);
printf("%d%d%d",i,j,k);
}
5.已知字符A的ASCII代码值为65,以下程序运行时若从键盘输入:
B33<回车>.输出结果是
#include"stdio.h"
main()
{
chara,b;
a=getchar();scanf("%d",&b);
a=a-'A'+'0';
b=b*2;
printf("%c%c",a,b);
}
6.以下能正确定义且赋初值的语句是( )。
A)intn1=n2=10;B)charc=32;
C)floatf=f+1.1;D)doublex=12.3E2.5;
7.以下程序的功能是:
给r输入数据后计算半径为r的圆面积s。
程序在编译时出错。
main()
/*Beginning*/
{intr;floats;
scanf("%d",&r);
s=*p*r*r;printf("s=%f\n",s);
}
出错的原因是()。
A)注释语句书写位置错误B)存放圆半径的变量r不应该定义为整型
C)输出语句中格式描述符非法D)计算圆面积的赋值语句中使用了非法变量
8.有以下程序
#include
main()
{charc1='1',c2='2';
c1=getchar();c2=getchar();putchar(c1);putchar(c2);
}
当运行时输入:
a<回车>后,以下叙述正确的是()。
A)变量c1被赋予字符a,c2被赋予回车符
B)程序将等待用户输入第2个字符
C)变量c1被赋予字符a,c2中仍是原有字符2
D)变量c1被赋予字符a,c2中将无确定值
9.有以下程序
#include
main()
{
charc1,c2,c3,c4,c5,c6;
scanf(“%c%c%c%c”,&c1,&c2,&c3,&c4);
c5=getchar();c6=getchar();
putchar(c1);putchar(c2);
printf(“%c%c\n”,c5,c6);
}
程序运行后,若从键盘输入(从第1列开始)
123<回车>
45678<回车>
则输出结果是
A)1267B)1256C)1278D)1245
10.若变量a,b已定义为int类型并赋值21和55,要求用printf函数以a=21,b=55的形式输出,请写出完整的输出语句__[6]____。
11.设有定义:
inta;floatb;执行scanf("%2d%f",&a,&b);语句时,若从键盘输入876543.0<回车>,a和b的值分别是________。
A)876和543.000000B)87和6.000000
C)87和543.000000D)76和543.000000
12.有以下程序
main()
{inta=0,b=0;
a=10;/*给a赋值
b=20;给b赋值*/
printf("a+b=%d\n",a+b);/*输出计算结果*/
}
程序运行后输出结果是________。
A)a+b=0B)a+b=30C)30D)出错
13.设变量均已正确定义,若要通过scanf(“%d%c%d%c”,&a1,&c1,&a2,&c2);语句为变量a1和a2赋数值10和20,为变量c1和c2赋字符X和Y。
以下所示的输入形式中正确的是(注:
□代表空格字符)()
A)10□X□20□Y〈回车〉B)10□X20□Y〈回车〉
C)10□X〈回车〉D)10X〈回车〉
20□Y〈回车〉20Y〈回车〉
14.若变量均已正确定义并赋值,以下合法的C语言赋值语句是
A)x=y==5;B)x=n%2.5;C)x+n=I;D)x=5=4+1;
15.执行以下程序后的输出结果是。
main()
{inta=10;
a=(3*5,a+4);printf(“a=%d\n”,a);
}
16.以下叙述中错误的是()。
A)C语句必须以分号结束
B)复合语句在语法上被看作一条语句
C)空语句出现在任何位置都不会影响程序运行
D)赋值表达式末尾加分号就构成赋值语句
17.以下叙述中正确的是()。
A)调用printf函数时,必须要有输出项
B)使用putchar函数时,必须在之前包含头文件stdio.h
C)在C语言中,整数可以以十二进制、八进制或十六进制的形式输出
D)调用getchar函数读入字符时,可以从键盘上输入字符所对应的ASCII码
18.有以下程序
main()
{chara1='M',a2='m';
printf("%c\n",(a1,a2));}
以下叙述中正确的是()。
A)程序输出大写字母MB)程序输出小写字母m
C)格式说明符不足,编译出错D)程序运行时产生出错信息
第五章例年等级考试题
1.有以下程序
main()
{inti=1,j=2,k=3;
if(i++==1&&(++j==3||k++==3))
printf("%d%d%d",i,j,k);
}
程序运行后的输出结果是( )。
A)123B)234C)223D)233
2.若整型变量a、b、c、d中的值依次为:
1、4、3、2。
则条件表达式a
a:
cc:
d的值( )。
A)1B)2C)3D)4
3.以下程序运行后的输出结果是
main()
{
inta=3,b=4,c=5,t=99;
if(bif(aprintf("%d%d%d",a,b,c);
}
4.有以下程序段
intk=0,a=1,b=2,c=3;
k=ac?
c:
k;
执行该程序段后,k的值是()。
A)3B)2C)1D)0
5.设变量a、b、c、d和y都已正确定义并赋值。
若有以下if语句
if(a>b)if(c==d)y=0;
elsey=1;
该语句所表示的含义是()。
6.以下程序运行后的输出结果是【7】。
main()
{inta=1,b=2,c=3;
if(c=a)printf("%d\n",c);
elseprintf("%d\n",b);
}
7.有以下程序
main()
{
inta=0,b=0,c=0,d=0;
if(a=1)b=1;c=2;
elsed=3;
printf(“%d,%d,%d,%d\n”,a,b,c,d);
}
程序输出
A)0,1,2,0B)0,0,0,3C)1,1,2,0D)编译有错
8.设有条件表达式:
(EXP)?
i++;j--,则以下表达式中(EXP)完全等价的是
A)(EXP==0)B)(EXP!
=0)C)(EXP==1)D)(EXP!
=1)
9.以下程序的运行结果是。
main()
{inta=2,b=7,c=5;
switch(a>0)
{case1:
switch(b<0)
{case1:
switch(“@”);break;
case2:
printf(“!
”);break;
}
case0:
switch(c==5)
{case0:
printf(“*”);break;
case1:
printf(“#”);break;
case2:
printf(“$”);break;
}
default:
printf(“&”);
}
printf(“\n”);
第六章例年等级考试题
1.有以下程序
main()
{
inta=1,b;
for(b=1;b<=10;b++)
{
if(a>=8)break;
if(a%2==1){a+=5;continue;}
a-=3;
}
printf("%d",b);
}
程序运行后的输出结果是()。
A)3B)4C)5D)6
2.以下程序运行后的输出结果是0918273645
main()
{
charc1,c2;
for(c1='0',c2='9';c1printf("%c%c",c1,c2);
printf("");
}
3.下程序段
intn,t=1,s=0;
scanf("%d",&n);
do{s=s+t;t=t-2;}while(t!
=n);
为使此程序段不陷入死循环,从键盘输入的数据应该是( )。
A)任意正奇数B)任意负偶数C)任意正偶数D)任意负奇数
4.设变量已正确定义,则以下能正确计算f=n!
的程序段是( )。
A)f=0;B)f=1;
for(i=1;i<=n;i++)f*=i;for(i=1;i>=2;i--)
C)f=1;D)f=1;
for(i=n;i>1;i++)f*=i;for(i=n;i>=2;i--)
5.下程序
main()
{intk=5,n=0;
while(k>0)
{switch(k)
{default:
break;
case1:
n+=k;
case2:
case3:
n+=k;
}
k--;
}
printf("%d\n",n);
}
程序运行后的输出结果是()。
A)0B)4C)6D)7
6.以下程序的功能是计算:
s=1+12+123+1234+12345。
请填空。
main()
{intt=0,s=0,i;
for(i=1;i<=5;i++)
{t=i+【10】;s=s+t;}
printf("s=%d\n",s);
}
7.若有以下程序
main()
{inty=10;
while(y--);printf(“y=%d\n”y);
}
程序运行后的输出结果是
A)y=0B)y=-1C)y=1D)while构成无限循环
6.有以下程序
main()
{
inti,j,x=0;
for(i=0;i<2;i++)
{x++;
for(j=0;j<=3;j++)
{
if(j%2)continue;
x++;
}
x++;
}
printf(“x=%d\n”,x);
}
程序执行后的输出结果是
A)x=4B)x=8C)x=6D)x=12
7.有以下程序
#include
main()
{inti,j,m=55;
for(i=1;i<=3;i++)
for(j=3;j<=i;j++)m=m%j;
printf("%d\n",m);
}
程序的运行结果是
A)0B)1C)2D)3
8.有以下程序
#include
main()
{inty=9;
for(;y>0;y--)
if(y%3==0)printf("%d",--y);
}
程序的运行结果是
A)741B)963C)852D)875421
9.若变量已正确定义,有以下程序段
i=0;
doprintf("%d,",i);while(i++);
printf("%d\n",i)
其输出结果是
A)0,0B)0,1C)1,1D)程序进入无限循环
10.当执行以下程序时,输入1234567890<回车>,则其中while循环体将执行次。
#include
main()
{charch;
While((ch=getchar())==’0’)printf(“#”);
}
11.有以下程序
mian()
{inti,j;
for(i=1;i<4;i++)
{for(j=i;j<4;j++)printf(“%d*%d=%d“,i,j,i*j);
printf(“\n”);
}
}
11.有以下程序()
main()
{intk=5,n=0;
do
{switch(k)
{case1:
case3:
n+=1;break;
default;n=0;k--;
case2:
case4:
n+=2;k--;break;
}
printf(“%d”,n);
}while(k>0&&n<5);
}
程序运行后的输出结果是
A)235B)0235C)02356D)2356
12.以下叙述中正确的是()
A)break语句只能用于switch语句体中
B)continue语句的作用是:
使程序的执行流程跳出包含它的所有循环
C)break语句只能用在循环体内和switch语句体内
D)在循环体内使用break语句和continue语句的作用相同
13.有以下程序
main()
{inti;
for(I=1;I<=40;I++)
{if(I++%5=0)
if(++I%8=0)printf("%d",i)
}
printf("\n")
}
执行后的输出结果是________。
A)5B)24C)32D)40
14.有以下程序
mian0
{intk=5;
while(-k)printf("%d",k-=3);
printf("\n")
}
执行后的输出结果是________。
A)1B)2C)4D)死循环
15.以下程序的功能是:
输出100以内(不含100)能被3整除且个位数为6的所有整数,请填空。
main()
{inti,j;
for(i=0;__[13]__;i++)
{j=i*10+6;
if(_[14]____)continue;
printf(“%d”,j);
}
}
第七章例年等级考试试题
1.以下程序的输出结果是
#include
main()
{printf(“%d\n”,strlen(“IBM\n012\1\\”));
}
2.有以下程序
main()
{
intp[8]={11,12,13,14,15,16,17,18},i=0,j=0;
while(i++<7)if(p[i]%2)j+=p[i];
printf("%d",j);
}
程序运行后的输出结果是()。
A)42B)45C)56D)60
3.有以下程序
main()
{chara[7]="a0a0";inti,j;
i=sizeof(a);j=strlen(a);
printf("%d%d",i,j);
}
程序运行后的输出结果是()。
A)22B)76C)72D)62
4.以下能正确定义一维数组的选项是()。
A)inta[5]={0,1,2,3,4,5};B)chara[]={0,1,2,3,4,5};
C)chara={'A','B','C'};D)inta[5]="0123";
5.已有定义:
chara[]="xyz",b[]={'x','y','z'};,以下叙述中正确的是()。
A)数组a和b的长度相同B)a数组长度小于b数组长度
C)a数组长度大于b数组长度D)上述说法都不对
6.有以下程序
main()
{
intnum[4][4]={{1,2,3,4},{5,6,7,8},{9,10,11,12},{13,14,15,16}},i,j;
for(i=0;i<4;i++)
{
for(j=1;j<=i;j++)printf("%c",'');
for(j=j<4;j++)printf("%4d",num[i][j]);
printf("");
}
}
若要按以下形式输出数