C语言,选什么,求过程
发布网友
发布时间:2022-11-04 23:41
我来回答
共1个回答
热心网友
时间:2023-10-03 06:22
答案选B,即输出3,2,-1。
分析:
这题考查后缀自减和前缀自加运算符,以及逻辑与运算符 &&。
后缀 z--,是先使用 z 的值,再 -1。
前缀 ++x,是先 +1,再使用 x 的值。
逻辑与运算符 &&,只有其两边的条件都为真时,总的结果才为真。
当 && 左边的条件为假时,就不会计算其右边的表达式(重点)。因为只有两个条件都为真时,结果才为真,其他情况都为假,所以左边的条件为假,结果肯定为假,就没有必要耗时去判断其右边的结果。
运算过程(x = 0, y = 5, z = 3):
判断 z > 0,即 3 > 0 为真;执行 ++x,此时 x = 1;判断 x < 5,即 1 < 5 为真。两个条件都为真,结果就为真。执行 z--,此时 z = 2。
执行循环体 y = y - 1,即 y = 5 - 1,此时 y = 4。
判断 z > 0,即 2 > 0 为真;执行 ++x,此时 x = 2;判断 x < 5,即 2 < 5 为真。两个条件都为真,结果就为真。执行 z--,此时 z = 1。
执行循环体 y = y - 1,即 y = 4 - 1,此时 y = 3。
判断 z > 0,即 1 > 0 为真;执行 ++x,此时 x = 3;判断 x < 5,即 3 < 5 为真。两个条件都为真,结果就为真。执行 z--,此时 z = 0。
执行循环体 y = y - 1,即 y = 3 - 1,此时 y = 2。
判断 z > 0,即 0 > 0 为假,执行 z--,此时 z = -1,退出循环。
输出 x、y、z,结果为:3,2,-1。
测试结果
C语言,求过程,选什么?
当 b = 1、4、7 时,b % 3 == 1 就为真。运算过程:a = 1,b = 1,b % 3 == 1 为真,执行 b += 3,此时 b = 4。a = 2,b = 4,b % 3 == 1 为真,执行 b += 3,此时 b = 7。a = 3,b = 7,b % 3 == 1 为真,执行 b += 3,此时 b = 10。a...
C语言,选什么,求过程
运算过程(x = 0, y = 5, z = 3):判断 z > 0,即 3 > 0 为真;执行 ++x,此时 x = 1;判断 x < 5,即 1 < 5 为真。两个条件都为真,结果就为真。执行 z--,此时 z = 2。执行循环体 y = y - 1,即 y = 5 - 1,此时 y = 4。判断 z > 0,即 2 > 0 ...
C语言,求过程,选啥?
答案: D 要明白两个要点 while循环 和switch语句。过程如下:当k=5,执行default: break;此时n变为0 k=4,执行default: break;此时n变为0 k=3,执行case3: n+= k;即n=n+k=3 k=2,先执行case2: 再执行case3: n+=k;即n=3+2=5 k=1,执行case1: n+= k; case2: case3: ...
C语言,选啥,求过程。
答案选A,即输出“011122”。分析:switch 一般常与 break 结合使用,不过本题并没有,主要是考查对 switch 的了解程度。当所有 case 都不成立时,执行 default 的语句(如果有就执行)。当某一个 case 成立时,就会执行该 case 的语句,在没有遇到 break 之前,其后的语句都会被执行(包括所有 case...
C语言,求过程,选啥?
选择 A 输入ch != ‘N’时一直循环;所以CD不正确 B中ch=getchar()!=′N′等价于 ch=(getchar()!=′N’),由于==的优先级高于=,相当于将getchar()!=′N的值赋给ch,所以不正确!望采纳!
C语言,求过程?
很明显,a[2] = 14 是偶数,所以共循环了两次,k 的值也累加了两次,所以 k 的值为 11 + 13 = 24,答案选 D。运算过程:i = 0,k = 0,判断(i < 7 && p[i] % 2),0 < 7 为真,11 % 2 也为真,执行 k += p[i],i++,此时 k = 11,i = 1。i = 1,k = ...
C语言,求过程。
运算过程:i = 0,i < 3 为真,执行 printf 输出,那么 t[2-i][i] 相当于 t[2][0],t[2][0] 的值为 3。i = 1,i < 3 为真,执行 printf 输出,那么 t[2-i][i] 相当于 t[1][1],t[1][1] 的值为 5。i = 2,i < 3 为真,执行 printf 输出,那么 t[2-i][...
C语言,求过程
答案选A,即输出“2空格0空格”。分析:这题有两个自减运算符,一个是前缀,一个是后缀。后缀,n--,是先使用 n 的值,再 -1。即先判断 n 的值,再 - 1。前缀,--n,是先 -1,再使用 n 的值。即 n 先 -1,再输出 n 的值。运算过程(n 初始为 4):while(n--),n = 4,...
c语言程序选择题求解答过程
选B 第一遍执行, y=8-1=7,x=2。y的值不满足while(y--<0)的条件,所以循环结束。y--=7-1=6
C语言求过程
答案选B,即输出 852。分析:根据语句【if(y%3==0)】,说明当 y 是 3 的倍数时,就会执行【printf("%d",--y);】语句。--y 是先让 y - 1,最后再输出 y 的值。在循环中,y 的值从 9 开始,条件是 y > 0,那么这些数中,是 3 的倍数的整数有 9、6、3。因为最后是输出 y - ...