PTA第四章错题

1-3
表达式 (3==x==3) 的值恒为0

对。x的值不确定,一般来讲变量没有附初值的时候,某些IDM就会将变量弄成零。

1-9
if(a=5) 是允许的。对

1-10
如果变量已经正确定义,则执行以下程序段后,x的值不变。

x = 4; 
if (x < 0){ 
    y = -1;
}else if (x = 0){
    y = 0;
}else{ 
    y = 1;
}  

不对。第一个else if中将x赋值为0,要注意这种小陷阱

2-5
要调用数学函数时,在#include命令行中应包含__C__。
(2分)
A.
“stdio.h”
B.
“string.h”
C.
“math.h”
D.
“ctype.h”

2-6
判断 i 和 j 至少有一个值为非0的表达式是__C__。
(2)
A.i!=0 && j!=0
B.i+j!=0
C.i || j
D.i&&j

2-8
为表示“a和b都不等于0”,应使用的C语言表达式是(D)。
(1分)
A.(a!=0) || (b!=0)
B.a || b
C.!(a=0)&&(b!=0)
D.a && b

2-9
设 x、y、t均为int型变量,则执行语句:
x=y=3; t= ++x || ++y; 后,
y的值为__B__。
(2)
A.不定值
B.3
C.4
D.1

2-15
语句if(x=0) y=1; else y=2;与(B )等价。
(1分)
A.if(x!=0) y=2; else y=1;
B.x=0; if(x0) y=2; else y=1;
C.if(x
0) y=1; else y=2;
D.if(x=0) y=2; else y=1;

一个等号是赋值,如果在if语句中就是判断变量的值,非零为真。(个人感觉这样写没有什么意义:if语句主要是判断(可以有多个分支),如果直接赋值,就是先后顺序)
两个等号是判断,在if语句中就是判断等号两边的数值是否一样(相等)。

4-2
写出执行以下程序段后变量的值。请注意,直接填数字,前后不要加空格等任何其他字符。

int x, y;
scanf("%d", &x);
if (x > 0){ 
    y = 1;
}else if (x = 0){
    y = 0;
}else{
   y = -1;
}    

输入10,x的值是10
若输入-10,x的值是0

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

懒回顾,半缘君

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

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

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

打赏作者

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

抵扣说明:

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

余额充值