今天更新一个C语言的循环,简单点就是就是我们平时在使用电脑时不停的刷新网页,生活中每天都要吃饭等等就是循环,而编程中也有不断循环的过程,或者遇到符合的条件结束循环

  下面进入今天的主题:

  需求:用计算机计算从1加到10的和

  一种笨方法:

    解题思路:

    1、定义2个变量:计数器,总和,并初始化为0

    2、计数器加1(1)

    3、总和=总和+计数器

    4、计数器加1(2)

    5、总和=总和+计数器

    6、……   

    7、计数器加1(10)

    8、总和=总和+计数器

    9、输出总和55 

  程序1

    计算1+2+3+…+9+10

// 5_1_计算1+2+3+....10的和,输出在屏幕上
#include <stdio.h>
main()
{
int i, j; //i 是累加器, j是计数器
i = ;
j = ;
i = i + j; // i = 0 + 1
j++;
i = i + j; // i = 1 + 2
j++;
i = i + j;
j++;
i = i + j;
j++;
i = i + j;
j++;
i = i + j;
j++;
i = i + j;
j++;
i = i + j;
j++;
i = i + j;
j++;
i = i + j;
j++;
printf("%d\n", i);
system("pause");
}

  ※累加器一般初始化为0,请同学们想想累乘器可否初始化为0? NO 初始值应该为 1 零乘以任何数都得零!

  goto语句

  格式:

    goto 标号;

      标号格式:

      标识符:语句;

  规律:goto语句通常配合if语句使用,否则容易构成死循环

  程序2

    计算1+2+3+…+9+10的goto解法

//5_2_计算1+2+3+....+9+10的goto解法,结果输出在屏幕上面
#include <stdio.h>
#include <stdlib.h>
main()
{
int i, j; //i 是累加器,j 是计数器
i = ;
j = ; mark: // goto 语句用的标记
i = i + j;
j++; //如果没有这一行程序就会进入死循环
if (j <= ) goto mark;
printf("%d\n", i);
system("pause"); }

  下面是goto流程图:

  while语句

格式:

  while(条件表达式)

  {

    若干语句

    …

  }

  程序3

    计算1+2+3+…+99+10的while解法

// 5_3_计算1+2+3+.....+10的while解法
#include <stdio.h>
main()
{
int i, j; // i 是累加器 j 是计数器
i = ;
j = ; while (j <= )
{
i = i + j;
j++;
}
printf("%d\n", i);
system("pause");
}

   上面的代码中:

      printf放在循环体内和外的差别

      在循环里面的执行结果是把每一步都会打印出 i 的结果。打印10次

      

      在循环外面的执行结果是直接打印出 i 最后的结果。打印1次

      

  do while语句

格式:

  do

  {

    若干语句

    …

   } while(条件表达式);

  程序4

    打印出0到2018年之间所有的闰年

//5_4_打印出0到2018年所有的闰年
#include <stdio.h>
main()
{
int year = ;
do
{
// 4年一闰,100年不闰,400年又闰
if (year % == && year % != || year % == )
printf("%d\t", year);
year++;
} while (year<=); system("pause");
}

  ※所有的循环语句都是条件满足才执行循环体

  ※do while语句至少会执行一次循环体,while则有可能一次都不执行。

  作业

  1、写出计算1+2+3+…+99+100的do while解法。

//5_5_计算1+2+3+....10的 do while解法
#include <stdio.h>
main()
{
int i, j; //i 是累加器 j是计数器
i = ;
j = ;
do
{
i = i + j;
j++;
} while (j <= ); printf("%d\n", i);
system("pause");
}

  

  2、求10!   (求10的阶乘)

//5_6_计算10的阶乘
#include <stdio.h>
main()
{
int a = , s = ;
do
{
s = s*a;
a++;
} while (a<=);
printf("%d\n", s); //结果是:3628800
system("pause");
}

 

最后分享一首古诗给大家!

  《冬夜读书示子聿》

      陆游

   古人学问无遗力

   少壮工夫老始成

   纸上得来终觉浅

   绝知此事要躬行

