C程序设计基础及实验 习题06(Part2)复习

判断题 

1-1 表达式 !x 等价于x != 1。F 应该为x!=0

1-2 运算符“+”不能作为单目运算符。 F 存在单目+ 例如+65,表示正的65

1-3 s(s-a)(s-b)(s-c) 是合法的C语言表达式。 F 记得一定一定要带*

1-4 表达式 !!6的值是6。F 是1呐

1-5 表达式 ~(~2<<1)的值是5。 T 2是0010,~2是1101,~2<<1是1010, ~(~2<<1)是0101,即5

1-6 表达式 !(x>0||y>0) 等价于!(x>0)&&!(y>0)。T 可联系摩根定律

1-7 若表达式sizeof(int)的值为4,则int类型数据可以表示的最大整数为2^31−1。 T

1-8 表达式 (z=0, (x=2)||(z=1),z) 的值是1。F 结果是0,第一个式子给z赋值为0,第二个式子是或语句,x赋值为2,此时或语句判断为真,所以不执行z=1,最终括号表达式输出最后一个式子的值0

1-9 C 语言的运算符只有单目运算符和双目运算符两种。F 醒醒,三目计算符也存在的啊

1-10 在所有的关系运算符(>=、>、==、!=、<=、<)中,优先级最低的运算符是“==、!=”。T 大小关系优先于相等关系

单选题

2-1 已知字符'c' 的ASCII码为99,语句printf ("%d,%c",'c','c'+1); 的输出为( )。

A.99,c B.99,100 C.99,d D.语句不合法

选择C

2-2 阅读以下程序段,如果从键盘上输入1234567<回车>,则程序的运行结果是( )。

int i,j;
scanf("%3d%2d",&i,&j);
printf("i = %d, j = %d\n",i,j);

A.i = 123, j = 4567 B.i = 1234, j = 567 C.i = 1, j = 2 D.i = 123, j = 45

选择D,记得Part1有原题

2-3 阅读以下程序段,如果从键盘上输入abc<回车>,则程序的运行结果是( )。

char ch;

scanf("%3c",&ch);
printf("%c",ch);

A.a B.b C.c D.语法出错

选择A,同上

2-4 已知字母A的ASCII码为十进制的65,下面程序段的输出是( )。

char ch1,ch2;
ch1='A'+'5'-'3';
ch2='A'+'6'-'3';
printf("%d,%c\n",ch1,ch2);

A.67,D B.B,C C.C,D D.不确定的值

选择A,同上

2-5 设整型变量a=2,则执行下列语句后,浮点型变量b的值不为0.5的是( )。

A.b=1.0/a; B.b=(float) (1/a); C.b=1/(float)a; D.b=1/(a*1.0);

选择B,结果为0

2-6 若" int n; float f=13.8; ",则执行"n=(int)f%3"后,n的值是( )。

A.1 B.4 C.4.333333 D.4.6

选择A,先执行(int)f=13,再13%3=1

2-7 下面( )表达式的值为4。

A.11/3 B.11.0/3 C.(float)11/3 D.(int)(11.0/3+0.5)

选择D,输出结果如下

2-8  若有定义int x=3, y=2和float a=2.5, b=3.5,则表达式:(x+y)%2+(int)a/(int)b的值是( )。

A.0 B. 2 C.1.5 D.1

选择D,(int)a=2,(int)b=3,2/3=0,(3+2)%2=1

2-9 计算变量x(x大于1)整数部分位数的表达式,可以写作( )。

A.(int)log10(x) B.log10(x) C.log10(x)+1 D.(int)log10(x)+1

选择D,常见的取整数位数的公式

2-10 C语言中,关系表达式和逻辑表达式的值是( )。

A.0 B.1 C.0 或 1 D.'T' 或 'F'

选择C

2-11 判断变量x、y中有且只有1个值为0的表达式为( )。

A.!(x*y)&&x+y B.(x*y)&&x+y C.x*y==0 D.x==0&&y!=0

选择A

2-12 若变量已经被正确定义,为表示“变量x和y都能被3整除”,应使用的C表达式是( )。

A.(x%3 != 0) || (y%3 != 0)

B.(x%3 != 0) && (y%3 != 0)

C.(x%3 == 0) || (y%3 == 0)

D.(x%3 == 0) && (y%3 == 0)

选择D

2-13 为表示“a和b都不等于0”,应使用的C语言表达式是()。

A.(a!=0) || (b!=0)

B.a || b

C.!(a=0)&&(b!=0)

D.a && b

选择D(这道题不知道为啥脑抽选了C,也许是把感叹号看到a后面了)

2-14 执行下面程序中的输出语句后,输出结果是( )。

int a;
printf("%d\n",(a=3*5,a*4,a+5));

A.65 B.20 C.15 D.10

选择B,第一个式子a=15,第二个式子没有对a赋值,若要赋值应为a=a*4,第三个式子计算得20

多选题

3-1 

C语言里,下列选项正确的赋值语句是( )。

A.t += 1; B.n1 = (n2 = (n3 = 0)); C.k = i = j; D.a = b + c = 1;

选择ABC,D这个怎么看都是有问题的吧

填空题

4-1 

写出下列关系表达式的运行结果。
已知:变量的定义和初始化如下

char ch = 'w';
int a = 2, b = 3, c = 1, d, x=10;
printf("%d", a > b == c);

0

printf("%d", d = a > b);

 0

printf("%d", ch >'a' + 1);

1

printf("%d", d = a + b > c);

1

printf("%d", b – 1 == a != c);

0

printf("%d", 3 <= x <= 5);

 4-2 

写出下列逻辑表达式的运行结果。

已知:变量的定义和初始化如下

char ch = 'w';
int a = 2, b = 0, c = 0;
float x = 3.0; 
printf("%d", a && b);

0

printf("%d", a || b && c);

1

printf("%d", !a && b);

0

printf("%d", a||3+10&&2);

1

printf("%d", !(x == 2));

1

printf("%d", !x == 2);

0

printf("%d", ch || b);

1

 程序填空题

6-4 写出满足条件的关系表达式或逻辑表达式[5]

写出满足下列条件的C表达式。

① x 为零。 x==0

② x 和 y 不同时为零。x!=0||y!=0

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

北欧海盐

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值