1.求 1-----1000以内的完数
示例:
28
1 +4 +7 +14 +2 =28
完数:完美的数
除去本身以外的因子和等于本身
6 1+2+3 = 6
#include <stdio.h>
#include <string.h>
int main(int argc, const char *argv[])
{
int i,j;
int sum;
for(i=1;i<=1000;i++)
{
sum=0;
for(j=1;j<=i;j++)
{
if(i%j==0)
{
sum+=j;
}
}
if(sum==2*i)
{
printf("%d ",i);
}
}
return 0;
}
2.打印奇数金字塔
& & & *
& & * * *
& * * * * *
* * * * * * *
#include <stdio.h>
#include <string.h>
int main(int argc, const char *argv[])
{
int i,j,a;
printf("请输入行数:");
scanf("%d",&a);
for(i=1;i<=a;i++)
{
for(j=1;j<=(2*(a-i));j++)
{
printf(" ");
}
for(j=1;j<=(2*i-1);j++)
{
printf("* ");
}
printf("\n");
}
return 0;
}
3.求和直到超过100:
编写程序,计算从1开始递增的整数之和,直到和首次超过100时停止并输出当前的和以及累加了多少个数。
#include <stdio.h>
#include <string.h>
int main(int argc, const char *argv[])
{
int i=2;
int sum=1;
while(sum<=100)
{
sum+=i;
i++;
printf("当前和为%d,累计加了%d个数。\n",sum,i-1);
}
return 0;
}
4.斐波那契数列:
编写程序,输出斐波那契数列的前n项
(斐波那契数列指数列中的每一项都是前两项的和,第一和第二项是1)。
#include <stdio.h>
#include <string.h>
int main(int argc, const char *argv[])
{
int i,n;
int a=1,b=0,sum;
printf("请输入第几项:");
scanf("%d",&n);
printf("前n项为:\n");
for(i=1;i<=n;i++)
{
sum=a+b;
a=b;
b=sum;
printf("%d\n",b);
}
return 0;
}
5.使用嵌套循环产生下列图案,要求用for嵌套循环
F
_FE
__FED
___FEDC
____FEDCB
_____FEDCBA
#include <stdio.h>
#include <string.h>
int main(int argc, const char *argv[])
{
int i,j,k;
char c,d;
for(i=1;i<=6;i++)
{
c=70;d=95;
for(j=1;j<=i-1;j++)
{
printf("%c",d);
}
for(k=1;k<=i;k++)
{
printf("%c",c);
c--;
}
printf("\n");
}
return 0;
}
6.猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个
第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下
的一半零一个。到第10天早上想再吃时,见只剩下一个桃子了。求第一天共摘了多少。
#include <stdio.h>
#include <string.h>
int main(int argc, const char *argv[])
{
int i,sum=1;
for(i=1;i<10;i++)
{
sum=(sum+1)*2;
}
printf("第一天共摘了%d个\n",sum);
return 0;
}