int main()
{
int a,b,result;
char operator ;
printf("请输入两个数,输入的两个数用空格分隔\n");
scaf("%d %d",&a,&b);
printf("请指定你要输入的运算+或1表示加,-或2表示减,或3表示乘,/或4表示除!\n") ;
scanf("%c",&operator) ;
switch operator
{
case ‘1’:‘+’
result=a+b;
break ;
case ‘2’:‘-’
result=a-b;
break ;
case ‘3’:‘’
result=ab;
break ;
case ‘4’:‘/’
result=a/b;
break ;
defaut:
break ;
}
printf("%d%c%d=%d\n",a,operator,b,result);
return 0 ;
}
#include<stdioh>
void function(int a, int b)
{
printf("%d add %d = %d\n",a, b, a+b); //加法运算
printf("%d sub %d = %d\n",a, b, a-b); //加法运算
printf("%d mul %d = %d\n",a, b, ab); //乘法运算
printf("%d div %d = %d\n",a, b, a/b); //除法运算
}
int main()
{
int a,b;
printf("please input a and b");
scanf("%d%d",&a,&b);
function(a,b);
return 0;
}
#include<stdioh>
void main()
{
float num1,num2;
char ch;
printf("请输入运算符(+-/):");
scanf("%c",&ch);
printf("请输入第一个数字:");
scanf("%f",&num1);
printf("请输入第二个数字:");
scanf("%f",&num2);
switch(ch)
{
case '+':
printf("%f+%f=%f\n",num1,num2,num1+num2);
break;
case '-':
printf("%f-%f=%f\n",num1,num2,num1-num2);
break;
case '':
printf("%fx%f=%f\n",num1,num2,num1num2);
break;
case '/':
printf("%f/%f=%f\n",num1,num2,num1/num2);
break;
default:
printf("错误输入!\n");
break;
}
}
按照你的程序运行后。。。在输入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("ab=%f",ab);break;
case '/': printf("a/b=%f",a/b);break;
default: break;
}
//为了好看
printf("\n");
}
#include<stdioh>
void
main()
{
int
ls;/定义整形
结合字符判断/
float
as,ss;/定义浮点数/
char
bs[2],c;/定义字符用于收符号/
for(int
i=0;;i++)
/定义i=0
建立死循环
每次循环自加1/
{
printf("请输入数字\n:");
scanf("%f",&as);/得到一个数/
if(i!=0&&ls==1)
{as=as+ss;printf("=%f\n",as);}/判断并非输入的第一个数
并由ls的值判断进行何种运算/
if(i!=0&&ls==2)
{as=ss-as;printf("=%f\n",as);}
if(i!=0&&ls==3)
{as=asss;printf("=%f\n",as);}
if(i!=0&&ls==4)
{as=ss/as;printf("=%f\n",as);}
getchar(c);/收scanf的回车/
for(;;)
{
printf("请输入运算符号\n:");
gets(bs);/得到一个符号/
if(bs[0]=='=')
printf("%f\n",as);/如果bs所得是等号
输出as
并要求用户重新输入符号/
if(bs[0]!='=')
break;/如果不是
跳出死循环/
}
if(bs[0]=='+')
{ls=1;ss=as;}/对符号进行判断
并对ls赋值
新循环会用到/
if(bs[0]=='-')
{ls=2;ss=as;}
if(bs[0]=='')
{ls=3;ss=as;}
if(bs[0]=='/')
{ls=4;ss=as;}
}
}
#include <stdioh>
void main(void)
{
char operation;
float a;
float b;
double result;
printf("Please input the first number:");
scanf("%f", &a);
getchar();
printf("请输入运算符:");
scanf("%c", &operation);
getchar();
printf("Please input the second number:");
scanf("%f", &b);
switch (operation)
{
case '+': result = a + b; break;
case '-': result = a - b; break;
case '': result = a b; break;
case '/': result = a / b; break;
default: break;
}
printf("%f %c %f = %f\n", a, operation, b, result);
}
以上就是关于谁能用C语言给我写一个可以计算加减乘除的程序(只用算整数就OK)全部的内容,包括:谁能用C语言给我写一个可以计算加减乘除的程序(只用算整数就OK)、输入两个整数,进行加减乘除四则运算的c语言程序怎么写啊,拜托了~、c语言,编写程序,要求对两个实数实现简单的加减乘除运算的功能(用switch)语句等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)