清华大学出版社 TSINGHUA UNIVERSITY PRESS 回顾:算法的概念、特性、表示与设计方法 例1辗转相除法求最大公约数输入mn 输入mn 假设m>=n: ym> NY m>n N m=10:n=6:r=4 m. 互换 mn 互换 6:n=4:r=2 rmon r=mon m=4:n=2:r=0 r不为零时 最大公约数为n=2 n m r =>nl 编程技巧:遇循环时考虑 r>n 输出n 当.执行 rmon 直到r=0 输出n
C语言程序设计(第三版) http://ccf.tsinghua.edu.cn 1 例1 辗转相除法求最大公约数 假设m>=n: m = 10; n=6; r = 4 m = 6; n = 4; r = 2; m = 4; n = 2; r = 0; 最大公约数为n = 2 Y N 输入m,n m>n m,n互换 r=m%n 当r不为零时 n=>m r=>n r=m%n 输出n 回顾:算法的概念、特性、表示与设计方法 Y N m,n互换 输入m,n m>n r = m%n r = 0 Y 输出n N n =>m r =>n 直到r =0 编程技巧:遇循环时考虑 当…执行…
回顾:算法的概念、 n=100 flag=0 例2输出100-200间的素数当n<=200 2 思考:图2-34循环结束条件[是素数当<=m(2001as 量盒库数器如乘器)/与素数 编程技巧:标记变量(变 0i=0 # clude<math片库函数输出n flag=1 void maino n+1 n=100 int n, i, flag; n=100 200 while(n<=200) flag=0 i=2 a i=2 当i≤=sqrt(200)且fag= while(i<=sqrt(200)&&flag==0) n%=0 if(n %i=0)flag=l; i=i+ flag=l n=n2、则 printf("e%dm”,n); if(flas flag=0 输出n n=n+1 语言程序设计(第三版)‖http://ccttsinghua.edu.cn2
C语言程序设计(第三版) http://ccf.tsinghua.edu.cn 2 例2 输出100-200间的素数 思考:图2-34循环结束条件 编程技巧:标记变量(变 量仓库 计数器 累加/乘器) 回顾:算法的概念、特性、表示与设计方法 n=100 当n<=200 判断n是否素数 n为素数 Y N 输出n n=n+1 i=2 当i<=sqrt(200)且flag=0 n%i=0 Y N flag=1 flag=0 i=i+1 n=100 当n<=200 flag=0 Y N 输出n i=2 当i<=sqrt(200)且flag=0 n%i=0 Y N flag=1 flag=0 i=i+1 n=n+1 #include<stdio.h> #include<math.h>/*库函数*/ void main() { int n,i,flag; n=100; while(n<=200) { flag=0; i=2; while(i<=sqrt(200)&&flag==0) { if(n%i==0)flag=1;i=i+1;} } if(flag==0)printf(“%d\n”,n); n=n+1; }
回顾:算法的概念、表示与设计方法 例3求t1+2+.+100 0→t.1→i 开始 t+1→t #include<stdio. h> 0→t,1→1 i+1→i void main O 直到讠100 Int l sum 廿+i→t sum=06=1; 输出t的值 while(i<=100); 1+1→→1 sum=0 sumesumtI =i+1 不成立 i>100 while(i<=100) 成立 printf odn",, sum) ∠输出t的值 sum-tl-sum }/结果为5050/ i+1→i 结束 Print(sum)
0t,1i t+it i+1i 直到 i>100 输出 t 的值 回顾:算法的概念、表示与设计方法 开始 0t,1i t+it i+1i i>100 不成立 成立 输出 t 的值 结束 sum=0 i=1 while(i<=100) sum+i→sum i+1→i Print(sum) #include<stdio.h> void main() { int i,sum; sum=0; i=1; while(i<=100) { sum=sum+i; i=i+1; } printf(“%d\n”,sum); }/*结果为5050*/ ; , 例3 求t=1+2+…+100
清华大学出版社 TSINGHUA UNIVERSITY PRESS 第三章 就摄算炫
第三章
清华大学出版社 TSINGHUA UNIVERSITY PRESS ●主要内容 描 3.1C的数据类型 述 规 32常量与变量 33-3.5整型、浮点型、字符型数据 操3.6变量赋初值 作 规 37各数值型数据间的混合运算 38-3.10各类运算符和表达式
⚫ 主要内容 3.1 C的数据类型 3.2 常量与变量 3.3-3.5 整型、浮点型、字符型数据 3.6 变量赋初值 3.7 各数值型数据间的混合运算 3.8-3.10 各类运算符和表达式 描 述 规 则 操 作 规 则