| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1068 人关注过本帖
标题:菜鸟:求程序中的错误
只看楼主 加入收藏
南国飘雪
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2012-11-2
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:21 
菜鸟:求程序中的错误
菜鸟,目前自学C程序设计,学到循环那儿。
我想搞的是简单计算加减乘除的程序,
#include <stdio.h>
int main()
{
    float a,b;
    char ch;
    while(1);
    {
        printf("please enter:");
        scanf("%f%c%f",&a,&ch,&b);
        switch(ch)
        {
        case:'+':printf("a+b=%f\n",a+b);
        case:'-':printf("a-b=%f\n",a-b);
        case:'*':printf("a*b=%f\n",a*b);
        case:'/':printf("a/b=%f\n",a/b);
        default:printf("error\n");
        }
        a=0;
        b=0;
        ch=0;
    }
    return 0;
}

我想我的错误应该是很多,求指导。

搜索更多相关主题的帖子: default C程序设计 include please 
2012-11-22 17:15
wp231957
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:神界
等 级:贵宾
威 望:423
帖 子:13688
专家分:53332
注 册:2012-10-18
收藏
得分:4 
case 后面 咋还有冒号呢


DO IT YOURSELF !
2012-11-22 17:18
南国飘雪
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2012-11-2
收藏
得分:0 
回复 2楼 wp231957
书上有诶
2012-11-22 17:21
南国飘雪
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2012-11-2
收藏
得分:0 
回复 2楼 wp231957
搞错了,谢谢
2012-11-22 17:21
南国飘雪
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2012-11-2
收藏
得分:0 
回复 2楼 wp231957
case后没有冒号,还有别的么
2012-11-22 17:22
jk_love
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:1
帖 子:196
专家分:965
注 册:2012-10-22
收藏
得分:4 
while后面分号,明显不对
看看书,注意细节
2012-11-22 17:23
wp231957
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:神界
等 级:贵宾
威 望:423
帖 子:13688
专家分:53332
注 册:2012-10-18
收藏
得分:0 
晕死,while(1);后面的冒号 没看出来(眼睛不好使),调试半天才发现
肯定是死循环  无退出循环条件

DO IT YOURSELF !
2012-11-22 17:29
wp231957
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:神界
等 级:贵宾
威 望:423
帖 子:13688
专家分:53332
注 册:2012-10-18
收藏
得分:0 
要是我没记错,每个case后面一定要跟一个BREAK;

DO IT YOURSELF !
2012-11-22 17:36
yaobao
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:蒙面侠
威 望:4
帖 子:1854
专家分:4121
注 册:2012-10-25
收藏
得分:4 
我也是自学的菜鸟。。。
#include <stdio.h>
int main()  这个int好像没用
{
    float a,b;
    char ch;
    while(1);   不要分号不然空循环了
    {
        printf("please enter:");
        scanf("%f%c%f",&a,&ch,&b);
        switch(ch)
        {
        case:'+':printf("a+b=%f\n",a+b);貌似case后面没符号,每个case语句后加break;不然会顺序执行下去
        case:'-':printf("a-b=%f\n",a-b);
        case:'*':printf("a*b=%f\n",a*b);
        case:'/':printf("a/b=%f\n",a/b);
        default:printf("error\n");
        }
        a=0;  貌似不需要这里
        b=0;
        ch=0;
    }
    return 0;
}


认认真真的学习,踏踏实实的走路:戒骄戒躁!!!
2012-11-22 17:47
zxd543
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:内蒙古
等 级:贵宾
威 望:17
帖 子:453
专家分:2351
注 册:2012-4-12
收藏
得分:4 
#include <stdio.h>
int main()
{
    float a,b;
    char ch;
    while(1)
    {
        printf("please enter:\n");
        scanf("%f%c%f",&a,&ch,&b);
        switch(ch)
        {
        case '+':
            printf("a+b=%f\n",a+b);
            break;
        case'-':
            printf("a-b=%f\n",a-b);
            break;
        case '*':
            printf("a*b=%f\n",a*b);
            break;
        case '/':
            printf("a/b=%f\n",a/b);
            break;
        default:
            printf("error\n");
            break;
        }
        a=0;
        b=0;
        ch=0;
    }
    return 0;
}


马马虎虎 不吝赐教 我是路过蹭分滴
2012-11-23 00:34
快速回复:菜鸟:求程序中的错误
数据加载中...
 
   



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

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