第5章 循环结构程序设计

三种基本循环控制结构

使用while语句实现循环

先判断条件表达式,后执行循环体语句

while (循环条件表达式)
{
循环体
}

用do-while语句实现循环

先无条件地执行循环体,然后判断循环条件是否成立

do
{
语句;
}
while(表达式);

用for语句实现循环

for语句的执行过程:

(1) 先求解表达式1

(2) 求解表达式2,若其值为真,执行循环体,然后执行下面第(3)步。若为假,则结束循环,转到第(5)步

(3) 求解表达式3

(4) 转回上面步骤(2)继续执行

(5) 循环结束,执行for语句下面的一个语句

for(初始条件;循环条件表达式;循环的调整器)
语句;
循环的嵌套

(1) 一般情况下,3种循环可以互相代替

(2) 在while和do–while循环中,循环体应包含使循环趋于结束的语句。

(3) 用while和do–while循环时,循环变量初始化的操作应在while和do–while语句之前完成。而for语句可以在表达式1中实现循环变量的初始化。

改变循环执行的状态

用break语句提前终止循环

用continue语句提前结束本次循环

break语句和continue语句的区别

continue语句只结束本次循环,而不是终止整个循环的执行

break语句结束整个循环过程,不再判断执行循环的条件是否成立

循环程序举例
求Π的近似值
#include <stdio.h>
#include <math.h>
int main()
{ int sign=1; double pi=0,n=1,term=1;
while(fabs(term)>=1e-6)
{ pi=pi+term;
n=n+2;
sign=-sign;
term=sign/n;
}
pi=pi*4;
printf("pi=%10.8f\n",pi);
return 0;
}
求斐波那契数列的前40个数
#include <stdio.h>
int main()
{ int f1=1,f2=1,f3; int i;
printf("%12d\n%12d\n",f1,f2);
for(i=1; i<=38; i++)
{ f3=f1+f2;
printf("%12d\n",f3);
f1=f2;
f2=f3;
}
return 0;
}
输入一个大于3的整数n,判断它是否是素数(质数)
#include<studio.h>
int main(){
int n,i;
print("n=?");scanf("%d",&n);
for(i=2;i<=n-1;i++)
if(n%i==0)break;
if(i<n)printf("%d is not\n",n);
else printf("%d is \n",n);
return 0;
}
译密码。为使电文保密,往往按一定规律将其转换成密码,收报人再按约定的规律将其译回原文。(改变为其后第4个字母)
char c;
c=getchar();
while(c!=‘\n’)
{ if((c>=‘a’ && c<=‘z’) || (c>=‘A’ && c<=‘Z’))
{ if(c>='W' && c<='Z' || c>='w' && c<='z')
c=c-22;
else c=c+4;
}
printf("%c",c);
c=getchar();
} 程序改进
char c;
while((c=getchar())!=‘\n’)
{ if((c>=‘A’ && c<=‘Z’) || (c>=‘a’ && c<=‘z’))
{ c=c+4;
if(c>=‘Z’ && c<=‘Z’+4 || c>‘z’)
c=c-26;
}
printf("%c",c);
}

