1、 已知字母"A"的ASCII码为十进制的65,下面程序输出正确的是:
main()
{
char ch1,
ch2;
ch1='A'+'5'-'3';
ch2='A'+'6'-'3';
printf("%d,
%cn", ch1, ch2);
}
A) 67,
D B) B, C
C)
不确定的值 D) C, D
正确答案是: A
2、 若有定义int a=12,n=5,则表达式a%=(n%2)运算后,a的值:
A)
0 B) 1
C)
12 D) 6
正确答案是: A
3、 执行语句printf("%un",-32768)的输出结果是:
A)
32768 B) 0
C)
-1 D) 不定值
正确答案是: A
4、 以下对整数的书写形式中,错误的是:
A)
7000L B) 17000L
C)
-3078u D) 32767
正确答案是: C
5、
设x,y,z,s均为int型变量,且初值均为1,则执行语句s=++x||++y&&++z后,
则s的值为:
A)
不定值 B) 2
C)
1 D) 0
正确答案是: C
6、 若有代数式(3ae)/(bc),则下面不正确的C语言表达式是:
A)
a/b/c*e*3 B) 3*a*e/b/c
C)
3*a*e/b*c D) a*e/c/b*3
正确答案是: C
7、 若有以下定义和语句:
int a=010,
b=0x10, c=10;
printf("%d,%d,%dn",a,b,c);
则输出结果是:
A) 10,10,10 B) 8,16,10
C) 8,10,10 D)
8,8,10
正确答案是: B
8、 C语言提供的合法的数据类型关键字是
A)
Double B)
short C)
integer D) Char
正确答案是: B
9、 合法的C语言字符常量是
A)
't' B)
"A" C)
65 D) A
正确答案是: A
以下叙述正确的是:
A) 在C程序中,主函数必须位于程序的最前面
B) 在C程序中,一行只能写一条语句
C) C程序的基本结构是程序行
D) C语句是完成某种程序功能的最小单位
正确答案是: D
语言中的变量名只能由字母,数字和下划线三种字符组成,且第一个字符:
A)
必须为字母 B) 必须为下划线
C)
必须为字母或下划线 D) 可以是字母,数字或下划线中的任意一种
正确答案是: C
在C语言中,以下叙述不正确的是:
A) 在C程序中,无论是整数还是实数,都能被准确无误的表示
B) 在C程序中,变量名代表存储器中的一个位置
C) 静态变量的生存期与整个程序的生存期相同
D) C语言中变量必须先说明后引用
正确答案是: A
表达式5!=3的值是:
A)
T B) 非零值
C)
0 D) 1
正确答案是: D
在C语言中,要求运算量必须是整型或字符型的运算符是:
A)
&& B) %
C)
! D) +
正确答案是: B
字符(char)型数据在微机内存中的存储形式是
A)
反码 B)
补码 C)
EBCDIC码 D) ASCII码
正确答案是: D
下列四组常数中,均是正确的八进制数或十六进制数的一组是:
A)
016 0xbf 018
B) 0abc 017 0xa
C)
010 0x11 0x16
D) 0A12 7FF -123
正确答案是: C
若有说明语句:char c='101'; 则变量c:
A)
包含一个字符 B) 包含两个字符
C)
包含三个字符 D) 说明不合法
正确答案是: A
以下叙述中不正确的是:
A) 空字符串(即两个双引号连写)只占一个存储单元
B) 字符型常量可以放在字符型变量中
C) 字符型常量可以放在字符串变量中
D) 字符型常量可以与整数混合运算,而字符串常量不可以
正确答案是: C
a,b均为整数,且b!=0,则表达式a/b*b+a%b的值是:
A)
a B) b
C)
a被b除的整数部分 D) a被b除的商的整数部分
正确答案是: A
设有如下变量定义:
int
i=8,k,a,b;
unsigned
long w=5;double x=1.42, y=5.2;
则以下符合C语言语法的表达式是:
A)
a+=a-=(b=4)*(a=3) B) x%(-3)
C)
a=a*3=2 D) y=float(i)
正确答案是: A
以下程序的输出结果是:
main()
{
int a=12, b=12;
printf("%d,%dn",--a,++b);
}
A)
10,10 B) 12,12
C)
11,10 D) 11,13
正确答案是: D
在C语言的变量类型说明中,int,char,float等类型的长度是:
A)
固定的 B) 由用户自己定义的
C)
任意的 D) 与机器字长有关的
正确答案是: D
设有以下语句:int x=10;x+=3+x%(-3),则x的值是:
A)
14 B) 15
C)
11 D) 12
正确答案是: A
已知x=43,ch='A',y=0,则表达式(x>=y&&ch
A)
0 B) 语法错
C)
1 D) "假"
正确答案是: C
为表示关系x≥y≥z,应使用C语言表达式
A)
(x>=y)&&(y>=z) B) (x>=y)AND(y>=z)
C)
(x>=y>=z) D) (x>=y) &
(y>=z)
正确答案是: A
以下符合C语言语法的表达式:
A)
d=9+e+f=d+9 B) d=9+e,f=d+9
C)
d=9+e=e++,d+9 D) d=9+e++=d+7
正确答案是: B
C语言中最简单的数据类型包括
A)
整型,实型,逻辑型 B) 整型,实型,字符型
C)
整型,字符型,逻辑型 D) 整型,实型,逻辑型,字符型
正确答案是: B
以下能正确定义变量a、b和c并为其赋值的语句是:
A) int a=5; b=5;
c=5; B) int
a,b,c=5;
C) a=5, b=5,
c=5; D) int a=5, b=5, c=5;
正确答案是: D
若已定义x和y是整型变量,x=2;,则表达式y=2.75+x/2的值是:
A)
5.5 B) 5
C)
3 D) 4.0
正确答案是: C
C语言中,要求运算量必须是整型的运算符是:
A)
+ B) /
C)
% D) *
正确答案是: C
一个C语言的执行是从:
A) 本程序的主函数开始,到本程序的主函数结束
B) 本程序的第一个函数开始,到本程序的最后一个函数结束
C) 本程序的主函数开始,到本程序的最后一个函数结束
D) 本程序的第一个函数开始,到本程序的主函数结束
正确答案是: A
设有说明:char w; int x; float y; double z; 则表达式:
w*x+z-y值的数据类型是:
A)
float B) char
C)
int D) double
正确答案是: D
执行printf("%x,%o,%dn", -1, -1, -1)后输出结果是:
A) -1, -1,
-1 B) ffff, -01, -1
C) ffff, 32767, -1 D) ffff,
177777, -1
正确答案是: D
设a=1,b=2,c=3,d=4,则表达式a
A)
4 B) 3
C)
2 D) 1
正确答案是: D
设x为int型变量,则执行语句x=10和x+=x-=x-x后,x的值为:
A)
10 B) 20
C)
40 D) 30
正确答案是: B
执行下列语句后,输出结果是:
int a;
long int
b=65536;
a=b;
printf("%dn",a);
A)
65536 B) 0
C)
-1 D) 1
正确答案是: B
不过vc下运行结果是65536
阅读下面的程序
main()
{
int i,j;
scanf("%2d %*3d %2d",&i,&j);
printf("%d%4d",i,j);
}
如果从键盘上输入
12 345
67
则程序的运行结果是:
A) 12
67 B) 12 345
C)
12345 D) 程序语法出错
正确答案是: A
请读程序:
#include
main()
{ int a;
float b,c;
scanf("%2d%3f%4f",&a,&b,&c);
printf("na=%d,b=%f,c=%fn",a,b,c);
}
若运行时从键盘上输入9876543210(表示回车),则上面程序的
输出结果是
A)
a=98,b=765,c=4321 B) a=10,b=432,c=8765
C)
a=98,b=765.000000,c=4321.000000 D) a=98,b=765.0,c=4321.0
正确答案是: C
以下程序的输出结果是
main()
{ int x=10,y=10;
printf("%d %dn",x--,--y);
}
A) 10
10 B) 9
9 C) 9
10 D) 10 9
正确答案是: D
请选出以下语句的输出结果
printf("%dn",strlen("t" 65xffn"));
A)
5 B)
14 C)
8 D) 输出项不合法,无法正常输出
正确答案是: A
在C语言中(以16位PC机为例),五种基本数据类型存储空间长度
的排列顺序是:
A) char
int<=float
B) char=int
int<=float
C) char
int=float=double
D) char=int=long
int<=float
正确答案是: A
下面程序的输出是:
main()
{
unsigned int
a=32768;
printf("a=%dn",a);
}
A)
a=32768 B) a=32767
C)
a=-32768 D) a=-1
正确答案是: C
下面程序的输出结果是:
main()
{
int a=5,b=3;
float x=3.14, y=6.5;
printf("%d,%dn",a+b!=a-b,x<=(y-=6.1));
}
A)
1,0 B) 0,1
C)
1,1 D) 0,0
正确答案是: A
下面程序的输出结果是:
main()
{
int a,b,c;
long int d;
b=(a=32767, a++);
c=d=0xffff;
printf("%x,%d,%d,%dn",a,b,c,d);
}
A)
8000,32767,-1,-1 B) -1,-1,32767,8000
C)
-1,-1,-1,-1 D) 32767,-1,-1,-1
正确答案是: A
阅读下面的程序
main()
{
char ch;
scanf("%3c",&ch);
printf("%c",ch);
}
如果从键盘上输入
abc
则程序的运行结果是:
A)
a B) b
C)
c D) 程序语法出错
正确答案是: A
若要求在if后一对圆括号中表示a不等于0的关系,则能正确表示这一关
系的表达式为
A)
a<>0 B)
!a C)
a=0 D) a
正确答案是: D
设 int a=12,则执行完语句a+=a-=a*a后,a的值是
A)
552 B)
264 C)
144 D) -264
正确答案是: D
请选出合法的C语言赋值语句
A)
a=b=58 B) i++;
C)
a=58,b=58 D) k=int(a+b);
正确答案是: B
设变量a是整型,f是实型,i是双精度型,则表达式10+'a'+i*f的数据类型是:
A)
int型 B)float型
C)
double型 D)不确定
正确答案是: C
若有定义:int y=7,x=12,则能使值为3的表达式是;
A)
x%=(y%=5) B) x%=(y-y%5)
C)
x%=y-y%5 D) (x%=y)-(y%=5)
正确答案是: D
阅读下面的程序
main()
{
int i,j;
scanf("%3d%2d",&i,&j);
printf("i=%d,j=%dn",i,j);
}
如果从键盘上输入1234567,则程序的运行结果是:
A)
i=123,j=4567 B) i=1234,j=567
C)
i=1,j=2 D) i=123,j=45
正确答案是: D
阅读下面的程序
main()
{
printf("%f%%",1.0/3);
}
则程序的运行结果是:
A)
0.3333333% B) 0.33%
C)
0.333333% D) 0.333333%%
正确答案是: C
设有如下定义:
int x=10,y=3,z;
则语句
printf("%dn",z=(x%y,x/y));
的输出结果是
A)
1 B)
0 C)
4 D) 3
正确答案是: D
若有说明和语句
int
a=5;
a++;
此处表达式a++的值是
A)
7 B)
6 C)
5 D) 4
正确答案是: C
下列四组常数中,均是合法整型常量的一组是:
A)
160 0xffff 011
B) -0xcdf
01a 0xe
C)
-01 986,012 0668
D) -0x48a
2e5 0x
正确答案是: A
若d为double型变量,则表达式d=1,d+5,d++的值是:
A)
1 B) 6.0
C)
2.0 D) 1.0
正确答案是: D
设a=1,b=2,c=3,d=4,则表达式a
A)
4 B) 3
C)
2 D) 1
正确答案是: D
下列语句中符合C语言语法的赋值语句是
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;
正确答案是: D
C语言程序的基本单位是
A)
程序行 B)
语句 C)
函数 D) 字符
正确答案是: C
表达式: 10!=9的值是
A)
true B)
非零值 C)
0 D) 1
正确答案是: D
在下列选项中,不正确的赋值语句是
A)
++t; B)
n1=(n2=(n3=0)); C)
k=i=j; D) a=b+c=1;
正确答案是: D
若希望当A的值为奇数时,表达式的值为"真",A的值为偶数时,表达式的值
为"假",则下面不能满足要求的表达式是:
A)
A%2==1 B) !(A%2==0)
C)
!(A%2) D) A%2
正确答案是: C
执行以下程序,输出结果是:
main()
{
int a=353;
char b;
b=a;
printf("%cn",b);
}
A)
b B) a
C)
65 D) 错误信息
正确答案是: B
阅读下面的程序
main()
{
int i,j;
float x,y;
scanf("%f,%f",&i,&j);
scanf("%f,%f",&x,&y);
printf("i=%d,j=%dn",i,j);
printf("x=%f,y=%fn",x,y);
}
如果从键盘上输入
32,18
12.5,-4.3
则程序的运行结果是:
A)
i=32,j=18 B) i=0,j=0
x=12.500000,y=-4.300000 x=12.500000,y=-4.300000
C)
i=32,j=18 D) i=0,j=0
x=12.5,y=-4.3 x=12.5,y=-4.3
正确答案是: B
注意:随机数
阅读下面的程序
#include
main()
{
char c1,c2;
c1=getchar();
c2=c1+3;
printf("%c,%dn",c2,c2);
}
已知'A'的ASCII的值为65,如果从键盘上输入
D
则程序的运行结果是:
A)
D,68 B) 'G',68
C)
D,71 D) G,71
正确答案是: D
若x和y都是int型变量,x=100,y=200,且有下面的程序片段:
printf("%d",(x,y));
上面程序片段的输出结果是
A)
200 B) 100
C) 100
200 D) 输出格式符不够,输出不确定的值
正确答案是: A
以下程序的输出结果是
main()
{int a=-1,b=4,k;
k=(++a<0) &&
!(b--<=0);
printf("%d %d %dn",k,a,b);
}
A) 1 0
4 B) 1 0
3 C) 0 0
3 D) 0 0 4
正确答案是: D
下面程序的输出结果是:
main()
{
int a=-1, b=4, k;
k=(a++<=0)&&(!(b--<=0));
printf("%d,%d,%dn",k,a,b);
}
A)
1,1,2 B) 1,0,3
C)
0,1,2 D) 0,0,3
正确答案是: B
阅读下面的程序
main()
{
int i,j,m,n;
i=8;j=10;
m=++i;
n=j++;
printf("%d,%d,%d,%d",i,j,m,n);
}
程序的运行结果是:
A)
8,10,8,10 B) 9,11,8,10
C)
9,11,9,10 D) 9,10,9,11
正确答案是: C
下面四个选项中,均是合法浮点数的选项是:
A)
1e+1 5e-9.4 03e2
B)
-.60 12e-4 -8e5
C)
123e 1.2e-.4 e-4
D)
-e3 e-4 5.e-0
正确答案是: B
下面程序的输出是:
main()
{
unsigned int
a=32768;
printf("a=%dn",a);
}
A)
a=32768 B) a=32767
C)
a=-32768 D) a=-1
正确答案是: C
下面程序的输出是
main()
{int x=023;
printf("%dn",--x);
}
A)
17 B)
18 C)
23 D) 24
正确答案是: B
c语言“顺序选择结构”(容易)习题及答案
2008-01-08 19:12
能正确表示a≥10或a≤0的关系表达式是
A) a>=10 or
a<=0 B) a>=10 | a<=0
C) a> =10 &&
a<
=0 D) a>=10 || a<=0
正确答案是: D
若要求在if后一对圆括号中表示a不等于0的关系,则能正确表示
这一关系的表达式为
A)
a<>0 B) !a
C)
a=0 D) a
正确答案是: D
若有以下定义: float x; int a,b; 则正确的switch 语句是
A)
switch(x) B) switch(x)
{ case
1.0:printf("*n"); { case 1,2:printf("*n");
case 2:
printf("**n") case 3:printf("**n");
} }
C)
switch(a+b) D) switch(a-b);
{ case 1: printf("*n")
; { case 1:printf("*n");
case 2:
printf("**n"); case 2:printf("**n");
} }
正确答案是: C
若有以下定义: int a,b,c1,c2,x,y; 则正确的switch 语句是
A)
switch(a+b); B) switch(a*a+b*b)
{ case
1:y=a+b;break; { case 3:
case
2:y=a-b;break; case 1:y=a+b;break;
} case 3:y=b-a;break;
}
C) switch
a D) switch(a-b)
{ case
c1:y=a-b;break; { default:y=a*b;break;
case
c2:y=a*d;break; case 3:
default:x=a+b; case 4:x=a+b;break;
}