C语言计算给定整数的各位数字平方的和
时间: 2024-12-08 10:24:29 浏览: 30
c代码-一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少?
在C语言中,你可以编写一个函数来计算给定整数的各位数字的平方和。首先,你需要将整数转换成字符串,然后遍历每个字符(实际上是数字),将其转换回整数并求平方,最后累加到总和中。以下是简单的步骤和示例代码:
```c
#include <stdio.h>
#include <string.h>
// 计算数字的平方
int square(int num) {
return num * num;
}
// 计算整数各位数字的平方和
int sum_of_digit_squares(int num) {
char str[100];
int len = snprintf(str, sizeof(str), "%d", num);
int sum = 0;
for (int i = 0; i < len; i++) {
sum += square(str[i] - '0');
}
return sum;
}
int main() {
int input_num;
printf("请输入一个整数: ");
scanf("%d", &input_num);
int result = sum_of_digit_squares(input_num);
printf("给定整数 %d 的各位数字平方和为: %d\n", input_num, result);
return 0;
}
```
在这个程序中,`sum_of_digit_squares`函数负责处理主要逻辑,它接受一个整数作为输入,转化为字符串后逐位计算并返回各个数字的平方之和。
阅读全文