[例]输入三个数,将其按从小到大的顺序输出. maino i float a, b, c, t scanf(%f, %f, %f, &a, &b, &c) if(a>b)t=a, a=b, b=t if(a>c)t=a, a=c, c= if(b>c)t=b, b=C,c=t printf(96.1f,%6.1f,%6.1fn",a,b,c)
[例]输入三个数,将其按从小到大的顺序输出. main() { float a,b,c,t; scanf(“%f,%f,%f”,&a,&b,&c); if(a>b) t=a,a=b,b=t; if(a>c) t=a,a=c,c=t; if(b>c) t=b,b=c,c=t; printf(“%6.1f,%6.1f,%6.1f\n”,a,b,c); }
用函数实现: 输入(用 scanf函数) 主控模块排序 输出(用prin函数) 排序函数 sortable void sortabc() i float t if(a>b)t=a, a=b, b=t if(a>c)t=a, a=C, C= if(b>c)t=b, b=C, C=t
用函数实现: 输入(用scanf函数) 主控模块 排序 输出 (用printf函数) 排序函数sortabc: void sortabc( ) { float t; if(a>b) t=a,a=b,b=t; if(a>c) t=a,a=c,c=t; if(b>c) t=b,b=c,c=t; }
float a b,c;/*定义a,b,c为全程变量* main() scanf("%f,%f,%f,&a,&b,&c);/*输入*/ sortabc(; /米排序*/ print(%6.1f%61%61fn”a,b,c);/*输出* 模块独立:功能独立,关系简单; 模块设计原则:模块规模适当 分解模块要注意层次
float a,b,c; /* 定义 a,b,c为全程变量 */ main( ) { scanf("%f,%f,%f”,&a,&b,&c); /* 输入 */ sortabc( ); /* 排序 */ printf(“%6.1f,%6.1f,%6.1f\n”,a,b,c); /*输出*/ } 模块独立:功能独立,关系简单; 模块设计原则:模块规模适当 分解模块要注意层次
算法 1算法:是求解某一类特定问题的方法和步骤。 2算法的性质 1)算法是一个有限操作序列。即算法的有穷性。 (2)算法的每一步都应是确定的,没有二义性。 (3)算法的每一步都应是计算机能进行的有效操作。 (4)有一个或多个输入。 (5)有一个或多个输出,表示问题的解 3.算法的描述 (1)自然语言 (2)框图语言(N-S流程图) (3)计算机语言
算法 1.算法:是求解某一类特定问题的方法和步骤。 2.算法的性质 (1) 算法是一个有限操作序列。即算法的有穷性。 (2) 算法的每一步都应是确定的,没有二义性。 (3) 算法的每一步都应是计算机能进行的有效操作。 (4) 有一个或多个输入。 (5) 有一个或多个输出,表示问题的解。 3.算法的描述 (1)自然语言 (2)框图语言(N-S流程图) (3)计算机语言
例:找出a,b两数中的较大者,并输出。 1、自然语言描述 (1)输入两个数; (2)如果a>b,则a max 否则b max: (3)输出max的值 2、N-S框图语言描述 输入ab 是 a>b 否 a→maxb→max 输出max的值
例:找出a,b两数中的较大者,并输出。 1、自然语言描述 (1)输入两个数; (2)如果a>b,则a max, 否则b max; (3)输出max的值。 2、N-S 框图语言描述 输入a,b a>b 是 否 a max b max 输出max的值