[求助]不知道哪错了
main(){
char c;
float a, b, sum;
printf("请输入运算符:");
scanf("%c\n",&c);
printf("请输入运算a和b:");
scanf("%f,%f\n",&a,&b);
switch(c)
{
case(+):sum=a+b;break;
case(-):sum=a-b;break;
case(*):sum=a*b;break;
case(\):sum=a\b;break;
default:break;
}
printf("%f\n",sum);
}
不知道哪错了
有人发的
我把我改完的发这来了还是错的
搜索更多相关的解决方案:
default
----------------解决方案--------------------------------------------------------
main()
{
char c;
float a, b, sum;
printf("请输入运算符:");
scanf("%c",&c);
printf("请输入运算a和b:");
scanf("%f%*c%f",&a,&b);
switch(c)
{
case '+':sum=a+b;break;
case '-':sum=a-b;break;
case '*':sum=a*b;break;
case '/':sum=a/b;break;
default:break;
}
printf("%f\n",sum);
getch();
}
请您仔细对照您的程序.
----------------解决方案--------------------------------------------------------
什么条件语句用()什么条件语句用''啊
斑竹告诉下好吗
----------------解决方案--------------------------------------------------------
''表示引用的是字符.跟条件语句无关.
您可以先去看下基础书,相信书上的介绍会使您更明白些.
----------------解决方案--------------------------------------------------------
好想没有用()的吧
一般字符型 是用 ‘’
----------------解决方案--------------------------------------------------------
您的程序错误还不止那个,
输入语句的格式应该尽量放宽,而不是加严.
----------------解决方案--------------------------------------------------------
以下是引用soft_wind在2006-8-26 20:50:24的发言:
main()
{
char c;
float a, b, sum;
printf("请输入运算符:");
scanf("%c",&c);
printf("请输入运算a和b:");
scanf("%f%*c%f",&a,&b);
switch(c)
{
case '+':sum=a+b;break;
case '-':sum=a-b;break;
case '*':sum=a*b;break;
case '/':sum=a/b;break;
default:break;
}
printf("%f\n",sum);
getch();
}
请您仔细对照您的程序.
这个是干什么的啊?没看懂!
----------------解决方案--------------------------------------------------------
跳过一个字符不读。
比如您输入1.3&2.5
&可以被跳过而两个数就可被正确读入.
----------------解决方案--------------------------------------------------------
scanf("%f,%f\n",&a,&b);
怕怕这种写法。
老师说这样写是自找麻烦。。
----------------解决方案--------------------------------------------------------
“*”表示那个输入项读入后不赋予相应的变量,也就是跳过这个输入值。 如 scanf("%d %*d %d",&a,&b);当输入为:1 2 3 时,把1赋予a,2被跳过,3赋予b。
照斑斑的样子应该输入 a*(任一运算符就是了)b
----------------解决方案--------------------------------------------------------