C 语言-第四章、循环结构程序设计
2016-11-01 10:56
260 查看
4_1 循环结构概述
4_2 循环结构控制语句:for语句
_2.1 for的一般形式:for(表达式1;表达式2;表达式3)
循环体语句
[例4-1] 用for循环求“1+2+3……+100”的值。
_2.2 for语句的使用
for(表达式1;表达式2;表达式3)
语句
注:表达式1,表达式2,表达式3可全省略或部分省略,但是“;”一定不能省。
4_3 循环结构控制语句:while 语句与do ……while语句
_3.1 while 语句
【例4-2】
特点:先判断表达式,后执行语句。
注:如果不加花括号,while语句的范围只到while后面的第一个分号。
_3.2 do ……while语句
一般格式:do
循环体语句
while(表达式);
【例4-3】
注:while表达式后的“;”一定不能省略。
_3.3 while语句与do ……while语句的比较
4_4 循环的嵌套
_4.1 输出3*4的矩阵:
1 2 3 4
2 4 6 8
3 6 9 12
【例4-6】输出九九乘法表。
_4.2 break 语句和continue 语句
1. 用break语句提前终止循环。
2. 用continue语句提前结束本次循环,继续下次循环的判定。
4_5 循环结构程序举例
输入一个大于3的整数,判断它是否为素数。
【法1】 直接相除至n-1
【法2】 直接相除至根号n
【例4-9】
【4-10】 输入两个整型数,求它们的最大公约数和最小公倍数。
4_2 循环结构控制语句:for语句
_2.1 for的一般形式:for(表达式1;表达式2;表达式3)
循环体语句
[例4-1] 用for循环求“1+2+3……+100”的值。
#include<stdio.h> int main() { int i,sum=0; for (i=1;i<=100;i++) sum=sum+i; printf("1+2+3+……+100=%d\n",sum); return 0; }
_2.2 for语句的使用
for(表达式1;表达式2;表达式3)
语句
注:表达式1,表达式2,表达式3可全省略或部分省略,但是“;”一定不能省。
4_3 循环结构控制语句:while 语句与do ……while语句
_3.1 while 语句
【例4-2】
#include<stdio.h> int main() { int i,sum=0; i=1; while (i<=100) { sum=sum+i; i++; } printf("1+2+3+……+100=%d\n",sum); return 0; }
特点:先判断表达式,后执行语句。
注:如果不加花括号,while语句的范围只到while后面的第一个分号。
_3.2 do ……while语句
一般格式:do
循环体语句
while(表达式);
【例4-3】
#include<stdio.h> int main() { int i,sum=0; i=1; do { sum=sum+i; i++; } while (i<=100); printf("1+2+3+……+100=%d\n",sum); return 0; }
注:while表达式后的“;”一定不能省略。
_3.3 while语句与do ……while语句的比较
4_4 循环的嵌套
_4.1 输出3*4的矩阵:
1 2 3 4
2 4 6 8
3 6 9 12
#include<stdio.h> int main() { int i,j,n; for (i=1;i<=3;i++) for (j=1;j<=4;j++,n++) { if (n%4==0) printf("\n"); printf("%d\t",i*j); } printf("\n"); return 0; }
【例4-6】输出九九乘法表。
#include<stdio.h> int main() { int i,j; for (i=1;i<=9;i++) { for (j=1;j<=i;j++) { printf("%d*%d=%-3d\t",i,j,i*j); } printf("\n"); } return 0; }
_4.2 break 语句和continue 语句
1. 用break语句提前终止循环。
2. 用continue语句提前结束本次循环,继续下次循环的判定。
4_5 循环结构程序举例
输入一个大于3的整数,判断它是否为素数。
【法1】 直接相除至n-1
#include<stdio.h> int main() { int i,n; printf("Please input a integer number n:"); scanf("%d",&n); for (i=2;i<=n-1;i++) if (n%i==0) break; if (i<n) printf("%d is not a prime number!\n",n); else printf("%d is a prime number!\n",n); return 0; }
【法2】 直接相除至根号n
#include<stdio.h> #include<math.h> int main() { int i,n,k; printf("Please input a integer number n:"); scanf("%d",&n); k=sqrt(n); for (i=2;i<=k;i++) if (n%i==0) break; if (i<k) printf("%d is not a prime number!\n",n); else printf("%d is a prime number!\n",n); return 0; }
【例4-9】
【4-10】 输入两个整型数,求它们的最大公约数和最小公倍数。
#include<stdio.h> int main() { int m,n,r,t,temp; printf("请输入两个正整数:"); scanf("%d%d",&m,&n); t=m*n; if (m<n) { temp=m; m=n; n=temp; } while ((r=m%n)!=0) { m=n; n=r; } printf("最大公约数是:%d\n",n); printf("最小公倍数是:%d\n",t/n); return 0; }
相关文章推荐
- Java语言程序设计-基础篇-第八版-第四章
- Java语言程序设计-基础篇-第八版-复习题-第四章
- 高质量程序设计指南C++/c语言 第四章
- JAVA语言程序设计基础课后习题第四章
- TsinghuaX: 00740043X C++语言程序设计基础 第四章提纲
- 谭浩强C语言程序设计课后习题解答(第四章)
- Java 语言程序设计 基础篇 原书第10版 第四章 第1,6~12,16题答案
- C程序设计语言(K&R)第四章学习笔记
- Java语言程序设计基础篇原书第十版第四章编程练习题答案
- C语言程序设计 练习题参考答案 第四章 (2) 二维数组
- C语言程序设计 练习题参考答案 第四章 (3) 字符数组
- C++程序设计语言--第四章:类型和声明
- 第6章 循环结构程序设计
- C#程序设计语言Version2.0简介(zz)
- c程序设计语言_习题8-6_利用malloc()函数,重新实现c语言的库函数calloc()
- 程序设计语言的范式
- <linux程序设计> 第四章 [ 程序参数 / 环境变量 / 日期与时间]
- Java语言程序设计-基础篇-第八版-编程练习题-第八章
- Go语言程序设计的一些规则和注意事项
- 程序设计语言的定义及一般特征