24小时热门版块排行榜    

查看: 244  |  回复: 7
当前主题已经存档。
【悬赏金币】回答本帖问题,作者努力着将赠送您 1 个金币
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

努力着

荣誉版主 (职业作家)

低调隐士

[求助] C程序两问!

我刚刚开始学习C程序,所以遇到两个问题无法解决。求助高手,希望能给出比较详细的解答,多谢了!!!


1,a=5,那么++a*--a的结果是多少?
(答案是25,我运行的结果也是25,为什么呢?我觉得是30)

1,现有如下程序段,此程序段编译有错误,则程序段的错误在于
#include
{int a=30,b=40,c=50,d;
d=a>30?b:c;
switch(d)      {case a:   printf("%d",a);
                    case b:   printf("%d",b);
                    case c:   printf("%d",c);
                    default:  printf("#";}}

A)default:printf("#";这个语句
B)d=a>30?b:c;这个语句
C)case a:   printf("%d",a);   case b:   printf("%d",b)  case c:   printf("%d",c);这三个语句
D)switch(d) 这个语句

(答案是c.后面答案的解释是这样的:“case也是关键字,与其后面的常量表达式合称case语句标号,常量表达式的类型必须与switch后的表达式类型相同”。我不理解这是什么意思,查书也没有查到)

» 猜你喜欢

已阅   关注TA 给TA发消息 送TA红花 TA的回帖

努力着

荣誉版主 (职业作家)

低调隐士

可是a,b,c就是常数啊
3楼2006-09-11 23:42:12
已阅   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 8 个回答

huagong12

木虫 (小有名气)

问题2:case后面判断条件应该是常数,为确定值才对.
2楼2006-09-11 23:36:57
已阅   关注TA 给TA发消息 送TA红花 TA的回帖

huagong12

木虫 (小有名气)


努力着(金币+1):多谢!
在前面是已经定义了他们的值,但是在后面做判断的时候就要求用常数表示啊.a,b,c表示的是变量,后面要用确切的数字才行.
4楼2006-09-11 23:51:57
已阅   关注TA 给TA发消息 送TA红花 TA的回帖

huagong12

木虫 (小有名气)

那你把a,b,c全换成数字看看?应该没什么问题了.
5楼2006-09-11 23:52:49
已阅   关注TA 给TA发消息 送TA红花 TA的回帖
信息提示
请填处理意见