C语言实现加减乘除运算

输入两个数进行加减乘除运算,循环体(用for循环并且带判断的).比如输入Y继续下一组运算输入N结束运算。本人while和dowhile的都会但是for循环带判断的实在不会 求大神帮忙改改! 这是自己写的while的 求大神帮忙改成for循环体系带判断谢谢!!!!!

按照你的程序运行后。。。在输入c值的时候
程序直接结束了。。。还有就是每个case语句后记着加上break跳出不过也有不过根据具体需要也可以不加break;但是你的这个程序需要加上break;
原因是:回车符也是字符,所以你按回后,程序以为是输入了c的值了,而在输入b值成功是因为
回车符不是数字形式的。
以下是我改过的程序,编译运行都很好的

#include
#include

void main()
{
float a,b;
char c;
printf("\n input a:");
scanf("%f",&a);
printf("\n input b:");
scanf("%f",&b);
//这种情况经常遇到。。。。输入完后回车被下一个scanf("%c",&c)捕获了。
//因为回车符也是字符,所以你按回车后,程序以为是输入了c的值了
//所以加上下面一行,把回车符取走就可以了。。。。
getchar();
printf("\n input c:");
scanf("%c",&c);
//printf("\n%c",c);
switch(c)
{
case '+': printf("a+b=%f",a+b);break;
case '-': printf("a-b=%f",a-b);break;
case '*': printf("a*b=%f",a*b);break;
case '/': printf("a/b=%f",a/b);break;
default: break;
}
//为了好看
printf("\n");
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-08-17
#include<stdio.h>
void
main(){
float
a,b,c;
char
op;
char
y='y';
for(;y=='y';){
printf("多功能*********");
scanf("%f
%c
%f",&a,&op,&b);
switch(op){
********//这里我就不写了
}
printf("计算结果=****");
printf("是否继续?Y/N");
scanf("%c",&y);
}
return
0;
}
相似回答
大家正在搜