一、百钱百鸡问题
问题描述:
中国古代数学家张丘建在他的《算经》中提出了著名的“百钱百鸡问题”:鸡翁一,值钱五;鸡母一,值钱三;鸡雏三,值钱一;百钱买百鸡,翁、母、雏各几何?
#include<stdio.h>
int main()
{
int i,j,k;
for(i=0;i<=100;i++
{
for(j=0;j<=100;j++)
{
for(k=0;k<=100;k++)
{
if(i+j+k==100 && k%3==0 && i*5+j*3+k/3==100)
{
printf("公鸡%d只,母鸡%d只,雏鸡%d只n",i,j,k);
}
}
}
}
return 0;
}
二、求三个数的最小公倍数
问题描述
输入 3 个数 a、b、c, 求这 3 个数的最小公倍数。
#include<stdio.h>
int main()
{
int a,b,c;
scanf("%d%d%d",&a,&b,&c);
int max;
max=a;
if(max<b)
{
max=b;
}
if(max<c)
{
max=c;
}
for(int i=max;;i++)
{
if(i%a==0&&i%b==0&&i%c==0)
{
printf("%d,%d和%d的最小公倍数是%d",a,b,c,i);
break;
}
}
return 0;
}
三、韩信点兵问题
问题描述
求韩信一共有多少兵。
韩信有一队兵,他想知道有多少人,便让士兵排队报数。
- 按从 1 至5报数,最末一个士兵报的数为 1;
- 按从 1 至 6 报数,最末一个士兵报的数为 5;
- 按从 1 至 7 报数,最末一个士兵报的数为 5;
- 按从 1 至 11 报数,最末一个士兵报的数为 10;
- 按从 1 至 13 报数,最末一个士兵报的数为 11。
请问韩信至少有多少兵?
#include<stdio.h>
int main()
{
int i;
for(i=1;;i++)
{
if(i%5==1&&i%6==5&&i%7==5&&i%11==10&&i%13==11)
{
printf("士兵最少有%d个",i);
break;
}
}
return 0;
}
四、猴子吃桃问题
问题描述:
猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个;第二天早上又将剩下的桃子吃掉一半,又多吃了一个;以此往后,到第十天早上想再吃时,就只剩一个桃子了。
#include<stdio.h>
int main()
{
int n,sum=0;
scanf("%d",&n);
for(int i=1;i<=n;i++)
{
sum=(sum+1)*2;
}
printf("原有%d个桃子",sum);
return 0;
}
五、水仙花数问题
问题描述:
水仙花数是指一个N位正整数(N≥3),它的每个位上的数字的N次幂之和等于它本身。例如:153=1^3+5^3+3^3。 本题要求编写程序,计算所有N位水仙花数。
#include<stdio.h>
#include<math.h>
int main()
{
int n,count=0;
scanf("%d",&n);