首页 > 其他分享 >Day4——分支与循环

Day4——分支与循环

时间:2023-02-08 00:13:00浏览次数:37  
标签:case 语句 Day4 break while 循环 printf 分支

分支与循环语句

if条件语句:if(判断条件)…else if(条件二)…  …… else

while循环语句:  while(条件)    {  }

for循环:for(初始值;条件句;调整值)

switch分支语句:switch(常量){ case 1;  case 2;…}

do{…}while();循环语句:与while类似,但是要先执行 再判断。

 

可以相互嵌套,以找出最优解法为优

#define _CRT_SECURE_NO_WARNINGS 1

#include <stdio.h>



int main()
{

    //分支与循环语句

    //分支语句

    //if语句;辨真假语句——>表达式为真,即执行,否则跳出执行下一条指令——>判别方式:0即为假,非0为真
    int age = 10;
    scanf("%d", &age);

    if (age < 18)
        printf("未成年,请离开\n");
    else if (age >= 18 && age < 50)
        printf("已成年,感谢使用\n");
    else                                       // else 仅 与离他 最 近的 if 匹配
        printf("请注意使用时间,以免对身体造成伤害\n");


    //判断一个数是否为奇数
    int a = 0;
    scanf("%d", &a);
    if (a % 2 == 1)
        printf("该数为奇数\n");
    else
        printf("该数为偶数\n");

    //switch语句:常用于多分支,case值决定入口,如果要单条执行需要在其后添加break; 考虑操作数不在switch中的可能,用default编辑超出时的提示信息

    int week = 0;
    scanf("%d", &week);
    if (week > 7)
        week = week % 7;
    switch (week)
    {
    case 1:
        printf("星期一");
        break;
    case 2:
        printf("星期二");
        break;
    case 3:
        printf("星期三");
        break;
    case 4:
        printf("星期四");
        break;
    case 5:
        printf("星期五");
        break;
    case 6:
        printf("星期六");
        break;
    case 7:
        printf("星期日");
        break;
    }

    //循环语句:while    for     do......while

    //while循环:表达式为真,则一直循环,否则推出;也可以break跳出循环;continue作用为跳过本次循环后面语句,重新判断是否继续进行循环;
    int ch = 0;
    while ((ch = getchar()) != EOF)         //getchar()  得到一个新字符
    {
        putchar(ch);                        //putchar()  输出一个新字符
    }

    //for循环:   for(赋初值;给条件;调整初值)
    int i = 0;
    for (i = 1; i <= 10; i++)
    {
        printf("i=%d\n", i);
    }

    //do...while循环:先执行一次后判断
    int q = 0;
    do
    {
        printf("q=%d \n", q);
        q++;
    } while (q < 10);


    //练习:
    //计算n的阶乘
    int n = 0;
    int m = 0;
    int j = 1;
    int o = 0;
    //printf("请输入N值:\n");
    //scanf("%d", &n);
        
    //练习:在一个有序数组中查找具体的某个数字;如查找7;
        int arr1[] = { 0,1,2,3,4,5,6,7,8,9 };
        //try1(遍历)
        /*int x = 0;
        for (x = 0; x < 10; x++)
        {
            arr1[x];
            printf("%d", arr1[x]);
            if (arr1[x] == 7)
            {
                printf("在第%d位", x);
                break;
            }
        }*/


        //try2(二分)
        int f = 7;             //要查找的数字
        int se = sizeof(arr1) / sizeof(arr1[0]);      //可求解数组元素个数
        int L = 0;                                    //第一位元素
        int R = se-1;                                    //最后以为元素
        
        while (L <= R)
        {
            int mind = (L + R) / 2;
            if (arr1[mind] < f)
            {
                L = mind + 1;
            }
            else if (arr1[mind] > f)
            {
                R = mind - 1;
            }
            else
            {
                printf("在第%d位", mind);
                break;
            }
            if (L > R)
            {
                printf("找不到了");
            }
        }

    return 0;
}

 

标签:case,语句,Day4,break,while,循环,printf,分支
From: https://www.cnblogs.com/bk-Mr-ji/p/17100223.html

相关文章

  • C++中的共享指针以及循环引用
    C++中shared_ptr对象之间可以共享对象的拥有权,但是这种共享的对象引用在某些情况下可能会引发一些问题。例如,循环引用会造成两个对象之间相互引用,无法删除对象。一个循环......
  • 10.11循环处理的实现方法
    接下来,让我们继续解析汇编语言的源代码,看一下for循环及if条件分支等C语言程序的流程控制是如何实现的。代码清单10-8是将局部变量i作为循环计数器“连续进行10次......
  • 10.12条件分支的实现方法
    下面让我们来看一下条件分支的实现方法。条件分支的实现方法同循环处理的实现方法类似,使用的也是cmmp指令和跳转指令,这一点估计大家也预料到了。没错,条件分支就是利用这......
  • 基于别人的分支建立自己的分支
    基于别人的分支建立自己的分支可以查看分支gitbranch(查看当前本地的分支)gitbranch-r(查看远程的分支)适合本地没有想要的分支去查询远程的gitbranch-a(查......
  • 分支语句及三元运算符
    三元运算符var a=boolean?true:false//boolean是true取truefalse取false表达式算数表达1-1-1条件表达式1-1>1关系表达式true&&1运算符的执行流程示例......
  • java控制结构1之if else和嵌套分支
    1.程序流程控制介绍在程序中,程序运行的流程控制决定程序是如何执行的,是我们必须掌握的,主要有三大流程控制语句。1)顺序控制2)分支控制3)循环控制2.顺序结构2.1不做......
  • 软件测试|最全的Python for循环和while循环使用介绍
    Pythonfor循环和while循环循环简单来说就是让一段代码按你想要的方式多次运行。软件拥有强大的运算能力,就是由循环提供的。在Python中支持的循环由两种:while循环和for......
  • git 分支
    如果主分支不为master,如new_trunk:1、#gitcheckout-bV3.18.45origin/V3.18.452、#gitbranch-va3、#gitcheckoutnew_trunk4、#gitmergeV3.18.45-m“Build-Ta......
  • 【算法训练营day41】LeetCode343. 整数拆分 LeetCode96. 不同的二叉搜索树
    LeetCode343.整数拆分题目链接:343.整数拆分独上高楼,望尽天涯路一开始想到的是用数学证明化简的方法,每次拆成尽可能多的3,最后剩下的是2或4,此时相乘最大。classSoluti......
  • 51Nod 1050 循环数组最大子段和
    N个整数组成的循环序列a[1],a[2],a[3],…,a[n],求该序列如a[i]+a[i+1]+…+a[j]的连续的子段和的最大值(循环序列是指n个数围成一个圈,因此需要考虑a[n-1],a[n],a[1],a[2]这样的......