练习5
猴子吃桃问题:
猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个
第二天早上又将剩下的桃子吃掉一半,又多吃了一个。
以后每天早上都吃了前一天剩下 的一半零一个。到第10天早上想再吃时,见只剩下一个桃子了。
求第一天共摘了多少。 x
提示:倒着往前退,找到公式规律
//练习5
int s,sum7 = 0;
for(s=10;s>=1;s--)
{
sum7 = sum7 + (1*2+1);
}
printf("第一天摘了%d\n",sum7);
练习6
打印99乘法表
1 x 1 = 1
2 x 1 = 2 2 x 2 = 4
3 x 1 = 3 3 x 2 = 6 3 x 3 = 9
……
//练习六 打印99乘法表
int i,j;
for(i=1;i<=9;i++) //行循环
{
for(j=1;j<=i;j++) //列
{
printf("%d x %d = %d ",i,j,i*j);
}
printf("\n");
}
练习7
for循环打印以下形状
******** 第0次循环 空格个数0个
******** 第1次循环 空格个数1个
******** 第2次循环 空格个数2个
********
********
********
int k,l,line;
printf("请输入层数:");
scanf("%d",&line);
for(k=0;k<=line;k++)
{
for(l=0;l<k;l++)
{
printf(" ");
}
printf("********\n");
}
练习8
用while和for循环均实现一次
求1000以内所有的质数 。 质数:只能够1和它本身整除
int m,n,flage;
for(m=3;m<1000;m++)
{
flage = 1;
for(n=2;n<m;n++)
{
if(m % n == 0)
{
flage = 0;
break;
}
}
if(flage)
{
printf("%d是质数\n",m);
}
}
//while循环
int m = 3,n=2;
while(m<1000)
{
flage = 1;
while(n<m)
{
if(m % n == 0)
{
flage = 0;
break;
}
n++;
}
if(flage)
{
printf("%d是质数\n",m);
}
m++;
}