for(i=2;i<20;i++) Y 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 13 21 55 89 144 233 377 610 987 1597 2584 4181 6765
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个数据
程序举例2:用起泡法对10个数排序(由小到大)。 起泡法的思路是:将相邻两个数比较,将小的调到前头 第一趟比较 8-5420 5-42 859420 4-920 854290 第1次第2次第3次第4次第5次结果 注经过第一趟(共5次比较与交换)后,最大的数9已“沉 底”。然后进行对余下的前面5个数第二趟比较
程序举例2:用起泡法对10个数排序(由小到大)。 起泡法的思路是:将相邻两个数比较,将小的调到前头。 第 一 趟 比 较 经过第一趟(共5次比较与交换)后,最大的数9已“沉 底” 。然后进行对余下的前面5个数第二趟比较, 注
清华大学出版社 TSINGHUA UNIVERSITY PRESS 8 5420 8420 542 542 第二趟比较 第1次第2次第3次第4次结果 注 经过第二趟(共4次比较与交换)后,得到次大的数8。 如果有n个数,则要进行n-1趟比较。在第1趟比较中 要进行n-1次两两比较,在第j趟比较中要进行n-j次两 两比较
第 二 趟 比 较 如果有n个数,则要进行n-1趟比较。在第1趟比较中 要进行n-1次两两比较,在第j趟比较中要进行n-j次两 两比较。 经过第二趟(共4次比较与交换)后,得到次大的数8。 注
学出 程序流程图如下: TSINGHUA UNIVERSITY PRESS 输入n个数给a[1]到a[n] for j=1 to n-1 for i=1 to n-j a[i>a[i+1] 真 假 a[i令>a[i+1] 输出 a[1] 到a[n]
程序流程图如下:
学中 程序实例7.3 #include <stdio. h> void main( int a [10] int 1,], t printf(" input 10 numbers: n") for(i=0;i<10;i++) scanf( %d", &alil printf( \n")
程序实例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");