用c语言编写程序ii

上传人:xiao****1972 文档编号:78613564 上传时间:2019-02-14 格式:PPT 页数:38 大小:1.56MB
返回 下载 相关 举报
用c语言编写程序ii_第1页
第1页 / 共38页
用c语言编写程序ii_第2页
第2页 / 共38页
用c语言编写程序ii_第3页
第3页 / 共38页
用c语言编写程序ii_第4页
第4页 / 共38页
用c语言编写程序ii_第5页
第5页 / 共38页
点击查看更多>>
资源描述

《用c语言编写程序ii》由会员分享,可在线阅读,更多相关《用c语言编写程序ii(38页珍藏版)》请在金锄头文库上搜索。

1、C语言第三讲,主讲教师:谢华成 ,教材:C语言程序设计,何钦铭、颜晖主编,高等教育出版社,第2版,用C语言编写程序第2部分,C语言程序设计,网络信息与计算中心教研室,2.3.5 常用数学库函数,库函数 C语言处理系统提供事先编好的函数,供用户在编程时调用。scanf(), printf(), exp() 在相应的系统文件(头文件)中定义一些必需的信息。 #include命令 用户调用库函数时,将相应的头文件包含到源程序中。 例如 调用scanf, printf,需要 #include 调用sqrt,需要 #include ,C语言程序设计,网络信息与计算中心教研室,常用数学库函数,平方根函数

2、sqrt(x) 绝对值函数 fabs(x) fabs(-3.56) 的值为3.56 幂函数 pow(x, n) :xn pow(1.1, 2) 的值为1.21(即1.12) 指数函数 exp(x):ex exp(2.3) 的值为e2.3 以e为底的对数函数 log(x):ln x log(123.45) 的值为4.815836 以10为底的对数函数 log10(x):log10x log10(123.45) 的值为2.091491。,C语言程序设计,网络信息与计算中心教研室,例2-5 计算存款的本息,输入存款金额 money、存期 year 和年利率 rate,根据公式计算存款到期时的本息合计

3、sum(税前),输出时保留2位小数。,sum = money * pow(1 + rate), year),sum = money ( 1 + rate)year,C语言程序设计,网络信息与计算中心教研室,例2-5 程序,# include # include main() int money, year; double rate, sum; printf(“输入存款:“); scanf(“%d“, ,输入存款: 30000 定存年数: 2 当前利率: 0.03 sum = 31827.00,scanf(“%d%d%lf“, ,C语言程序设计,网络信息与计算中心教研室,调用scanf函数输入多

