利用C语言完成迷你计算器程序编写
答案:4 悬赏:30 手机版
解决时间 2021-11-14 19:05
- 提问者网友:寂寞梧桐
- 2021-11-14 01:47
利用C语言完成迷你计算器程序编写
最佳答案
- 五星知识达人网友:行路难
- 2021-11-14 03:05
图片说明:
红圈是输入的两个数字
篮圈是输入的运算符号
黄圈是运算后计算结果
下面是完整的代码,不知能不能满足你,可以私信联系
#include
#include
#include
int main()
{
int y;
double shu1=0;
double shu2=0;
char fuhao;
do
{
printf("
迷你计算器
");
printf(" 1.数据输入
");
printf(" 2.四则运算
");
printf(" 0.退 出
");
printf(" 请选择(0-2)
");
scanf("%d",&y);
getchar();
switch(y)
{
case 1:
shu1=0;
shu2=0;
fuhao=0;
printf("请输入两个数字,空格分开:");
scanf("%lf %lf",&shu1,&shu2);
printf("
输入完成: %lf %lf
",shu1,shu2);
getchar();
break;
case 2:
printf("
请输入运算符号(+ - * /):");
scanf("%c",&fuhao);
getchar();
if(fuhao == '+')
printf("
加法,运算结果:%lf
",shu1+shu2);
if(fuhao == '-')
printf("
减法,运算结果:%lf
",shu1-shu2);
if(fuhao == '*')
printf("
乘法,运算结果:%lf
",shu1*shu2);
if(fuhao == '/')
printf("
除法,运算结果:%lf
",shu1/shu2);
break;
case 0:
printf(" 谢谢使用
");
exit(1);
default:
printf(" 输入错误,请重新输入
");
}
}
while (y>0);
}
红圈是输入的两个数字
篮圈是输入的运算符号
黄圈是运算后计算结果
下面是完整的代码,不知能不能满足你,可以私信联系
#include
#include
#include
int main()
{
int y;
double shu1=0;
double shu2=0;
char fuhao;
do
{
printf("
迷你计算器
");
printf(" 1.数据输入
");
printf(" 2.四则运算
");
printf(" 0.退 出
");
printf(" 请选择(0-2)
");
scanf("%d",&y);
getchar();
switch(y)
{
case 1:
shu1=0;
shu2=0;
fuhao=0;
printf("请输入两个数字,空格分开:");
scanf("%lf %lf",&shu1,&shu2);
printf("
输入完成: %lf %lf
",shu1,shu2);
getchar();
break;
case 2:
printf("
请输入运算符号(+ - * /):");
scanf("%c",&fuhao);
getchar();
if(fuhao == '+')
printf("
加法,运算结果:%lf
",shu1+shu2);
if(fuhao == '-')
printf("
减法,运算结果:%lf
",shu1-shu2);
if(fuhao == '*')
printf("
乘法,运算结果:%lf
",shu1*shu2);
if(fuhao == '/')
printf("
除法,运算结果:%lf
",shu1/shu2);
break;
case 0:
printf(" 谢谢使用
");
exit(1);
default:
printf(" 输入错误,请重新输入
");
}
}
while (y>0);
}
全部回答
- 1楼网友:轮獄道
- 2021-11-14 05:40
去CSDN上找
- 2楼网友:玩家
- 2021-11-14 05:04
float cal(float a,char c,float b)
{
float m;
switch(c)
{
case'*':
m=a*b;
break;
case'/':
m=a/b;
break;
}
return m;
}
void main()
{
float x[10000]={0};float fsum=0;
char y[10000]={0};
int i=0,j,k,l,r;
do
{i++;
scanf("%f%c",&x[i],&y[i]);
}
while(y[i]!='=');
for(r=1;r<=i+5;r++)
for (j=1;j<=i+5;j++)
{
if(y[j]=='*' || y[j]=='/')
{
x[j]=cal(x[j],y[j],x[j+1]);
for(k=j+1;k<=i+1;k++)
{
y[k-1]=y[k];
x[k]=x[k+1];
}
y[k-1]=y[k];
i--;
}
}
fsum=x[1];
for (l=1;l<=i;l++)
{
if(y[l]=='+')
fsum=fsum+x[l+1];
if(y[l]=='-')
fsum=fsum-x[l+1];
}
printf("%f",fsum);
}
嘛,能采纳是最好啦,毕竟有分哎
- 3楼网友:长青诗
- 2021-11-14 04:12
菜单可以自己写,这个是我写的代码(超复杂版,比较完美),c++写的,改为c语言主要把输入输出改下还有头文件就行了,不懂可以问哦
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