C语言中如何输入分数
时间: 2024-11-03 21:19:54 浏览: 11
在C语言中,由于其基础数据类型并不支持分数这种数据结构,你需要自行设计一种方式来存储和输入分数。一种常见的做法是使用两个整数分别表示分子(numerator)和分母(denominator),例如将分数 `1/2` 表示为 `(1, 2)`。
输入分数时,可以创建一个包含两个整数变量的结构体(struct),或者使用数组结合指针来模拟这个过程。下面是一种简单的示例:
```c
#include <stdio.h>
typedef struct {
int numerator;
int denominator;
} Fraction;
void inputFraction(Fraction* fraction) {
printf("请输入分数的分子和分母,以斜线分隔(如1/2): ");
char input[50];
fgets(input, sizeof(input), stdin); // 使用fgets避免换行符
sscanf(input, "%d/%d", &fraction->numerator, &fraction->denominator);
}
int main() {
Fraction fraction;
inputFraction(&fraction);
printf("你输入的分数是: %d/%d\n", fraction.numerator, fraction.denominator);
return 0;
}
```
在这个例子中,`inputFraction` 函数会提示用户输入分数,然后使用`sscanf`解析用户的输入。
阅读全文