C语言----循环结构1(基础篇五)的更多相关文章

  1. C语言----选择结构(基础篇三)

    大家好,忙里抽空更新一下自己的博客,算是自己的一个进步,C语言视频启蒙我早就看完啦,只是觉得这个视频真不错,所以给大家分享一下,同时自己还有很多没有理解透彻,写写博客算是一个笔记更是对自己所学的知识的 ...

  2. C语言-循环结构及break、continue

    循环结构 --1-- 结构循环 1.1 while循环 1.2 do…while循环 1.3 for循环 --2-- break和continue 2.1 break关键字 2.2 continue关 ...

  3. docker+k8s基础篇五

    Docker+K8s基础篇(五) service资源介绍 A:service资源的工作特性 service的使用 A:service字段介绍 B:ClusterIP的简单使用 C:NodePort的简 ...

  4. C语言------循环结构II

    仅供借鉴.仅供借鉴.仅供借鉴(整理了一下大一C语言每个章节的练习题.没得题目.只有程序了) 文章目录 1 .实训名称 2 .实训目的及要求 3 .源代码及运行截图 4 .小结 1 .实训名称 实训6: ...

  5. C语言----输入输出语句(基础篇二)

    今天整理一下自己的基础篇输入和输出的理解,自己没有研究系统输入和输出函数,以后有时间在去深究,之前在别人的博客里面看到这么一句话分享给大家,“学习就是一个不断抄袭,模仿,练习和创新的一个过程”. 使用 ...

  6. C语言------循环结构I

    文章目录 1 .实训名称 2 .实训目的及要求 3 .源代码及运行截图 4 .小结 1 .实训名称 实训5:循环结构I 2 .实训目的及要求 1 .熟练掌握while.do-while和for语句实现 ...

  7. R语言︱SNA-社会关系网络 R语言实现专题(基础篇)(一)

    每每以为攀得众山小,可.每每又切实来到起点,大牛们,缓缓脚步来俺笔记葩分享一下吧,please~ --------------------------- 笔者寄语:这里所有的应用代码都来自与igrap ...

  8. iOS学习之C语言循环结构

    一.while循环    while (循环条件) {        循环体:    }    // 1.定义循环变量    int time = 1;    // 2.循环条件    while ( ...

  9. C#基础篇五值类型和引用类型

    using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace P01M ...

随机推荐

  1. canal中间件

    简介: 基于数据库增量(模拟MySQL slave的交互协议)日志解析,提供增量数据订阅和消费(客户端与canal建立关系) 安装版本:1.1.0 git 环境需求: jdk1.7以上 mysql开启 ...

  2. Java八大排序之基数排序

    基数排序(radix sort)属于“分配式排序”(distribution sort),又称“桶子法”(bucket sort)或bin sort,顾名思义,它是透过键值的部份资讯,将要排序的元素分 ...

  3. 题解:洛谷P1891 疯狂LCM

    原题链接 题目描述 描述: 众所周知,czmppppp是数学大神犇.一天,他给众蒟蒻们出了一道数论题,蒟蒻们都惊呆了... 给定正整数N,求LCM(1,N)+LCM(2,N)+...+LCM(N,N) ...

  4. Django学习(不定期更新)

    基于luffy项目的疑问点解决 删除掉.git文件夹,应该是该项目不需要git 在git克隆代码之后,初始化git,自动创建git仓库需要的目录,这些文件夹存在于项目下的.git文件夹中 .git文件 ...

  5. 算法——回文(palindrome)

    回文(palindrome):指的是从头读到尾与从尾读到头一模一样的字符串. 分别在C.Java与Python实现回文检测: C: #include <stdio.h> #include ...

  6. Flask常用实列化参数

    Flask中实列化配置: app = Flask( __name__, template_folder=’temp’ , ...... ) >template_folder = "te ...

  7. 洛谷p1458顺序的分数题解

    抱歉,您们的蒟蒻yxj不知道怎么插入链接qwq就只好粘个文本的了qwq:https://www.luogu.org/problemnew/show/P1458 没错,是个黄题,因为你们的小蒟蒻只会这样 ...

  8. PATA1062 Talent and Virtue

    技术要点就是,一个是cmp函数的书写,首先应该分清楚排序关系,然后按照顺序依次排下去. 还有这里有一个巧妙点就是,在结构体中加入了类别这个标签. 学会抽象分类解决,排序比较函数cmp本质工作就是比较结 ...

  9. Vue自动化注册全局组件脚本

    今天有一个idea,vue一些组件,可能会全局都用到,我觉得在main.js写 Vue.component(name, instance) 然后很命令式,写着也不好看,想着能够有一个函数可以指定加载比 ...

  10. 你的ThreadLocal线程安全么

    想必很多小伙伴们对ThreadLocal并不陌生,ThreadLocal叫做线程本地变量,也就是ThreadLocal为变量在每个线程中都创建了一个副本,每个线程可以访问自己内部的副本变量.那么,我们 ...