zoukankan      html  css  js  c++  java
  • C语言6章循环结构

    7.1.1 什么是重复执行

    重担执行,意味着反反复复地执行一条语句,什么样的语句 呢?两种,一种是完全相同的语句,另一种是结构十分相似的语句 ,总之是一些可以转化成重复执行的操作。

    有for,while,do-while

    无论何种机制,一定满足3个通俗的条件之一或多个,有起点,有终点,有重复执行的语句。

    三种循环都能实现循环,虽然各有千秋,但是功能可以完全相互替代,下面我们通过两个示例来分别比较3种循环的实现方式。

    示例 1 编程获取用户输入的5个整数,然后输出5个整数中最小的整数。

    实现的方法有多种,本小节只比较3种循环实现的方法。无论如何循环的次数最多5次,也就是说本循环的次数是确定的。

    用for循环来实现:

    #include<stdio.h>
    
    int main(int argc,char* argv[])
    {
    int num1,num2;
    scanf("%d",&sum1);
    for (int i=1;i<=4;i++)
    {
      scanf("%d",&num2);
    if (num1>num2)
    num1=num2;      
    
    }
    printf("最小的数是%d",num1);
    return 0;
    }

    while 

    #include<stdio.h>
    main()
    {
      int num1,num2;
    scanf("%d",&num1);
    int i =1;
    while(i<=4)
    {
    
    scanf('%d',&num2);
    if (num1>num2)
    num1=num2;
    i++;
    
    
    
    }
    printf("最小的数是");
    return 0;
    
    
    }

    do-while

    #include <stdio.h>
    
    main()
    {
    
    int num1,num2;
    scanf("%d",&num1);
    int i=1;
    do 
    {
    scanf("&d",&num2);
    if (num1>num2)
    num1=num2;
    i++;
    
    
    }while(i<=4)
    
    printf("最大的数是%d:");
    return 0;
    
    }

    结:

    for 循环和while循环都是先判断,再执行循环体,而do-while是执行循环体再判断。while 与do-while循环的条件表达式只能放循环的终止条件,起始和步进条件分别放在循环的前面与循环的里面。

    示例2 由用户输入 一串字符,编程判断字符串中字符‘a’出现的次数。

    for

    #include<stdio.h>
    
    main()
    {
    
    puts("input an string");
    char c=getchar();
    int coun_numm =0;
    for (;c!='
    ';)
    {
    
    if (c=='a')
    count_num++;
    c=getchar();
    
    
    }
    printf("字母a的数目是:%d",count_num);
    return 0;
    
    
    
    }

    while 

    #include <stdio.h>
    main()
    
    {
    
    puts("inpuit a string");
    char c=getchar)_;
    int count_num=0;
    while(c!='a')
    {
    
    if (c=='a')
    count_num++;
    c=getchar();
    
    
    
    }
    
    printf("字母a的个数是%d",count_num);
    return 0;
    
    
    
    
    }

    do-while

    #include <stdio.h>
    
    main()
    {
    puts("input an string");
    char c;
    int count_num =0;
    
    do 
    {
    c = getchar ();
    if (c=='a')
     count_num++;
    
    
    
    }while(c!='
    ')
    printf("字母a的个数是%d",count_num);
    return 0;
    
    }

    for 的3个表达式可以依据问题的需要任意省略和填充,因此它的书写方式也是最灵活的

  • 相关阅读:
    大白话解说,半分钟就懂 --- 分布式与集群是什么 ? 区别是什么?
    intellij idea中去除@Autowired注入对象的红色波浪线提示
    用JQuery获取事件源怎么写
    springBoot 配置url 访问图片
    地图服务 纬度、经度对应坐标轴x,y
    5个问题带你了解export和import的使用以及export和export defalut 的区别
    5个你可能不知道的html5语义化标签
    CSS选择器[attribute | = value] 和 [attribute ^ = value]的区别
    前端ps实用小技巧
    7步教你使用git命令上传本地代码至github仓库(小白向)
  • 原文地址:https://www.cnblogs.com/zhengtaodoit/p/4930422.html
Copyright © 2011-2022 走看看