1、实验2 2 将输入的百分之的分数 按下列分数段输出等级 要求 使用switch main intscore scanf d 3 实验2 3 从键盘输入三个数 分别代表三条线断的长度 编程实现判断是否能组成三角形 及类型 main inta b c scanf d d d main inta b c scanf d d d 第六章循环控制 循环结构有两种形式 当型循环和直到型循环 下面分别是当型循环结构的传统流程图和N S流程图表示 直到型循环结构的传统流程图和N S流程图表示 goto语句构成循环while语句do while语句for语句 在C语言中以下语句可以用来实现循环结构 goto语句
2、构成循环 一般形式 goto语句标号 例6 1 求1 2 3 4 100main inti 1 sum 0 loop if i 100 sum sum i i gotoloop printf d sum while语句 一般形式 while 表达式 语句 例6 2 求1 2 3 4 100main inti 1 sum 0 while i 100 sum sum i i printf d sum 开始 sum 0i 1 i 100 N Y sum sum ii i 1 结束 do while语句 一般形式 do循环体语句while 表达式 例6 3 求1 2 3 4 100main inti
3、1 sum 0 do sum sum i i while i 100 printf d sum N S流程图 for语句 一般形式 for 表达式1 表达式2 表达式3 循环体 例6 4 求1 2 3 4 100main inti sum 0 for i 1 i 100 i sum sum i printf d sum N S流程图 几种循环语句的比较 While for循环 是先判断表达式 后执行语句 do while循环 是先执行语句 后判断表达式 2 for循环和while循环可以互相代替 而for语句的功能更强 用法更灵活 3 while和do while语句只有当表达式的第一次的值为
4、真时才可以互相代替 习题1 求1 2 3 20 main inti sum 0 for i 1 i 20 i sum sum i printf d sum 习题2 求1 2 3 5 main inti sum 1 for i 1 i 5 i sum sum i printf d sum 习题3 求1 2 3 20 main inti floatsum 1 for i 1 i 20 i sum sum i printf f sum 习题4 求1 2 n 即n main inti n floatsum 1 scanf d 习题2 求1 2 n main inti n sum 0 scanf d 思
5、考 1 求1 3 5 7 前10项 2 求 3 求2 1 3 2 5 3 8 5 前10项 核心思想 for s sum sum s 1 确定循环次数 2 构造s项 达到目的 习题5 求1 2 n main inti n floats 1 sum 0 scanf d 提示 让变量s依次为 1 2 3 用Sum对s进行累加 循环的嵌套 main inti j for i 1 i 3 i for j 1 j 5 j printf printf n 例6 4输出图形 请思索此条语句的作用 main inti j for i 1 i 5 i for j 1 j i j printf printf n
6、思考 输出图形呢 main inti j for i 1 i 5 i for j 1 j 5 j printf printf n 思考 输出图形 main inti j for i 1 i 9 i for j 1 j i j printf d d d i j i j printf n 这种方案打印出来的九九表是正三角 请思索如何对程序修改 以实现打印出倒三角 大家可以试着在纸上分析出这一过程 例6 5打印九九乘法表 B 6 break和continue语句 break 跳出当前的switch语句或循环continue 结束本次循环 循环继续 例6 6 阅读程序 说出本程序段的作用main in
7、tn for n 1 n 100 n if n 5 0 continue printf d n 作用 求出1 100之间所有能被5整除的数 思考 如果continue用break替换呢 习题6 判断一个输入的值m是否为素数 方法一 读入m的值 k sqrt m i 2 当i k时循环 m i 0 是 否 break i i k 否 是 输出 m是素数 输出 m不是素数 include includemain intm i k scanf d 源程序1 循环变量终值法 方法二 读入m的值 k等于m的平方根 i 2 ip 0 当i k时循环 i能整除m 是 否 ip 1 用break结束循环 i ip 0 否 是 输出 m是素数 输出 m不是素数 include includemain intm i k ip 0 scanf d 源程序1 变量标示法 几种循环语句的比较 While for循环 do while循环 是先判断表达式 后执行语句 是先执行语句 后判断表达式 2 for循环和while循环可以互相代替 而for语句的功能更强 用法更灵活 While循环 开始 表达式1 表达式2 N Y 循环体 结束 表达式3 for循环 设初值