c语言 计算器

来源:百度知道 编辑:UC知道 时间:2024/05/15 10:50:42
麻烦帮我看下,我错在哪里了,问什么一直是0?至于好的程序我也看懂,但我还是分不清我错在哪了
main()
{
float n,m,q;
char o;
printf("o is:*,+,-,/\n");
printf("please input n:");
scanf("%u",&n);
printf("please input m:");
scanf("%u",&m);
printf("please input o:");
o=getch();
switch(o)
{
case '+':q=n+m;break;
case '-':q=n-m;break;
case '*':q=n*m;break;
case '/':q=n/m;break;
default:printf("date input error!\n");
}
printf("n %c m =%f\n", o,q);
return 0;
}

o=getch();
语句出错,应是o=getchar();
如果有字符输入函数,那在主函数上面必须有头函数#include "stdio.h"
scanf("%u",&n);这条语句中的输入格式字符串不对,n定义的是实型,你怎么写成%u,应是scanf("%f",&n).
下面我把正确的写给你,编译通过的
main()
{
float n,m,q;
char o;
printf("n ? m:");
scanf("%f%c%f",&n,&o,&m);
switch(o)
{
case '+':q=n+m;break;
case '-':q=n-m;break;
case '*':q=n*m;break;
case '/':q=n/m;break;
default:printf("date input error!\n");
}
printf("n %c m =%f\n", o,q);
}

就一个问题
#include<stdio.h>
#include<conio.h>
main()
{
float n,m,q;
char o;
printf("o is:*,+,-,/\n");
printf("please input n:");
scanf("%f",&n); //这里有错
printf("please input m:");
scanf("%f",&m); //这里有错
printf("please input o