7.其他一些语句 (1)reun表达式或 return:用于函数结束 (2)brek语句:可用在循环语句或case语句中结束循环过程或跳 出情况语句。 (3)eⅫ语句:表示出现异常情况时,控制退出语句。 8.注释飛式 可用/*字符串*或者单行注释或∥文字序列
7.其他一些语句 (1)return表达式或return:用于函数结束。 (2)break语句:可用在循环语句或case语句中结束循环过程或跳 出情况语句。 (3)exit语句:表示出现异常情况时,控制退出语句。 8.注释形式 可用 /*字符串*/ 或者 单行注释 或 //文字序列
9.一些基本的函数 如:max函数,用于求一个或几个表达式中的最大值; min函数,用于求一个或几个表达式中的最小值; abs函数,用于求表达式的绝对值; eof函数,用于判定文件是否结束; eoln函数,用于判断文本行是否结束
9.一些基本的函数 如: max函数,用于求一个或几个表达式中的最大值; min函数,用于求一个或几个表达式中的最小值; abs函数,用于求表达式的绝对值; eof函数,用于判定文件是否结束; eoln函数,用于判断文本行是否结束
例计算f=1!+2!+3! +….+n!,用C语言描述。 上述算法所用到的运算有乘 void factorsum (n) 法、加法、赋值和比较,其 int n: iint i,j; int f,W: 基本运算为乘法操作。在上 述算法的执行过程中,对外 f=0: 循环变量i的每次取值,内循 for(i=1,j〈=n;i++) 环变量循环次。因为内循环 {W=1 每执行一次,内循环体语句 for (j=1,j(i; j++) W=W米只作一次乘法操作 即当内循环变量j循环时 W=W]; 内循环体的语句w=w*作i次 f=f+W;) 乘法。所以,整个算法所作 return 的乘法操作总数是:f(n) =1+2+3+…n=n(n-1)/2
例 计 算 f=1 ! +2 ! +3 ! +…+n!,用C语言描述。 void factorsum(n) int n;{int i,j;int f,w; f=0; for (i=1,i〈=n;i++) {w=1; for (j=1,j〈=i;j++) w=w*j; f=f+w;} return; } 上述算法所用到的运算有乘 法、加法、赋值和比较,其 基本运算为乘法操作。在上 述算法的执行过程中,对外 循环变量i的每次取值,内循 环变量j循环i次。因为内循环 每执行一次,内循环体语句 w=w*j只作一次乘法操作, 即当内循环变量j循环i次时, 内循环体的语句w=w*j作i次 乘法。所以,整个算法所作 的乘法操作总数是:f(n) =1+2+3+…n=n(n-1)/2
1.5.3算法评价 设计一个好的算法应考虑以下几个方面:
1.5.3 算法评价 设计一个好的算法应考虑以下几个方面:
1.正确性 “正确”的含义在通常的用法中有很大 的差别,大体可分为以下四个层次:①程序不 含语法错误;②程序对于几组输入数据能够得 出满足规格说明要求的结果;③程序对于精心 选择的典型、苛刻而带有刁难性的几组数据能 够得出满足规格说明要求的结果;④程序对 切合法的输入数据都能产生满足规格说明要求 的结果
1.正确性 “正确”的含义在通常的用法中有很大 的差别,大体可分为以下四个层次:①程序不 含语法错误;②程序对于几组输入数据能够得 出满足规格说明要求的结果;③程序对于精心 选择的典型、苛刻而带有刁难性的几组数据能 够得出满足规格说明要求的结果;④程序对一 切合法的输入数据都能产生满足规格说明要求 的结果