编程实现以下的功能:输入两个运算数(data1和data2)及一个运算符(op),计算表达式data1 op data2的值
编程实现以下的功能:输入两个运算数(data1和data2)及一个运算符(op),计算表达式data1opdata2的值,其中op可为+,-,*,/。...
编程实现以下的功能:输入两个运算数(data1和data2)及一个运算符(op),计算表达式data1 op data2的值,其中op可为+,-,*,/。
展开
2个回答
展开全部
#include <stdio.h>
int main()
{
char op;
double data1,data2,r;
printf("请输入算术式如3*15\n");
scanf("%lf%c%lf",&data1,&op,&data2);
switch(op)
{
case '+':r=data1+data2;break;
case '-':r=data1-data2;break;
case '*':r=data1*data2;break;
case '/':r=data1/data2;break;
}
printf("%.0lf%c%.0lf=%.2lf\n",data1,op,data2,r);
}
这个是第一题的,楼上的兄弟的有点问题,有的除法会出错,比如1/5,我这里给出的结果保留两位小数。
#include <stdio.h>
int fun(int a,int b)
{
if(a-b>0)
return (a-b);
else
return (b-a);
}
int main()
{
int a=1,b=-5,c;
c=fun(a,b);
printf ("%d\n",c);
}
这个是第二题的
如果还没解决你的问题,可以加我百度HI账号。
int main()
{
char op;
double data1,data2,r;
printf("请输入算术式如3*15\n");
scanf("%lf%c%lf",&data1,&op,&data2);
switch(op)
{
case '+':r=data1+data2;break;
case '-':r=data1-data2;break;
case '*':r=data1*data2;break;
case '/':r=data1/data2;break;
}
printf("%.0lf%c%.0lf=%.2lf\n",data1,op,data2,r);
}
这个是第一题的,楼上的兄弟的有点问题,有的除法会出错,比如1/5,我这里给出的结果保留两位小数。
#include <stdio.h>
int fun(int a,int b)
{
if(a-b>0)
return (a-b);
else
return (b-a);
}
int main()
{
int a=1,b=-5,c;
c=fun(a,b);
printf ("%d\n",c);
}
这个是第二题的
如果还没解决你的问题,可以加我百度HI账号。
展开全部
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
void main()
{
char gs[20] ,s1[10], s2[10], signal;
int LEN, mark, result, A, B, F=1;
printf("input information :eg:-6*9 \n");
scanf("%s", gs);
LEN = strlen(gs);
mark = 0;
if (gs[mark] == '-') mark=1;
while (gs[mark] <= '9' && gs[mark] >= '0')
mark++;
strncpy(s1, gs, mark);
s1[mark] = '\0';
A = atoi(s1);
strncpy(s2, &gs[mark+1], LEN-mark-1);
s2[LEN-mark-1] = '\0';
B = atoi(s2);
signal = gs[mark];
switch (signal)
{
case '+': result = A + B; break;
case '-': result = A - B; break;
case '*': result = A * B; break;
case '/': if (B == 0)
{
printf("ERROR\n");
F=0;
}
else
{
result=A/B;
break;
}
default : printf("ERROR\n");
}
if (F) printf("%d\n",result);
getchar();
}
#include <string.h>
#include <stdlib.h>
void main()
{
char gs[20] ,s1[10], s2[10], signal;
int LEN, mark, result, A, B, F=1;
printf("input information :eg:-6*9 \n");
scanf("%s", gs);
LEN = strlen(gs);
mark = 0;
if (gs[mark] == '-') mark=1;
while (gs[mark] <= '9' && gs[mark] >= '0')
mark++;
strncpy(s1, gs, mark);
s1[mark] = '\0';
A = atoi(s1);
strncpy(s2, &gs[mark+1], LEN-mark-1);
s2[LEN-mark-1] = '\0';
B = atoi(s2);
signal = gs[mark];
switch (signal)
{
case '+': result = A + B; break;
case '-': result = A - B; break;
case '*': result = A * B; break;
case '/': if (B == 0)
{
printf("ERROR\n");
F=0;
}
else
{
result=A/B;
break;
}
default : printf("ERROR\n");
}
if (F) printf("%d\n",result);
getchar();
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询