C语言求一个三位正整数各位数字之和
时间: 2024-10-25 10:03:30 浏览: 12
C语言三个数排列大小的实现方法
5星 · 资源好评率100%
在C语言中,求一个三位正整数各位数字之和可以通过以下几个步骤实现:
1. 定义一个整型变量`num`存储输入的三位数,并将其转换成字符串形式,以便我们可以遍历每一位数字。
2. 使用`strlen()`函数获取字符串长度,因为对于三位数,它的长度会减去前缀“100”后的两位数,所以长度就是4。
3. 遍历字符串,从第3位开始(索引为2),每次取出一位字符并转换回对应的数字,加到总和`sum`上。可以借助ASCII码表来计算,例如'A'代表10,'B'代表11等。
4. 最后返回`sum`作为结果。
下面是一个简单的示例代码片段:
```c
#include <stdio.h>
#include <string.h>
int sumOfDigits(int num) {
char str[5];
int sum = 0;
// 转换为字符串
sprintf(str, "%d", num);
// 遍历字符串,从第3位开始计算
for (int i = 2; i < strlen(str); ++i) {
// 将字符转换为数字(假设字符都是10进制)
int digit = str[i] - '0';
sum += digit;
}
return sum;
}
int main() {
int input;
printf("请输入一个三位正整数: ");
scanf("%d", &input);
int result = sumOfDigits(input);
printf("各位数字之和为: %d\n", result);
return 0;
}
```
阅读全文