万能的吧友,这是哪里错了
c4droid吧
全部回复
仅看楼主
level 2
殜楹 楼主
#include<stdio.h>
int main(void)
{
double number1=0L;
double number2=0L;
char operation=0;
printf("输入计算表达式\n(只支持加减乘除和余数运算,余数用百分号进行计算)\n");
scanf("%lf %c %lf",&number1,&operation,&number2);
switch(operation)
{case '+':
printf("=%lf\n",number1+number2);
break;
case '-':
printf("=%lf\n",number1-number2);
break;
case '*':
printf("=%lf\n",number1*number2);
break;
case '/':
if (number2 !=0)
printf("=%lf\n",number1/number2);
else
printf("无效!");
break;
case '%':
if ((long)number2 !=0)
printf("=%ld\n",(long)number1%(long)number2);
else
printf("无效!");
break;
default:
printf("输入错误!");
break;
}
return 0;
}
乱输入的时候显示输入错误,但正确输入的时候无反应
2016年02月17日 08点02分 1
level 12
然后通过处理字符串来判断运算
2016年02月17日 09点02分 3
level 12
www.zixue7.com欢迎C语言新手[吐舌]
2016年02月17日 09点02分 4
level 11
#include<stdio.h>
#include"conio.h"
int main(void) {
double number1 = 0;
double number2 = 0;
char operation = 0;
char buff[100];
gets(buff);
sscanf(buff,"%lf%c%lf", &number1, &operation, &number2);
switch (operation) {
case '+':
printf("=%lf\n", number1 + number2);
break;
case '-':
printf("=%lf\n", number1 - number2);
break;
case '*':
printf("=%lf\n", number1 * number2);
break;
case '/':
if (number2 != 0)
printf("=%lf\n", number1 / number2);
else
printf("无效!");
break;
case '%':
if ((long)number2 != 0)
printf("=%ld\n", (long)number1 % (long)number2);
else
printf("无效!");
break;
default:
printf("输入错误!");
break;
}
return 0;
}
2016年02月18日 16点02分 5
1