| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 447 人关注过本帖
标题:新手求教,帮忙看看代码哪里有问题
取消只看楼主 加入收藏
cwde
Rank: 1
等 级:新手上路
帖 子:17
专家分:0
注 册:2011-3-31
结帖率:33.33%
收藏
已结贴  问题点数:20 回复次数:1 
新手求教,帮忙看看代码哪里有问题
题目大致是先选择输入类别,然后再输入数据计算金额,写完了代码后发现一个问题,每次运行完指定的case语句后,接着就运行了default语句,也就是说当中的break语句并没有起到跳出程序的作用,这是为啥呀?本人刚学C,大家来帮忙看看,多谢啊

#include "stdio.h"
int main(void)
{
char ch; int n,m;
printf ("shuruzhonglei a,b\n");
while ((ch=getchar())!='#')
{ switch (ch)
{case 'a':
{ printf ("enter your money\n");
scanf ("%d",&n);
if (n>17850)
m=(n-17850)*28/100+17850*15/100;
else
m=n*15/100;
printf ("your money is %d\n",m);}
        break;
case 'b':
{ printf ("enter your money\n");
scanf ("%d",&n);
if (n>23900)
m=(n-23900)*28/100+23900*15/100;
else
m=n*15/100;
printf ("your money is %d\n",m);}
           break;

        default : printf("error");
}

}
return (0);}
搜索更多相关主题的帖子: money 
2011-03-31 22:59
cwde
Rank: 1
等 级:新手上路
帖 子:17
专家分:0
注 册:2011-3-31
收藏
得分:0 
3楼的朋友,看了你的代码,我找到我的问题了,在每个case语句中的scanf后加上getchar();break语句就起跳出的作用了,只是我不明白为什么要加上getchar();这个语句呢?各位大师能不能帮我解释一下呀...???谢谢啊
2011-04-01 22:04
快速回复:新手求教,帮忙看看代码哪里有问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.031612 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved