计算正整数的各位上的数字之积用C语言
时间: 2024-11-10 11:24:54 浏览: 15
代码_C循环-求各位数字之积_
在C语言中,可以编写一个函数来计算任意正整数的所有位数的乘积。通常,我们会先将数字转换为字符串,然后遍历每一位进行计算。以下是一个示例:
```c
#include <stdio.h>
#include <string.h>
long long multiply_digits(int num) {
// 将数字转换为字符串
char str[100];
sprintf(str, "%lld", num);
// 初始化乘积为1
long long product = 1;
// 遍历字符串中的每一位
for(char *p = str; *p != '\0'; ++p) {
// 将字符转换为数字并乘以当前乘积
int digit = *p - '0';
product *= digit;
}
return product;
}
int main() {
int input_num;
printf("请输入一个正整数: ");
scanf("%d", &input_num);
if(input_num <= 0){
printf("输入错误,必须是正整数.\n");
} else {
long long result = multiply_digits(input_num);
printf("给定数字的各位上的数字之积是: %lld\n", result);
}
return 0;
}
阅读全文