C语言循环练习2

猴子吃桃问题:
  a.猴子第一天摘下若干个桃子,当即吃了—半,还不瘾,又多吃了一个

b.第二天早上又将剩下的桃子吃掉—半,又多吃了—个。

 c.以后每天早上都吃了前一天剩下的一半零一个。到第10天早上想再吃时,见只剩下一个桃子了。
   d.求第一天共摘了多少。

#include <stdio.h>

int main(int argc, const char *argv[])
{
	int day = 10;
	int tao = 1;
	for(day=10;day>1;day--)
	{
		tao = (tao + 1) * 2;
	}
	printf("第一天一共摘了%d个桃子。\n",tao);

	return 0;
}

//打印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

#include <stdio.h>

int main(int argc, const char *argv[])
{
	int num1,num2,jg;
	for( num1=1; num1<10; num1++ )
	{
		for( num2=1;num2<=num1; num2++ )
		{
			jg = num1 * num2;
			printf("%d * %d = %d\t",num1,num2,jg);
		}
		printf("\n");
	}
	
	return 0;
}

********                 第0次循环  空格个数0个
 ********                第1次循环  空格个数1个
  ********               第2次循环  空格个数2个
   ********
    ********
     ********

#include <stdio.h>

int main(int argc, const char *argv[])
{
	//********                 第0次循环  空格个数0个
 	// ********                第1次循环  空格个数1个
    //  ********               第2次循环  空格个数2个
    //   ********
    //    ********
    //     ********
	
	printf("请输入需要打印反平行四边形的层数:\n");
	int i,j,k,line;
	scanf("%d",&line);
	for(i=1; i<=line; i++)   //层数
	{
		for(j=1;j<i;j++)    //空格个数
		{
			printf(" ");
		}
		for( k=0; k<8; k++ )   //*的个数
		{
			printf("*");
		}
		printf("\n");
	}

	return 0;
}

//  用while和for循环均实现一次
    //  求1000以内所有的质数 。

质数是大于1的自然数

质数:只能够1和它本身整除

#include <stdio.h>

int main(int argc, char const *argv[])
{
    //  用while和for循环均实现一次
    //  求1000以内所有的质数 。 质数:只能够1和它本身整除

    // while循环
    int num, x, y;
    printf("1000以内的质数有:\n");
    num = 2;
    while (num <= 1000)
    {
        y = 1;
        x = 2;
        while (x < num)
        {
            if (num % x == 0)
            {
                y = 0;
                break;
            }
            x++;
        }
        if (y)
        {
            printf("%d ", num);
        }
        num++;
    }
    printf("\n");

    // for循环
    for(num=2;num<=1000;num++)
    {
        y=1;
        for(x=2;x<num;x++)
        {
            if(num%x==0)
            {
                y=0;
                break;
            }
        }
        if (y)
        {
            printf("%d ",num);
        }
    }
	printf("\n");

    return 0;
}


  • 12
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值