广州到无锡大巴:帮我答对分全给你

来源:百度文库 编辑:中科新闻网 时间:2024/04/29 19:16:18
帮我答对分全给你
悬赏分:100 - 离问题结束还有 14 天 23 小时
调试下面的程序,改正错误,说明该程序的正确输出结果及功能。

#include <stdio.h>
Main()
{
float x=10,y=5;
switch(x)
case 1 x++;
deault x+=y;
case “2” y- -;
case 3: x- -;
printf(“x=%d,y=%d”,x,y)
}

首先float x=10,y=5;switch(x);
如果使用,有些编译器不能通过,改为int x=10,y=5
首先写法不对:以下改正
int x=10,y=5;
switch (x)//错误,不能使用float
{ //switch需要大括号
case 1: x++;//冒号,是否需要break?
default: x+=y;//default拼成了deault 错误
case 2: y--;
case 3: x--;
} //switch需要大括号
printf(“x=%d,y=%d”,x,y);

return 0;

如果没有break;那么上面输出:"x=14,y=4

1.错误“default”以及其它书写错误同意楼上兄弟的,但switch() 函数参数可以为单精度型,编译时自动转换为整形。
2.case "2" 是正确的,“2”自动转换为ascii码值。
3.本程序中x值没有符合case条件,执行“default”句,输出结果应为:
x=15,y=5

#include <stdio.h>
Main()
{
float x=10,y=5;
switch(x)
case "1" x++;
deault x+=y;
case "2" y--;
case "3" x--;
printf("x=%d,y=%d",x,y)
}
如果选择1,则输出:11,5
如果选择2,则输出:10,4
如果选择3,则输出:9,5
否则输出:10,11

哎哟,我的斜天,这个有语法错误,正确答案,出现一串错误!