C语言输入n个数进行分数求和,同时求出最简形式
时间: 2024-04-17 17:26:42 浏览: 77
一个简单求和的C语言程序
你好!对于你的问题,我可以给你提供一个示例代码来解决它。
```c
#include <stdio.h>
// 求最大公约数
int gcd(int a, int b) {
if (b == 0) {
return a;
}
return gcd(b, a % b);
}
// 求最简形式
void simplifyFraction(int *numerator, int *denominator) {
int commonDivisor = gcd(*numerator, *denominator);
*numerator /= commonDivisor;
*denominator /= commonDivisor;
}
int main() {
int n;
printf("请输入要求和的分数个数n:");
scanf("%d", &n);
int numeratorSum = 0;
int denominatorSum = 1;
printf("请依次输入%d个分数的分子和分母,用空格分隔:\n", n);
for (int i = 0; i < n; i++) {
int numerator, denominator;
scanf("%d %d", &numerator, &denominator);
numeratorSum = numeratorSum * denominator + numerator * denominatorSum;
denominatorSum *= denominator;
}
simplifyFraction(&numeratorSum, &denominatorSum);
printf("分数求和的结果为:%d/%d\n", numeratorSum, denominatorSum);
return 0;
}
```
这段代码会先要求输入分数的个数n,然后依次输入n个分数的分子和分母。接下来,它会计算这些分数的和,并将结果以最简形式输出。
希望这个示例能够帮到你!如果你有任何其他问题,请随时提问。
阅读全文