1.闰年的判断
#include <stdio.h>
int main()
{
int year;
printf("请输入一个年份:");
scanf("%d",&year);
if(year%400==0 || (year%4==0 && year%100!=0))
printf("%d是闰年。\n",year);
else
printf("%d不是闰年。\n",year);
return 0;
}
2.素数的判断
#include <stdio.h>
#include <math.h>
int main()
{
int num,i;
int flag=0;
printf("请输入一个数:");
scanf("%d",&num);
for(i=2;i<sqrt(num);i++)
{
if(num%i==0)
{
flag=1;
break;
}
}
if(flag==1)
printf("%d不是素数。\n",num);
else
printf("%d是素数。\n",num);
return 0;
}
3.最大公约数和最小公倍数
#include <stdio.h>
int main()
{
int a,b,c,m,t;
printf("请输入两个数:\n");
scanf("%d%d",&a,&b);
if(a<b)
{
t=a;
a=b;
b=t;
}
m=a*b;
c=a%b;
while(c!=0)
{
a=b;
b=c;
c=a%b;
}
printf("最大公约数是:\n%d\n",b);
printf("最小公倍数是:\n%d\n",m/b);
}
4.求1!+2!+...+n!的和
#include <stdio.h>
int main()
{
int n,i;
int b=1,sum=0;
scanf("%d",&n);
for(i=1;i<=n;i++)
{
b*=i;
sum +=b;
}
printf("%d",sum);
return 0;
}
5.递归思想求n!
#include <stdio.h>
int jiecheng(int x)
{
if(x<=1)
return 1;
else
return (x*jiecheng(x-1));
}
int main()
{
int n,sum;
scanf("%d",&n);
printf("%d!=%d",n,jiecheng(n));
return 0;
}
6.斐波那契数列
#include <stdio.h>
int main()
{
int f1=1,f2=1,f3;
int i,n;
printf("请输入菲波那切数列的项数:");
scanf("%d",&n);
if(n==1)
printf("%-12d",f1);
else
printf("%-12d%-12d",f1,f2);
for(i=1;i<=n-2;i++)
{
f3=f1+f2;
printf("%-12d",f3);
f1=f2;
f2=f3;
if((i+2)%5==0)
printf("\n");
}
return 0;
}
7.冒泡排序
#include <stdio.h>
int main() //降序
{
int a[10]={0};
int i,j,t;
for(i=0;i<10;i++)
scanf("%d",&a[i]);
for(i=0;i<9;i++)
{
for(j=0;j<9-i;j++)
{
if(a[j]<a[j+1]) //a[j]>a[j+1]为升序
{
t=a[j+1];
a[j+1]=a[j];
a[j]=t;
}
}
}
for(i=0;i<10;i++)
printf("%d ",a[i]);
return 0;
}
8.杨辉三角
#include <stdio.h>
int main()
{
int a[20][20]={0};
int i,j,n;
printf("杨辉三角行数:");
scanf("%d",&n);
for(i=0;i<n;i++)
a[i][0]=a[i][i]=1;
for(i=1;i<n;i++)
{
for(j=1;j<=i;j++)
{
a[i][j]=a[i-1][j]+a[i-1][j-1];
}
}
for(i=0;i<n;i++)
{
for(j=0;j<=i;j++)
printf("%-5d",a[i][j]);
printf("\n");
}
return 0;
}