美文网首页
循环与分支

循环与分支

作者: Tn299 | 来源:发表于2023-01-18 13:42 被阅读0次

    流程控制

    image.png

    选择分支结构

    C语言支持两种选择结构:

    1.if选择分支结构(if判断语句)

    image.png

    也有if-else if -...- else
    例:

    int main() {
        int a = 0;
        printf("请输入一个数字:");
        scanf("%d",&a);
        if (a>10)
        {
            printf("你输入的为大于10的数");
        }
        else
        {
            printf("你输入的为小于10的数");
        }
        return 0;
    }
    
    效果: image.png

    2.Switch多分支结构

    image.png

    例:

    int main() {
        int a;
        printf("请输入a的值:");
        scanf("%d", &a);
        switch (a)
        {
        case 1:     //case后面不止可以加数字,也可以加字符‘*’
            printf("a的值为1");
            break;//跳出当前的Switch语句,每个case后面都要加
        case 2:
            printf("a的值为2");
            break;
        case 3:
            printf("a的值为3");
            break;
        case 4:
            printf("a的值为4");
            break;
        default:        //default意思为否则,也就是上面选项都不满足
            printf("a为其他的值");
            break;
        }
        return 0;
    }
    
    效果: image.png
    image.png

    循环结构

    C语言支持三种循环结构:

    1.for循环

    for循环中定义的变量只能在for循环中使用,在for循环的外面无法使用。


    image.png
    image.png

    先执行表达式1(只在最开始执行一次),然后再表达式2,再执行循环体内的内容,最后再是表达式3。然后再进行表达式2进行判断,进行循环。

    1.1for循环的嵌套

    也就是在一个for循环的里面再加入for循环

    例: image.png

    2.while循环

    image.png
    例: image.png

    3.do while循环

    image.png
    image.png

    跳转语句

    image.png
    continue
    image.png

    满足if语句之后(也就是i为奇数),跳出了循环,也就没有输出语句,所以最后输出的就都是偶数。

    最后存一下for循环嵌套变爱心的代码:

    #include <stdio.h>
    
    int main()
        {
            int i, j, k, n, m, a, b;
            for (i = 1; i <= 3; i++)
            {
                if (i == 1)
                {
                    printf("     ");
                    printf("*****");
                    printf("         ");
                    printf("*****");
                }
                else
                {
                    for (j = 1; j <= -2 * (i - 1) + 5; j++)
                    {
                        printf(" ");
                    }
                    for (k = 1; k <= 4 * (i - 1) + 5; k++)
                    {
                        printf("*");
                    }
                }
                if (i > 1)
                {
                    for (m = 1; m <= -4 * (i - 1) + 9; m++)
                    {
                        printf(" ");
                    }
                    for (n = 1; n <= 4 * (i - 1) + 5; n++)
                    {
                        printf("*");
                    }
                }
                printf("\n");
            }
            for (i = 4; i <= 6; i++)
            {
                for (j = 1; j <= 29; j++)
                {
                    printf("*");
                }
                printf("\n");
            }
            if (i == 7)
            {
                printf(" ");
                for (j = 1; j <= 27; j++)
                {
                    printf("*");
                }
                printf("\n");
            }
    
            for (i = 8; i <= 13; i++)
            {
                for (a = 1; a <= 2 * i - 13; a++)
                {
                    printf(" ");
                }
                for (b = 1; b <= -4 * (i - 7) + 27; b++)
                {
                    printf("*");
                }
                printf("\n");
            }
            printf("              *");
            printf("\n\n\n");
            system("color 4a");//在此处修改背景颜色和爱心颜色 
        return 0;
    }
    
    效果: image.png
    练习1:1、编写程序,计算1到100(含100)范围内除所有7的倍数之外的数值之和。 image.png
    练习2:1、 输入一个正整数n,计算下式的和。
    image.png
    image.png

    相关文章

      网友评论

          本文标题:循环与分支

          本文链接:https://www.haomeiwen.com/subject/bfaxhdtx.html