c语言计算正整数num 各位上数字之积
时间: 2024-06-13 16:06:12 浏览: 127
以下是两种C语言计算正整数num各位上数字之积的例子:
1.使用do-while循环计算
```c
#include <stdio.h>
long fun(long num) {
long k = 1;
do {
k *= num % 10;
num /= 10;
} while (num);
return k;
}
int main() {
long n;
printf("\nPlease enter a number:");
scanf("%ld", &n);
printf("\n%ld\n", fun(n));
return 0;
}
```
2.使用while循环计算
```c
#include <stdio.h>
int main() {
int i,a,b,c=1;
scanf("%d",&a);
if(a%10==0) {
printf("0\n");
} else {
while(a%10!=0) {
i=(int)a/10;
b=a%10;
a=i;
c=c*b;
}
printf("%d\n",c);
}
return 0;
}
```
相关问题
c语言计算正整数num各位上偶数的数字之和
可以使用循环和取模运算来解决这个问题。具体步骤如下:
1. 定义变量sum,用于存储各位上偶数的数字之和,初始值为0。
2. 循环遍历num的各位数字,可以使用while循环或者for循环。
3. 在循环中,先取出num的个位数字,然后判断该数字是否为偶数,可以使用取模运算判断。如果是偶数,则将该数字加到sum中。
4. 将num除以10,去掉个位数字,继续循环直到num为0。
5. 输出sum作为结果。
下面是使用while循环的示例代码:
```c
#include <stdio.h>
int main() {
int num, digit, sum;
printf("请输入一个正整数:");
scanf("%d", &num);
sum = 0;
while (num > 0) {
digit = num % 10; // 取出个位数字
if (digit % 2 == 0) { // 判断是否为偶数
sum += digit; // 加到sum中
}
num /= 10; // 去掉个位数字
}
printf("各位上偶数的数字之和为:%d\n", sum);
return 0;
}
```
输入一个正整数,例如123456,输出结果为:各位上偶数的数字之和为:12
c语言计算正整数num的各位上的数字之积
这里提供两种C语言计算正整数num的各位上的数字之积的方法:
方法一:使用do-while循环
```c
long fun(long num) {
long k = 1;
do {
k *= num % 10;
num /= 10;
} while (num);
return k;
}
int main() {
long n;
printf("\nPlease enter a number:");
scanf("%ld", &n);
printf("\n%ld\n", fun(n));
return 0;
}
```
方法二:使用while循环
```c
int main() {
int num, product = 1;
printf("Please enter a positive integer: ");
scanf("%d", &num);
while (num > 0) {
product *= num % 10;
num /= 10;
}
printf("The product of the digits is %d.\n", product);
return 0;
}
```
阅读全文