
c++编写一个完成两个数的四则运算程序,要求运算结果保留2位小数,用户输入时一次将两个数和操作符输入。
求改错#include<stdio.h>doublea,b;doublejiafa(doublea,doubleb){return(a+b);}doublejianfa(...
求改错
#include <stdio.h>
double a , b;
double jiafa(double a,double b)
{
return(a+b);
}
double jianfa(double a,double b)
{
return(a-b);
}
double chengfa(double a,double b)
{
return(a*b);
}
double chufa(double a,double b)
{
return(a/b);
}
int main()
{
double suanshu;
printf("input a and b=");
scanf("%d%d"&a,&b);
switch(suanshu)
{
case 1:printf("a+b=%d\n",jiafa(a,b));
case 2:printf("a-b=%d\n",jianfa(a,b));
case 3:printf("a*b=%d\n",chengfa(a,b));
case 4:printf("a/b=%d\n",chufa(a,b));
default:printf("i can not do it");break;
}
return 0;
}
test.cpp
C:\Documents and Settings\Administrator\test.cpp(25) : error C2296: '&' : illegal, left operand has type 'char [5]'
C:\Documents and Settings\Administrator\test.cpp(25) : error C2297: '&' : illegal, right operand has type 'double'
C:\Documents and Settings\Administrator\test.cpp(27) : error C2450: switch expression of type 'double' is illegal
Integral expression required
C:\Documents and Settings\Administrator\test.cpp(31) : error C2228: left of '.b' must have class/struct/union type
C:\Documents and Settings\Administrator\test.cpp(31) : error C2660: 'chufa' : function does not take 1 parameters
执行 cl.exe 时出错. 展开
#include <stdio.h>
double a , b;
double jiafa(double a,double b)
{
return(a+b);
}
double jianfa(double a,double b)
{
return(a-b);
}
double chengfa(double a,double b)
{
return(a*b);
}
double chufa(double a,double b)
{
return(a/b);
}
int main()
{
double suanshu;
printf("input a and b=");
scanf("%d%d"&a,&b);
switch(suanshu)
{
case 1:printf("a+b=%d\n",jiafa(a,b));
case 2:printf("a-b=%d\n",jianfa(a,b));
case 3:printf("a*b=%d\n",chengfa(a,b));
case 4:printf("a/b=%d\n",chufa(a,b));
default:printf("i can not do it");break;
}
return 0;
}
test.cpp
C:\Documents and Settings\Administrator\test.cpp(25) : error C2296: '&' : illegal, left operand has type 'char [5]'
C:\Documents and Settings\Administrator\test.cpp(25) : error C2297: '&' : illegal, right operand has type 'double'
C:\Documents and Settings\Administrator\test.cpp(27) : error C2450: switch expression of type 'double' is illegal
Integral expression required
C:\Documents and Settings\Administrator\test.cpp(31) : error C2228: left of '.b' must have class/struct/union type
C:\Documents and Settings\Administrator\test.cpp(31) : error C2660: 'chufa' : function does not take 1 parameters
执行 cl.exe 时出错. 展开
4个回答
展开全部
#include <stdio.h>
double a , b;
double jiafa(double a,double b)
{
return(a+b);
}
double jianfa(double a,double b)
{
return(a-b);
}
double chengfa(double a,double b)
{
return(a*b);
}
double chufa(double a,double b)
{
return(a/b);
}
int main()
{
int suanshu=0;
printf("input a and b=");
scanf("%d%d",&a,&b);
switch(suanshu)
{
case 1:printf("a+b=%d\n",jiafa(a,b));
case 2:printf("a-b=%d\n",jianfa(a,b));
case 3:printf("a*b=%d\n",chengfa(a,b));
case 4:printf("a/b=%d\n",chufa(a,b));
default:printf("i can not do it");break;
}
return 0;
}
问题多了,我帮你改了,没有错的,但是逻辑的事你自己看吧
double a , b;
double jiafa(double a,double b)
{
return(a+b);
}
double jianfa(double a,double b)
{
return(a-b);
}
double chengfa(double a,double b)
{
return(a*b);
}
double chufa(double a,double b)
{
return(a/b);
}
int main()
{
int suanshu=0;
printf("input a and b=");
scanf("%d%d",&a,&b);
switch(suanshu)
{
case 1:printf("a+b=%d\n",jiafa(a,b));
case 2:printf("a-b=%d\n",jianfa(a,b));
case 3:printf("a*b=%d\n",chengfa(a,b));
case 4:printf("a/b=%d\n",chufa(a,b));
default:printf("i can not do it");break;
}
return 0;
}
问题多了,我帮你改了,没有错的,但是逻辑的事你自己看吧
展开全部
scanf("%d%d"&a,&b);
真个语句中少个逗号,scanf("%d%d",&a,&b);
真个语句中少个逗号,scanf("%d%d",&a,&b);
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
a,b没有进行声明!,添加 double a,b;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
似乎switch只接受int
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询