用c语言编写一个简单计算器程序

输入格式未data1opdata2.data1和data2为参加运算两个数,op为预算符号只能取+、-、*、/求助谢谢。。。用swich语句和if。。。还未学循环... 输入格式未data1 op data2. data1和data2为参加运算两个数,op为预算符号只能取+、-、*、/ 求助谢谢。。。用swich语句和if。。。还未学循环 展开
 我来答
问明6E
高粉答主

2019-06-12 · 每个回答都超有意思的
知道答主
回答量:279
采纳率:100%
帮助的人:12.4万
展开全部

#include<stdio.h>//计算器

voidmenu()//自定义的菜单界面

printf("--------------------\n");

printf("请输入你的选择\n");

printf("1.+\n");

printf("2.-\n");

printf("3.*\n");

printf("4./\n");

printf("--------------------\n");

intmain()

inti=0;

intj=0;

intnum=0;//计算结果存放在nun

intselect=0;//选择的选项存放在select

do//do-while先执行再判断循环条件,即可实现重复计算功能

menu();//打印出菜单界面

scanf("%d",&select);//输入你的选项

printf("请输入计算值:");

scanf("%d%d",&i,&j);//输入要计算的数值

switch(select)

case1:

printf("%d+%d=%d\n",i,j,num=i+j);//实现加法功能

break;

case2:

printf("%d-%d=%d\n",i,j,num=i-j);//实现减法功能

break;

case3:

printf("%d*%d=%d\n",i,j,num=i*j);//实现乘法功能

break;

case4:

printf("%d-%d=%d\n",i,j,num=i/j);//实现除法功能

break;

default:

printf("输入有误重新选择");

break;

}while(select);

return0;

运行结果:

扩展资料:

return表示把程序流程从被调函数转向主调函数并把表达式的值带回主调函数,实现函数值的返回,返回时可附带一个返回值,由return后面的参数指定。

return通常是必要的,因为函数调用的时候计算结果通常是通过返回值带出的。如果函数执行不需要返回计算结果,也经常需要返回一个状态码来表示函数执行的顺利与否(-1和0就是最常用的状态码),主调函数可以通过返回值判断被调函数的执行情况。

灌奶茶9P
2021-03-16
知道答主
回答量:2
采纳率:0%
帮助的人:952
展开全部
#include <stdio.h>
main()
{
char ch;
int num1,num2;
printf("\t运算器功能菜单\t\n");
printf("----------------------------------\n");
printf("\t1:加法\t\n");
printf("\t2:减法\t\n");
printf("\t3:乘法\t\n");
printf("\t4:除法\t\n");
printf("\t0:退出运算器\t\n");
printf("----------------------------------\n");
printf("\t选择运算(1-4,0):");
//输入数据
ch = getchar();
printf("\n");
printf("----------------------------------\n");
printf("\t输入运算数:\n");
printf("\t第一个数:");
scanf("%d",&num1);
printf("\t第二个数:");
scanf("%d",&num2);
printf("----------------------------------\n");
printf("\t运算结果:");
if(ch=='1')
printf("%d + %d = %d",num1,num2,num1+num2);
else if(ch=='2')
printf("%d - %d = %d",num1,num2,num1-num2);
else if(ch=='3')
printf("%d * %d = %d",num1,num2,num1*num2);
else if(ch=='4')
printf("%d / %d = %d",num1,num2,1.0*num1/num2);
else if(ch=='0')
printf("结束");
printf("\n");
printf("----------------------------------\n");
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
推荐于2016-05-01
展开全部
double a,b;
char c;
scanf("%lf%c%lf",&a,&c,&b);
switch(c)
{case '+':printf("%g%c%g=%g",a,c,b,a+b);break;
case '-':printf("%g%c%g=%g",a,c,b,a-b);break;
case '*':printf("%g%c%g=%g",a,c,b,a*b);break;
case '/':b?printf("%g%c%g=%g",a,c,b,a/b):puts("error");break;
default:printf("error");break;
}
更多追问追答
追问
怎么排除除数为0的情况??
追答
case '/':b?printf("%g%c%g=%g",a,c,b,a/b):puts("error");这不写了吗?除数为零,输出error
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式