zoukankan      html  css  js  c++  java
  • C学习笔记-流程控制

    常用的流程图符号

    流程框图

    • 起止框用于表示流程的开始或结束;
    • 输入/输出框用平行四边形表示,在平行四边形内可以写明输入或输出的内容;
    • 判断框用菱形表示,它的作用是对条件进行判断,根据条件是否成立来决定如何执行后续的操作;
    • 处理框用矩形表示,它代表程序中的处理功能,如算术运算和赋值等;
    • 流程线用实心单向箭头或直线表示,可以连接不同位置的图框,流程线的标准流向是从左到右和从上到下,可用直线表示,非标准流向的流程线应使用箭头指示方向;
    • 连接点用圆形表示,用于流程图的延续。

    在C语言中0代表假,非0代表真

    顺序结构语句

    最常见的执行结构,计算机语言往大了说都是属于顺序结构
    顺序结构:所有语句从上到下顺序执行

    选择结构语句

    if条件语句

    • if语句
    if (条件语句)
    { 
    	//代码块
    }
    

    if语句

    • if···else语句
    if (判断条件)
    {
    	//执行语句1
    	···
    }
    else
    {
    	//执行语句2
    	···
    }
    

    ifelse语句

    • if···else if···else语句
      else永远是和最近的一条if语句配对
    if (判断条件1) 
    {
        //执行语句1
    }
    else if (判断条件2) 
    {
        //执行语句2
    }
    ···
    else if (判断条件n)
    {
        //执行语句n
    } 
    else 
    {
        //执行语句n+1
    }
    

    ifelseifelse

    switch条件语句

    switch作为一种条件选择语句,主要适用于具体值的判断,而if适用于范围值的判断,侧重点不同。
    switch是为多重选择准备的,遇到break语句,switch就终端执行

    switch (表达式)
    {
        case 目标值1:
    		//执行语句1
    		break;
    	case 目标值2:
    		//执行语句2
    		break;
    	···
    	case 目标值n:
    		//执行语句n
    		break;
    	default:
    		//执行语句n+1
    		break;
    }
    

    switch将表达式的值与case中的值对比,执行与之相匹配的case内语句,直到遇到break退出。

    循环结构语句

    在符合某一条件的情况下,不断地重复某一段代码,这种叫做循环语句

    while循环语句

    while (循环条件)
    {
    	//执行语句
        ···
    }
    

    while

    do-while循环语句

    do 
    {
        //执行语句
        ···
    } while(循环条件);
    

    dowhile

    for循环语句

    for(初始化表达式; 循环条件; 操作表达式)
    {
        //执行语句
        ···
    }
    

    循环嵌套

    循环嵌套在各种语言中都很常用
    外层循环控制行,内层循环控制列

    *
    **
    ***
    ****
    *****
    ******
    *****
    ****
    ***
    **
    *
    
    int i;
    int j;
    for (i = 0; i < 11; i++)
    {
    	if (i < 6)
    	{
    		for (j = 0; j <= i; j++)
    		{
    			printf("*");
    		}
    	}
    	else
    	{
    		for (j = 11 - i; j > 0; j--)
    		{
    			printf("*");
    		}
    	}
    	printf("
    ");
    }
    
        *
       ***
      *****
     *******
    *********
    
    int i;
    int j;
    for (i = 0; i < 5; i++)
    {
    	for (j = 4 - i; j > 0; j--)
    	{
    		printf(" ");
    	}
    	for (j = 0; j < (i - 1) * 2 + 3; j++)
    		printf("*");
    	printf("
    ");
    }
    

    跳转语句(break、goto、continue)

    • break语句
      在switch条件语句和循环语句中都可以使用break语句
      当它出现在switch条件语句中时,作用是终止某个case并跳出switch结构
      当它出现在循环语句中,作用是跳出当前循环语句,执行后面的代码

    • goto语句
      尽量不要在程序当中使用goto语句
      当break语句出现在嵌套循环中的内层循环时,它只能跳出内层循环,如果想要跳出外层循环则需要对外层循环添加标记,然后使用goto语句

        int i = 0;
    start:
        scanf("%d", &i);
        if(i == 1)
            goto start;
    
    • continue语句
      在循环语句中,如果希望立即终止本次循环,并执行下一次循环,此时就需要使用continue语句
  • 相关阅读:
    ECharts之柱状图 饼状图 折线图
    Vue自定义指令(directive)
    HDU 1231 最大连续子序列
    POJ 2533 Longest Ordered Subsequence
    HDU 1163 Eddy's digital Roots
    HDU 2317 Nasty Hacks
    HDU 2571 命运
    HDU 4224 Enumeration?
    HDU 1257 最少拦截系统
    HDU 2740 Root of the Problem
  • 原文地址:https://www.cnblogs.com/cj5785/p/10664810.html
Copyright © 2011-2022 走看看