标签:int 定义 思路 结果 printf 重复 执行 cto 自定义
int narcissistic( int number )函数
1.第一步,定义i,j变量控制循环,count表示输入数值的个数,w表示输入数值各个位数上的count次方的和,y表示各个位数上的count次方,sum用来存放number的值
2.第二步,while(sum>0){sum=sum/10;count++; }计算输入值的个数
3.第三步,for(j=1;j<=count;j++)
y=y*h;
w=w+y;计算输入数值各个位数上的count次方的和w
4.第四步,如果w==number,则返回1,否则返回0
PrintN( int m, int n )函数
定义r储存数字,for(r=m+1;r<=n-1;r++)调用narcissistic函数,如果返回1就打印该数
1.自定义函数int factorsum( int number ),函数名factorsum( ),返回值为整型,输入数据number为整型;
2.定义变量i,total=0;
3.如果number==1,返回结果为1;否则进入循环for(i=1;i<number;i++);
4.如果number%i==0,total=total+i;
5.重复3,4,直到i=number,如果循环结束后total==number,返回total;
6.自定义函数void PrintPN( int m, int n ),函数名为 PrintPN( ),函数无返回值,输入m,n为整型;
7.定义变量i,j,r,sum=0,flag=0,
8.如果m==1;printf("%d = %d\n",m,m),flag=1;
9.否则进入循环for(i=m;i<=n;i++),如果factorsum(i)==i,sum=0; flag=1,并进入子循环for(j=1;j<i;j++),如果i%j==0,sum=sum+j;
10.重复执行步骤九,直到条件不成立;
11.如果sum==i,printf("%d = ", i);并输出第一个因子1;进入循环for(r=2;r<i;r++),如果i%r==0,printf(" + %d",r);循环结束后输出一个换行符;
12.如果flag==0,输出No perfect number。
定义变量m,n储存输入数;输入m,n;调用fact函数,输出结果;
fact函数
定义浮点型变量result=1;令i=1,判断i<=n?,是则result=result*i,i++,否则return result.
标签:int 定义 思路 结果 printf 重复 执行 cto 自定义
原文地址:http://www.cnblogs.com/springbreezemiles/p/7875197.html