“21天养成好习惯”第一期-9

20.循环结构之多重循环

多重循环就是在循环结构的循环体中又出现循环结构

最多使用到三层重循环,因为循环越多,程序运行的时间就要越长。同时不同的循环结构可以嵌套。

多重循环在执行的过程中,外层循环为父循环,内层循环为子循环,父循环一次,子循环需要全部执行完,直到跳出循环。父循环再进入下一次,子循环继续执行..

注意:一个父循环可以有多个子循环

例子

#include<stdio.h>

int main()

{

         int a,b;

         for(a=1;a<=6;a++)

         {

            for(b=1;b<=10;b++)

            {

                 printf("*");

            }

            printf("\n");

         }

         return 0;

}

输出如下

知识点回顾:

在计算机语言里是 \t是“转义字符”,\t 横向跳到下一制表位置

转义字符是一种特殊的字符常量。转义字符以反斜线"\"开头,后跟一个或几个字符。转义字符具有特定的含义,不同于字符原有的意义,故称“转义”字符。例如,在前面各例题printf函数的格式串中用到的“\n”就是一个转义字符,其意义是“回车换行”。转义字符主要用来表示那些用一般字符不便于表示的控制代码。

常用的转义字符及其含义

转义字符 转义字符的意义

\n 回车换行

\t 横向跳到下一制表位置

\v 竖向跳格 垂直制表符

\b 退格

\r 回车

\f 走纸换页

\\ 反斜线符"\"

\' 单引号符

\a 鸣铃

\ddd 1~3位八进制数所代表的字符

\xhh 1~2位十六进制数所代表的字符

(细品99乘法表的程序编写,有很多东西可以读出来)

21.结束语句之break语句

break用于停止程序的继续运行

使用break语句时注意以下几点:

1、在没有循环结构的情况下,break不能用在单独的if-else语句中

2、在多层循环中,一个break语句只跳出当前循环

22.结束语句之continue语句

与break语句相反的是continue语句

运行结果:

continue语句的作用是结束本次循环开始执行下一次循环

break语句与continue语句的区别是:break是跳出当前整个循环,continue结束本次循环开始下一次循环。 

以及今天敲的一些代码:

#include<stdio.h>
int main()
{
	int sum=0;
	int i=1;
	int flag=1;
	while(i<=100)
	{
	i++;
	sum+=i*flag;
	flag=flag*-1;	
	}
	printf("sum=%d\n",sum);
	return 0;
}
#include<stdio.h>
int main()
{
	int i=1,sum=0,flag=1;
	for(i=1;i<=100;i++)//注意i的范围,只有在i为真时才会进入到for循环中。
	{
		sum=sum+i*flag;
		flag=flag*-1;
	}
	printf("sum=%d\n",sum);
	return 0;
}
#include<stdio.h>
int main()
{
	int i=1,sum=0,flag=1;
	do
	{
		i++;
		sum=sum+i*flag;
		flag=flag*-1;		
	}while(i<=100);
	printf("sum=%d\n",sum);
	return 0;
	
}
#include<stdio.h>
int main()
{
	int a,b;
	for(a=1;a<=6;a++)
	{
		for(b=1;b<=10;b++)
		{
			printf("*");
		} 
		printf("\n");
	}
	return 0;
}
#include <stdio.h>
int main()
{
    int i, j, k;
    for(i=1; i<5; i++)
    {
        /* 观察每行的空格数量,补全循环条件 */
        for(    j=i ;  j<5 ;  j++  )  
        {
            printf(" ");    //                    输出空格
        }
        /* 观察每行*号的数量,补全循环条件 */
        for( k=0 ;  k<2*i-1 ;  k++     ) 
        {
            printf("*");   //每行输出的*号
        }
        printf("\n");     //每次循环换行
    }
    return 0;
}
#include <stdio.h>
int main() 
{ 
    // 定义相乘数字i,j以及结果result
    int i, j, result;
    for(i=9;i>=1;i--)
    {
        for(j=1;j<=i;j++)
        {
            result=i*j;
            printf("%d*%d=%d\t",i,j,result);
        }
        printf("\n");
    }
    return 0;
}
#include<stdio.h>
int main()
{
	int i;
	for(i=1;i<=10;i++)
	{
		printf("运球%d次\n",i);
		if(i==5)
		{
			printf("哎呀,不小心肚子疼了。。。。。\n");
			printf("停止运球\n");
			break;
		}
	}
	printf("今天的运球就到这里了");
	return 0;
}
#include <stdio.h>
int main()
{
    int m, n;
    for(m=2; m<=50; m++)
    {
		for(n=2; n<m; n++)
        {
            if(    m%n==0    )       
              break;                 
		}	
        if(m == n)   //n循环结束后,如果m=n的话就输出m
            printf("%d  ", m);
	}
	return 0;    
}
#include<stdio.h>
int main()
{
	int i;
	for(i=1;i<=10;i++)
	{
		printf("运球%d次\n",i);
		if(i==5)
		{
			printf("去接一个电话\n");
			continue;
		}
	}
	printf("今天的训练到此为止");
	return 0;
}
#include<stdio.h>
int main()
{
	int i,sum;
	for(i=1,sum=0;i<=20;i++)
	{
		if(i%3==0)
		{
			continue;//如果可以被三整除,则直接跳过,继续找到不能的数
		}
			sum=sum+i;
	}

	printf("sum=%d",sum);
	return 0;
}

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值