| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1020 人关注过本帖
标题:C语言问题(continue,以及 if)
只看楼主 加入收藏
f08865
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2014-10-22
结帖率:0
收藏
已结贴  问题点数:20 回复次数:5 
C语言问题(continue,以及 if)
新手问题,有二。
一,下面continue处,换成return num,为何不能实现?
二、下面if那里,第一个语句要加大括号才能成立,只有一句为何要加大括号?
谢谢

#include <stdio.h>
#define RATE1 0.15;
#define RATE2 0.28;
int main()
{
    double tax,limit,m;
    int num;


     printf("Select the type of marriage:\n");
     printf("1)SINGLE\t2)HOST\t3)MARRIED_SHARE\n4)MARRIED_DIVORCE\t5)quit\n");
   
        
        
        while(1)
        {
            scanf("%d",&num);
        switch(num)
    {
        case 1:limit=17850.0;break;
        case 2:limit=23900.0;break;
        case 3:limit=29750.0;break;
        case 4:limit=14875.0;break;
        case 5:printf("Done!\n");
            return 0;
        default :printf("Please enter a valid figure:\n");
            continue;
    }
        }
        

    printf("Please enter your income:\n");
    scanf("%.2lf",&m);
   

    printf("you have select %d\n",num);
    printf("input the pay:");
    scanf("%lf",&m);
   
    if (m <= limit)
    {    tax = m * RATE1;   
    }

    else
        tax = limit * RATE1 + (m - limit) * RATE2;
   
    printf("tax is %.2lf\n",tax);
   
    return 0;

}
搜索更多相关主题的帖子: continue marriage include double return 
2014-10-22 10:12
wp231957
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:神界
等 级:贵宾
威 望:423
帖 子:13688
专家分:53332
注 册:2012-10-18
收藏
得分:7 
1、只有一句不用加花括号 亦可

2、return 和continue 那根本就不是一个意思  如何能替换呢

DO IT YOURSELF !
2014-10-22 10:19
f08865
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2014-10-22
收藏
得分:0 
回复 2 楼 wp231957
版主你好,
首先if不加花括号
出现error C2181: illegal else without matching if
warning C4552: '*' : operator has no effect; expected operator with side-effect

其次如果想实现如果输入无效返回到switch除了continue还有哪种方法可以实现
谢谢
2014-10-22 10:48
ye姗
Rank: 1
等 级:新手上路
帖 子:3
专家分:7
注 册:2014-10-14
收藏
得分:7 
你好 ,我是新手,请问 while(1)
        {
            scanf("%d",&num);
        switch(num)
    {
        case 1:limit=17850.0;break;
        case 2:limit=23900.0;break;
        case 3:limit=29750.0;break;
        case 4:limit=14875.0;break;
        case 5:printf("Done!\n");
            return 0;
        default :printf("Please enter a valid figure:\n");
            continue;
    }
        }
        当输入1,2,3,4的时候怎么跳出while循环呢?
2014-10-22 22:10
yedekuan
Rank: 2
等 级:论坛游民
帖 子:3
专家分:17
注 册:2012-2-24
收藏
得分:7 
return就跳出函数了
if的问题 tax = m * RATE1; 相当于两个语句所以要加(),用tax = m * 0.15就不需要加了,建议但凡遇到if 都加{};
2014-10-22 22:42
yedekuan
Rank: 2
等 级:论坛游民
帖 子:3
专家分:17
注 册:2012-2-24
收藏
得分:0 
回复 4 楼 ye 姗
输5 return 0时会跳出
2014-10-22 22:43
快速回复:C语言问题(continue,以及 if)
数据加载中...
 
   



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

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