4、个数据,scanf(“%d%d%lf“, 程序运行时,输入的多个数据之间必须有间隔。,scanf(“%d%lf%d “, 如何输入?,输入参数: 格式控制说明 输入数据,C语言程序设计,网络信息与计算中心教研室,2.4 输出华氏摄氏温度转换表,2.4.1 程序解析 2.4.2 for语句 2.4.3 指定次数的循环程序设计,C语言程序设计,网络信息与计算中心教研室,2.4.1 程序解析,例2-6输入2个整数lower和 upper,输出一张华氏摄氏温度转换表,华氏温度的取值范围是lower, upper,每次增加1F。 fahr celsius 30 -1.1 31 -0.6 32 0.0 3

5、3 0.6 34 1.1 35 1.7,C语言程序设计,网络信息与计算中心教研室,2.4.1 程序解析-温度转换表,#include int main(void) int fahr, lower, upper; double celsius; printf(“Enter lower:“); scanf(“%d“, ,fahr = fahr+1,Enter lower: 30 Enter upper: 35 fahr celsius 30 -1.1 31 -0.6 32 0.0 33 0.6 34 1.1 35 1.7,C语言程序设计,网络信息与计算中心教研室,例2-8中for语句的流程,for

6、 (fahr = lower; fahr = upper; fahr +) celsius = (5.0 / 9.0) * (fahr - 32); printf(“%d %6.1fn“, fahr, celsius); ,fahr = fahr+2 输出?,Enter lower: 30 Enter upper: 35 fahr celsius 30 -1.1 31 -0.6 32 0.0 33 0.6 34 1.1 35 1.7,C语言程序设计,网络信息与计算中心教研室,2.4.2 for语句循环语句,for(表达式1;表达式2;表达式3) 循环体语句 实现C语句的重复执行,3个表达式、循

7、环体语句 !书写顺序和执行顺序不同 !表达式1只执行一次,C语言程序设计,网络信息与计算中心教研室,for语句中的循环变量,循环(控制)变量:for语句中,通过改变或判断某个变量的值来控制循环的执行 for (fahr = lower; fahr = upper; fahr +) celsius = (5.0 / 9.0) * (fahr - 32.0); printf(“%d %6.1lfn“, fahr, celsius); ,赋初值z,判断其值,改变其值,C语言程序设计,网络信息与计算中心教研室,for语句的说明,for (fahr = lower; fahr = upper; fahr

8、 +) celsius = (5.0 / 9.0) * (fahr - 32.0); printf(“%d %6.1fn“, fahr, celsius); ,表达式1:给循环变量赋初值,指定循环的起点。 fahr = lower 表达式2:给出循环的条件,决定循环的继续或结束。 fahr = upper 表达式3:设置循环的步长,改变循环变量的值,从而可改变表达式2的真假性。 fahr+ 语句:被反复执行的语句,一条语句。,C语言程序设计,网络信息与计算中心教研室,复合语句 和空语句 ;,for (fahr = lower; fahr = upper; fahr +) celsius = (

9、5.0 / 9.0) * (fahr - 32.0); printf(“%d %6.1fn“, fahr, celsius); ,for (fahr = lower ; fahr = upper; fahr = fahr + 1) celsius = (5.0 / 9.0) * (fahr - 32.0); printf(“%d %6.1fn“, fahr, celsius);,for (fahr = lower ; fahr = upper; fahr = fahr + 1); celsius = (5.0 / 9.0) * (fahr - 32.0); printf(“%d %6.1fn“

10、, fahr, celsius);,!不要在for语句中随意加分号,C语言程序设计,网络信息与计算中心教研室,2.4.3 指定次数的循环程序设计,求 1+2+100 抽取具有共性的算式:sum = sum + i sum初值为0,该算式重复100次,i从1变到100 设i为循环变量,则: 指定循环起点的表达式1:i = 1 给出循环条件的表达式2:i = 100 设置循环步长的表达式3:i+ 循环体语句:sum = sum + i; for(i=1; i=100; i+) sum =sum+i;,C语言程序设计,网络信息与计算中心教研室,源程序求 1+2+100,/* 计算1 + 2 + 3

11、+ + 100 */ #include int main(void) int i, sum; sum = 0; /* 置累加和sum的初值为0 */ for ( i = 1; i = 100; i+ ) /* 循环重复100次 */ sum = sum + i; /* 反复累加 */ printf( “sum = %dn”, sum); /* 输出累加和 */ return 0; ,for(i=1; i=100; i+) sum=0; sum=sum+i; ,sum=5050,C语言程序设计,网络信息与计算中心教研室,求 1+1/2+1/3+ 1/100,#include int main(v

12、oid) int i, sum; sum = 0; for ( i = 1; i = 100; i+ ) sum = sum + i; printf( “sum = %dn”, sum); return 0; ,for(i=1; i=100; i+) sum=sum+1.0/i;,int i; double sum;,printf( “sum = %lfn”, sum);,C语言程序设计,网络信息与计算中心教研室,指定次数的循环程序设计,一般包含四个部分: 初始化:指定循环起点 给循环变量赋初值,如i = 1; 进入循环之前,设置相关变量的初值,如sum = 0。 条件控制: 只要i 100,

13、循环结束。,C语言程序设计,网络信息与计算中心教研室,例2-7 求 1+2+3+n,输入一个正整数n,求前n项和,即循环n次 #include int main(void) int i, sum; sum = 0; for ( i = 1; i = 100; i+ ) sum = sum + i; printf( “sum = %dn”, sum); return 0; ,for(i=1; i=n; i+) sum=sum+i;,printf(“Enter n:“); scanf(“%d“, ,Enter n: 100 Sum = 5050,C语言程序设计,网络信息与计算中心教研室,求1+1/

14、2+1/3+ 1/n,#include int main(void) int i, sum; printf(“Enter n: “); scanf(“%d“, ,#include int main(void) int i; double sum; printf(“Enter n: “); scanf(“%d“, ,C语言程序设计,网络信息与计算中心教研室,求 1+1/3+1/5+ 的前n项和,求前n项和,即循环n次,每次累加1项。 for (i = 1; i = n ; i+) sum = sum + item (第i项) item = 1.0 / (2 * i - 1),C语言程序设计,网络

15、信息与计算中心教研室,源程序求 1+1/3+1/5+,#include int main(void) int i, n; double item, sum; printf(“Enter n: “); scanf (“%d“, ,C语言程序设计,网络信息与计算中心教研室,例2-8 求 1-1/3+1/5- 的前n项和,求前n项和,即循环n次,每次累加1项。 for (i = 1; i = n ; i+) sum = sum + item (第i项) item = flag * 1.0 / denominator denominator = denominator + 2 flag = -flag ,item = flag*1.0/(2 * i - 1),例2-8 源程序,#include int main(void) int denominator, flag, i, n; double item, sum; printf(“Enter n: “); scanf (“%d“, ,C语言程序设计,网络信息与计算中心教研室,例2-9 求n!,n! = 1*2*n for (i = 1; i = n ; i+) product = product * item (第i项) item=i,product = ?,C语言程序设计,网络信息与计算中心教

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号