当前位置:文档下载 > 所有分类 > IT/计算机 > C语言程序设计例题
侵权投诉

C语言程序设计例题

C语言程序设计例题

一.选择题
1、若有定义:int a=7;float x=2.5,y=4.7;则表达式x+a%3*(int)(x+y)%2/4的值(A)
A)2.500000 B) 2.750000
C) 3.500000 D) 0.000000
①先强制类型转换int(x+y)=int(2.5+4.7)=int(7.2)=int(7)
②再进行求余运算int (a)%int(3) =int(7)%int(3)=int(1), int(x + y)%2 =int(7)%int(2)=int(1)
③最后进行乘除加减运算 由于x为float型,先int型 float型 float(7)+float(1)*float(1)/float(4)=2.500000

2、设以下就是均为int类型,则值不等于7的表达式是(C)
A)(x=y=6,x+y,x+1) B)(x=y=6,x+y,y+1)
C)(x=6,x+1,y=6,x+y) D)(y=6,y+1,x=y,x+1)
逗号表达式 (表达式1 , 表达式2 , 表达式3) = 表达式3
A)项 y=6,x=6 ;x+y=12 ;x+1=6+1=7
B)项y=6,x=6 ; x+y=12 ;y+1=6+1=7
C)项x=6 ;x+1=7(x值不变),y=6 ;x+y=6+6=12
D)项y=6 ;y+1=7(y值不变),x=y(x值变, (y值不变) ;x+1=6+1=7

5、执行以下语句后b的值为(A)
int a=5,b=6,w=1,x=2,y=3,z=4;
(a=w>x)&&(b=y>z)
A) 6 B) 0 C) 1 D) 4
先执行w>x,1>2为假返回值0, 则a=0, 此时表达式(a=w>x)&&(b=y>z)必定为假, 计算机根据短路求值原则, 不执行后半句(b=y>z), 则b为原值6

7、阅读以下程序,当输入数据的形式为:25,13,10<CR>,正确的输出结果为(A)
main()
{
int x,y,z;
scanf("%d%d%d",&x,&y,&z); x=25,y=13,z=10
printf("x+y+z=%d\n",x+y+z); 引号内部分原样输出,,将x+y+z的值48以%d(整型)输出
}
A)x+y+z=48
B)x+y+z=35
C)x+z=35
D)其它情况


8、下面四个选项中,均是合法字符的选项是______。
(A)’\’’(非法) ‘\\’(合法 转义字符) ‘\xf’()
(B)’\’ (非法) ‘\017’(合法) ‘\n’(合法)
(C)’\018’(合法 转义字符) ‘\f’(合法) ‘xab’()
(D)’\0’(合法 转义字符) ‘\101’(合法) ‘xlf’()

1、已知int x=10,y=20,z=30;以下语句执行后x,y,z的值为(B)
if (x>y) 等效
z=x;
x=y;
y=z;



A、x=10,y=20,z=30
B、x=20,y=30,z=30
C、x=20,y=30,z=10
D、x=20,y=30,z=20
在没有加花括号{ }时,if语句仅包含第一个分号的语句


2、程序的输出结果是(A )
#include <stdio.h>
main()
{
int x=1,y=0,a=0,b=0;
switch(x) switch( 1 )执行case 1
{
case 1:
switch(y) switch( 0 ) 执行case 0
{
case 0:a++;break; a++ a(值为1)
case 1:b++;break;
}
case 2:
a++; a(值为2)
b++; b(值为1)
break; 执行break跳出switch(x)
}
printf(“a=%d,b=%d\n”,a,b);
}
A、a=2 , b=1
B、a=1, b=1
C、a=1, b=0
D、a=2, b=


2









3、程序的运行结果是(C)
main( )
{
int a=5;
if (a++>5)
printf(“%d\n”,a);
else
printf(“%d\n”,a--);
}
A、4
B、5

第1页

猜你喜欢

返回顶部