c语言程序填空功能:求一个n位自然数的各位数字的积。(n 是小于10的自然数)例如:输入:12345678,输出:40320

c语言程序填空功能:求一个n位自然数的各位数字的积。(n 是小于10的自然数)例如:输入:12345678,输出:40320

img

long fun(long n)
{
long prod = 1;
while (n != 0)
{
prod *= n % 10;
n /= 10;
}
return prod;
}

可以使用循环实现。

补充如下:


#include <stdio.h>

long fun(long n){
    
    long result =1;  //存储乘积的变量初始化为1 
    if(n==0){  // 如果n为0,则返回0 
        return 0;
    }
    while(n!=0){   // 如果n不等于0,则依次将n的各位累乘到积result中 
        result*=n%10;  // 将n的个位累乘到result中 
        n/=10;   // n除以10,以便提取n的下一位数字 
    }
    
    // 返回结果 
    return result;
    
} 

int main(void){
    
    long m;
    printf("Enter m:");
    scanf("%ld",&m);
    printf("The result is %ld\n",fun(m));
    
    return 0;
}

img