for(i=2;i<20;i++) TY PRESS f[i]=f[i-2]+f[i-1] for(i=0;i<20;i++) if语句用来控 if(1%5==0) printf( 制换行,每行 ); 输出5个数据。 printf("%12d″,f[i]) }/*For循环结束*/ 运行结果如下: 3 5 8 13 21 34 55 89 144 233 377 610 987 1597 2584 4181 6765
C程序设计(第三版) http://ccf.tsinghua.edu.cn 16 for(i=2;i<20;i++) f[i]=f[i-2]+f[i-1]; for(i=0;i<20;i++) { if(i%5==0) printf(″\ n″); printf(″%12d″,f[i]) } /*For循环结束*/ } /*程序结束*/ 运行结果如下: 1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597 2584 4181 6765 if语句用来控 制换行,每行 输出5个数据
清华大学出版社 TSINGHUA UNIVERSITY PRESS 程序举例2:用起泡法对10个数排序由小到大) 8 第一趟比较 4 5-420 859420 854209 0 第1次第2次第3次第4次第5次结果 经过第一趟(共5次比较与交换)后,最大的数9已“沉 底”。然后进行对余下的前面5个数第二趟比较, C程序设计(第三版) http://ccf.tsinghua.edu.cn 17
C程序设计(第三版) http://ccf.tsinghua.edu.cn 17 程序举例2:用起泡法对10个数排序(由小到大)。 第 一 趟 比 较 经过第一趟(共5次比较与交换)后,最大的数9已“沉 底” 。然后进行对余下的前面5个数第二趟比较
清华大学出版社 TSINGHUA UNIVERSITY PRESS 8 5420 542 542 第二趟比较 第1次第2次第3次第4次结果 如果有n个数,则要进行n-1趟比较。在第1趟比较 中要进行n-1次两两比较,在第j趟比较中要进亻 n-j次两两比较。 C程序设计(第三版) http://ccf.tsinghua.edu.cn 18
C程序设计(第三版) http://ccf.tsinghua.edu.cn 18 第 二 趟 比 较 如果有n个数,则要进行n-1趟比较。在第1趟比较 中要进行n-1次两两比较,在第j趟比较中要进行 n-j次两两比较
清华大学出版社 TSINGHUA UNIVERSITY PRESS 程序流程图如下: 输入n个数给a[1]到a[n] for j=1 to n-1 for i=1 to n-j ali>ali+1 真 假 a[i令>a[i+1] 输出a[1]到a[n] C程序设计(第三版) http://ccf.tsinghua.edu.cn 19
C程序设计(第三版) http://ccf.tsinghua.edu.cn 19 程序流程图如下:
清华大学出版社 TSINGHUA UNIVERSITY PRESS 程序实例73 #include <stdio.h> void maino int a [10] Int 1,, t, printf("input 10 numbers n") for(i=0;i<10i+) scanf("%od",&aiD) printf("n"); 「c程序设计(第三版) http://ccf.tsinghua.edu.cn
C程序设计(第三版) http://ccf.tsinghua.edu.cn 20 程序实例7.3: #include <stdio.h> void main() { int a[10]; int i,j,t; printf(″input 10 numbers :\n″); for (i=0;i<10;i++) scanf("%d",&a[i]); printf("\n");