C语言求解 ,执行下面程序的输出结果为 # include<stdio.h> void main() {

# include<stdio.h>
void main() {
int x=5,y=0;
switch(2 * x+3) {
case 4: y+=x: break;
case 7: y+=2 * x+1; break;
case 10: y+=3 * x; break;
default: y+=x-1

void main 这个写法是错过的,这段程序在ide 编辑器下运行是会报错的,switch 函数也缺少已一个 } 同样会报错,在程序中case:4 后面y+=X 后面是 分号 而不是 冒号,报错。

将上面的错误全部修改为正确之后,本程序没有不会输出结果,只是运行了,因为没有写输出函数,加上输出函数之后,输出的结果是 4,x=5;2*5+3等于13,执行default 函数 x-1等于 4,y=0+4=4。来自:求助得到的回答
温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-03-31
在c语言中0和1判断假真。
但实际判断中,只要是不为零的数去判断的话就是真的。
所以b=-1&&-1相当于b=1&&1
而1为真所以1&&1为真,真即为1,1赋值给了b,所以b==1
第2个回答  2017-10-24
swich语句中,2*x+3结果为13,没有对应的case语句,所以进入到default中,y最后的值为4
第3个回答  2017-10-23
发完整出来
相似回答