【C语言】第5章 循环结构程序设计的更多相关文章

  1. 算法竞赛入门经典_第二章:循环结构程序设计_上机练习_MyAnswer

    习题2-1 位数 输入一个不超过109的正整数,输出它的位数.例如12735的位数是5.请不要使用任何数学函数,只用四则运算和循环语句实现. #include<stdio.h> int m ...

  2. C语言 第五章 循环结构练习

    一.计算15+16+17 …98+99的和 for实现 #include "stdio.h" void main() { //15+16+17 …98+99 ; ;i<=;i ...

  3. C语言 第五章 循环结构

    一.for 请在屏幕上输出1000个*号 printf("*************************...."); #include "stdio.h" ...

  4. 160809209_李梦鑫_C语言程序设计实验3 循环结构程序设计

    <C语言程序设计>实验报告 学 号 160809209 姓 名 李梦鑫 专业.班 计科16-2班 学    期 2016-2017 第1学期 指导教师 黄俊莲 吉吉老师 实验地点 C05 ...

  5. 【C语言】第4章 选择结构程序设计

    第4章 选择结构程序设计 C语言有两种选择语句: if 语句,实现两个分支的选择结构 switch 语句,实现多分支的选择结构 输入3个数a,b,c,要求按由小到大的顺序输出. 可以先用伪代码写出算法 ...

  6. Python程序设计实验报告四:循环结构程序设计(设计型实验)

    安徽工程大学 Python程序设计 实验报告 班级   物流191   姓名  姚彩琴  学号3190505129 成绩 日期     2020.4.8     指导老师       修宇 [实验名称 ...

  7. 第5章 简单的C程序设计——循环结构程序设计

    5.1 为什么需要循环控制 前面介绍了程序中常用到的顺序结构和选择结构,但是只有这两种结构是不够的,还需要用到循环结构(或称重复结构).因为在程序所处理的问题中常常遇到需要重复处理的问题. 循环结构和 ...

  8. C 语言入门第五章--循环结构和选择结构

    C语言中有三大结构,分别是顺序结构.选择结构和循环结构: 逻辑运算: 与运算: && 或运算:|| 非运算:! ==== #include<stdio.h> int mai ...

  9. 【blockly教程】第五章 循环结构

    在这里,我们将介绍一个新游戏--Pond Tutor 在Pond Tutor(https://blockly-games.appspot.com/pond-tutor)这个游戏中,我们将扮演黄色的鸭子 ...

随机推荐

  1. 公有云上构建云原生 AI 平台的探索与实践 - GOTC 技术论坛分享回顾

    7 月 9 日,GOTC 2021 全球开源技术峰会上海站与 WAIC 世界人工智能大会共同举办,峰会聚焦 AI 与云原生两大以开源驱动的前沿技术领域,邀请国家级研究机构与顶级互联网公司的一线技术专家 ...

  2. js排序——sort()排序用法

    sort() 方法用于对数组的元素进行排序,并返回数组.默认排序顺序是根据字符串Unicode码点. 语法:array.sort(fun):参数fun可选.规定排序顺序.必须是函数.注:如果调用该方法 ...

  3. FreeRTOS-03-其它任务相关函数

    说明: 本文仅作为学习FreeRTOS的记录文档,作为初学者肯定很多理解不对甚至错误的地方,望网友指正. FreeRTOS是一个RTOS(实时操作系统)系统,支持抢占式.合作式和时间片调度.适用于微处 ...

  4. 【数据结构与算法】字符串匹配(Rabin-Karp 算法和KMP 算法)

    Rabin-Karp 算法 概念 用于在 一个字符串 中查找 另外一个字符串 出现的位置. 与暴力法不同,基本原理就是比较字符串的 哈希码 ( HashCode ) , 快速的确定子字符串是否等于被查 ...

  5. maze writeup

    maze writeup 攻防世界的一道迷宫题,第一次接触这样的题,个人感觉很有意思,收获也挺多,做一篇笔记记录一下. 程序分析 __int64 sub_4006B0() { signed __int ...

  6. 7年老Android收到阿里offer,跟领导提离职被怼:为年薪百万不做兄弟?

    在当今社会,钱就是衡量一个人价值的标准,如果你在一家公司,领导再怎么重用你,但是薪资待遇却很低,这样根本是很难留住人,毕竟工作就是为了赚钱,要是连工资都满足不了,谈其他根本就是扯淡. 最近在职业论坛看 ...

  7. OpenStack镜像制作笔记 --以windows8.1-amd64为例

    by hyc 目录 1.下载win8_64位的iso文件 2.下载对应电脑的vnc 3.下载Xshell软件 4.连接成功后,在Xshell下安装软件包 5.下载FileZilla Client软件 ...

  8. Java之Listener

    Java之Listener Listener监听器 监听器有很多种,大部分还是在GUI用的比较多,这里简单记录一点关于HttpSessionListener的 统计session count List ...

  9. Linux提权手法整理

    之前写过了windows提权小结,这下一篇水什么就有了嘛,于是有了这篇水文,整理一下Linux提权 前篇windows提权小结 ,链接送上 https://www.cnblogs.com/lcxblo ...

  10. Django ORM多表查询

    基于双下划线查询 根据存的时候,字段的数据格式衍生的查询方法 1.年龄大于35岁 res = models.AuthorDetails.objects.filter(age__lt=80) print ...