用C语言输入一个分数表达式,把它计算出来。 比如输入:10/500 -15/4 输出:0.020 -3.25

如题所述

#include <stdio.h>
int main()
{
float a1,b1;
float a2,b2;
float result;
scanf("%f/%f-%f/%f",&a1,&b1,&a2,&b2);
result=a1/b1-a2/b2;
printf("%.3f-%.3f=%.3f\n",a1/b1,a2/b2,result);
return 0;
}

测试用例:

10/500-15/4

0.020-3.750=-3.730

追问

有没有不用%f/%f的方法…

而且抱歉我把原题复制错了

是输入10/500 输出0.020
输入-15/4 输出 -3.25

追答

你要输入的话,你必须要用格式化数据类型符的,C语言的printf和scanf函数都是格式化输出输入函数,必须要加格式化符的,在C++或者Java中可以不需要加,但在C语言是不行的呀。

追问

不是,我的意思是不用这种输入数的时候直接分子/分母的方法…

老师不让用这个方法

追答

那是什么方法,没弄明白你的意思是什么

追问

就是scanf引号里不要有/

虽然这样做简单正确

追答

那是不是这样的:

10 500
0.020

温馨提示:答案为网友推荐,仅供参考
相似回答