用C语言将两位十进制整数的十位数和个位数分离。
时间: 2024-11-03 22:17:41 浏览: 19
C语言实现十六进制数据转十进制数据
在C语言中,要将一个两位的十进制整数(如123)分离成十位数(1)和个位数(2)的话,你可以先将数字转换成字符串,然后处理字符串的字符。下面是一个简单的示例:
```c
#include <stdio.h>
#include <string.h>
int main() {
int num = 123; // 要分离的两位数
char str[4]; // 存储字符串化的数字,包括空字符
// 将数字转换为字符串
sprintf(str, "%d", num);
// 提取并打印每一位
printf("十位数: %d\n", str[0] - '0'); // 从字符串的第一个字符减去ASCII的'0'
printf("个位数: %d\n", str[1] - '0'); // 同理,第二个字符也是减去'0'
return 0;
}
```
在这个例子中,我们首先使用`sprintf`函数将整数`num`转换为字符串形式,并存储在`str`数组中。然后通过`str[0] - '0'`和`str[1] - '0'`获取每个位置的数字,因为字符'0'的ASCII值就是0,所以减去它就得到了实际的数值。
阅读全文