欢迎来到千学网!
您现在的位置:首页 > 实用文 > 其他范文

C语言之函数调用02―一个三位数的正整数=它的各位数字的阶乘之和

时间:2023-05-15 08:00:05 其他范文 收藏本文 下载本文

以下是小编收集整理的C语言之函数调用02―一个三位数的正整数=它的各位数字的阶乘之和,本文共3篇,欢迎阅读与借鉴。

C语言之函数调用02―一个三位数的正整数=它的各位数字的阶乘之和

篇1:C语言之函数调用02―一个三位数的正整数=它的各位数字的阶乘之和

//函数调用+枚举法

/*

==========================================================

题目:求一个三位数的正整数=它的各位数字的阶乘之和!

如:145=1!+4!+5!.

==========================================================

*/

#include

int J(int n)

{

int t=1,i;

for(i=1;i<=n;i++)

t*=i;

return(t);

}

main

{

int s,i,ge,shi,bai,qian;

for(s=100;s<1000;s++)

{

ge=s%10;

shi=s/10%10;

bai=s/100%10;

if(s==J(ge)+J(shi)+J(bai))

printf(%d=%d!+%d!+%d! ,s,bai,shi,ge);

}

}

/*

==========================================================

评:首先写一个求阶乘的函数J,然后用除法和余数求出“个十百”

位上的数字,通过枚举法找到符合if条件的数,

C语言之函数调用02―一个三位数的正整数=它的各位数字的阶乘之和

==========================================================

*/

篇2:C语言之函数调用01―1到n的阶乘和

//函数法

/*

==========================================================

题目:求1~n的阶乘和!(0<=n<=25)

==========================================================

*/

#include

#define M 25

#define H printf(--------------------------- );

int J(int n)

{

int t=1,i;

for(i=1;i<=n;i++)

t*=i;

return(t);

}

main()

{

int i,n,sum=0,flag=1;

while(flag)

{

printf(输入要计算阶乘和的最大数(0<25): n=");

scanf(%d,&n);

if((n0))

flag=0;

}

for(i=1;i<=n;i++)

sum+=J(i);

H;printf(1!+2!+...+%d!=%d ,n,sum);H

}

/*

==========================================================

评:首先写函数求一个数的阶乘,然后通过输入数字确定求和范围,进而调用

函数并求和,

C语言之函数调用01―1到n的阶乘和

输入时用一个开关变量flag确保输入的数值可用。

==========================================================

*/

<25):>

篇3:C语言之函数调用03―最大公约数和最小公倍数

//函数调用/*======================================================题目:求两个数的最大公约数和最小公倍数,

C语言之函数调用03―最大公约数和最小公倍数

。如:16和12的最大公约数是:4 16和12的最小公倍数是:48======================================================*/#includeint GY(int m,int n){ int t,r; if(n>m) {t=m;m=n;n=t;} while((r=m%n)!=0) { m=n; n=r; } return(n);}int GB(int m,int n){ int k; k=m*n/GY(m,n); return(k);}main(){ int x,y,gys,gbs; printf(输入两数:); scanf(%d%d,&x,&y); gys=GY(x,y); gbs=GB(x,y); printf(%d和%d的最大公约数是:%d,x,y,gys); printf(%d和%d的最小公倍数是:%d,x,y,gbs);}/*=========================================================评:通过独立写两个函数GB—求最小公倍数和GY—求最大公约数,使得程序非常紧凑并很好维护和检查,=========================================================
《C语言之函数调用02―一个三位数的正整数=它的各位数字的阶乘之和(推荐3篇).doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

文档为doc格式

最新推荐
猜你喜欢
点击下载本文文档