//求阶乘
#include<stdio.h>
int main()
{
int k;
scanf("%d",&k);
printf("%d!=%ld\n",k,fac(k));
return 0 ;
}
long fac (int n)//函数名fac
{
long f = 1;//变量用于存放阶乘值
if(n<0)
f=0;
for(;n>0;n--)
f*=n;
return f;//f的值为返回值
}
/*步骤
例如:3>0
f=1*3
2>0
f=3*2
1>0
f=6*1
n=0 不成立
函数fac()可以被编译,但不能单独运行,需要被调用,函数间是调用与被调用的关系,但任何函数都不能调用main()函数
*/
//求阶乘的和
#include<stdio.h>
int main()
{
int n,k;
long sum=0;
scanf("%d",&n);
for(k=1;k<=n;k++)
sum+=fac(k);
printf("n=%d,sum=%ld\n",n,sum);
return 0 ;
}
long fac (int n)//函数名fac
{
long f = 1;//变量用于存放阶乘值
if(n<0)
f=0;
for(;n>0;n--)
f*=n;
return f;//f的值为返回值
}
//判断位数
#include<stdio.h>
int func(int n)
{
int w=0;
while(n)
{
n=n/10;
w++;
}
return w ;
}
int main()
{
int x;
scanf("%d",&x);
printf("%d的位数为%d\n",x,func(x));
return 0 ;
}
//判断素数
//判别素数,然后求出100~300之间的素数
#include<stdio.h>
int isprime(int n)
{
int i,flag=1;
for(i=2;i<n;i++)
if(n%i==0)
{
flag=0;
i=n;
}
return flag;
}
int main()
{
int m;
for(m=100;m<300;m++)
if(isprime(m)==1)
printf("%d\t",m);
return 0 ;
}
/*类似:
判断回文数,完数,平闰年*/