电脑网络 手机数码 生活 游戏 体育运动 明星影音 休闲爱好 文化艺术 就业职场 教育科学 健康医疗 商业理财 情感家庭 地区 其他

C语言switch语句错误

2023-11-30 22:47:40


小弟我实在找不出错误了,求大神解答

好评回答

其实,你的编译器提示信息已经很明显了:swtich表达式不是一个整形,switch表达式是一个比较特殊的语句,它要求是一个常量表达式,并且是基本类型,如int,char等。。因此,你程序里面的a是一个float型,因此需要进行一下强制转换,或者直接将a定义为int也是可以的。下面的代码,你可以参考一下:

#include <stdio.h>

void main()
{
    float a,d,c,i;
    scanf("%f",&i);
    if(i>1000衡整接兰000)
        a=15;
    else
        a=i/10000;
    switch((int)a)
    {
        case 0:
            d=10.0;
            break;
        case 1:
            d=10.0;
            break;
        default:     //default语句最好还是加上吧,这是一个习惯
            break;
    }
    c=i*(1.0-d/100);
    printf("%f
",c);
}
相关推荐
  • c语言switch语句的用法问题
  • C语言的switch语句中case后().
  • c语言怎么用switch语句编写四则运算?
  • c语言switch case语句例子是什么?
  • c语言switch case语句例子是什么?
  • c语言中的switch语句,使用时应注意哪些?
  • c语言switch语句中怎样在嵌套switch
  • © 融合问答