输入一个三位数的正整数n 分别求出该数的百位数 十位数和个位数 C语言
时间: 2024-12-21 13:23:16 浏览: 25
在C语言中,你可以通过将输入的三位数转换成字符串然后逐字符处理来获取其各个位数。这里是一个简单的示例:
```c
#include <stdio.h>
#include <string.h>
int main() {
int n, hundreds, tens, ones;
char str[4];
// 获取用户输入的三位数
printf("请输入一个三位数:");
scanf("%d", &n);
// 将数字转换为字符串便于操作
itoa(n, str, 10); // itoa函数不存在于标准库,这是一个假设的函数
// 分割字符串并提取各个位数
if (strlen(str) == 4) { // 检查是否是四位数
tens = str[1] - '0'; // 从第二个字符开始减去ASCII码值得到十位
ones = str[2] - '0'; // 同理,第三个字符是个位
} else {
hundreds = str[0] - '0'; // 如果是三位数,则第一个字符是百位
tens = str[1] - '0';
ones = str[2] - '0';
}
printf("百位数:%d\n", hundreds);
printf("十位数:%d\n", tens);
printf("个位数:%d\n", ones);
return 0;
}
```
注意:`itoa()` 函数并不是C标准库的一部分,在实际编写时需要你自己实现或者查找对应的库函数。上面的代码只是一个简化版的演示。
阅读全文