帮我写一个c语言程序输入A、B、C、D四个整数(0≤A<10000,0<B<10000,0≤C<10000,0<D<10000),计算A/B+C/D并输出,要求计算结果为最简分式(分子、分母均为非负整数)
时间: 2023-04-05 11:03:07 浏览: 165
好的,以下是程序的代码:
#include <stdio.h>
int gcd(int a, int b) { // 求最大公约数
if (b == 0) {
return a;
}
return gcd(b, a % b);
}
int main() {
int A, B, C, D;
scanf("%d%d%d%d", &A, &B, &C, &D);
int fenzi = A * D + B * C;
int fenmu = B * D;
int g = gcd(fenzi, fenmu); // 求最大公约数
fenzi /= g;
fenmu /= g;
printf("%d/%d\n", fenzi, fenmu);
return 0;
}
希望能够帮到您!
相关问题
编写一个c语言程序,输入一个不多于五位的整数,分别输出每一位数字
A:
```c
#include <stdio.h>
int main() {
int num;
printf("请输入一个不多于五位的整数:");
scanf("%d", &num);
printf("每一位数字分别是:");
if (num >= 10000) { // 判断是否是五位数
printf("%d ", num / 10000);
num %= 10000;
}
if (num >= 1000) { // 判断是否是四位数
printf("%d ", num / 1000);
num %= 1000;
}
if (num >= 100) { // 判断是否是三位数
printf("%d ", num / 100);
num %= 100;
}
if (num >= 10) { // 判断是否是两位数
printf("%d ", num / 10);
num %= 10;
}
printf("%d", num); // 输出个位数
return 0;
}
```
注意:本程序只适用于不多于五位的整数。如果要适用于更大的数字,需要增加相应的判断语句。
编写一个c语言程序,输入一个不多于五位的整数,求出它是几位数
以下是一个能够实现上述功能的C语言程序:
```c
#include<stdio.h>
int main() {
int num;
printf("请输入一个不多于五位的整数:");
scanf("%d", &num);
if(num >= 10000) {
printf("这个数是五位数\n");
}else if(num >= 1000) {
printf("这个数是四位数\n");
}else if(num >= 100) {
printf("这个数是三位数\n");
}else if(num >= 10) {
printf("这个数是两位数\n");
}else {
printf("这个数是一位数\n");
}
return 0;
}
```
程序首先提示用户输入一个整数,然后使用`scanf`函数读取输入的值。接着,程序使用一系列的`if-else`语句检测输入的数字是几位数。如果数字大于等于10000,则它是一个五位数,以此类推。最后,程序输出结果并返回0。