chap2_用C语言编写程序PPT_第1页
chap2_用C语言编写程序PPT_第2页
chap2_用C语言编写程序PPT_第3页
chap2_用C语言编写程序PPT_第4页
chap2_用C语言编写程序PPT_第5页
已阅读5页,还剩35页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、Chap 2 用C语言编写程序,2.1 在屏幕上显示 Hello World! 2.2 求华氏温度 100F 对应的摄氏温度 2.3 计算分段函数 2.4 输出华氏摄氏温度转换表 2.5 计算12! / (5!7!),1,本章要点,How to 在屏幕上显示文字信息? How to实现简单的数据处理,例如将华氏温度转换为摄氏温度? How to用 if 语句 计算分段函数? How to用 for 语句求 1+2+100? How to定义和调用函数完成上述4项工作? 在使用函数的过程中,要注意哪些问题?怎样确定函数的参数?,2,【例2-1】 在屏幕上显示一个短句: Hello World!,

2、2.1 在屏幕上显示Hello World!,3,/* 显示“Hello World!” */ 注释文本 # include void main( ) 主函数 printf(Hello World! n); 语句结束 输出函数 换行符,在屏幕上显示Hello World!,4,【例2-2】 在屏幕上显示: Programming is fun! And Programming in C is even more fun! # include /*编译预处理命令*/ void main( ) printf( Programming is fun! n ); printf( And Program

3、ming in C is even more fun! n ); ,在屏幕上显示一些信息,printf (Programming is fun! n And Programming in C is even more fun!n );,5,What we learn?,标准库函数printf()可用于在屏幕上显示文本信息 在这两例中,需要显示的内容是固定不变的一串文字(即字符串常量),将字符串常量作为函数参数; 字符串的标志:一对“”; 换行符n是一个特殊的字符; C程序中所有标点符号都是西文符号; 要调用printf()函数,必须在程序开头进行预处理,将它所在的标准输入输出库(stdio.h

4、)包含进来。,#include ,6,2.18日上机情况回顾,有关 新建C源程序的说明 菜单命令: 【文件】-【新建】-【文件】-【C+ Source File】 在开始编写新程序之前,应当先关闭工作区,或关闭VC,否则会出现连接错误! 查找错误:双击错误提示信息行 书写方面: i , l , 1的区别 适当的空格、空行和缩进,7,2.2 简单的数据计算,【例2-3】求华氏温度100F对应的摄氏温度C 摄氏温度 其中,已知 F= 100,求 C= ? ,8,2.2.1 程序解析,#include void main( ) int celsius, fahr; /*变量定义*/ fahr = 1

5、00; /*变量使用*/ celsius = 5 * (fahr - 32) / 9; printf(fahr = %d, celsius = %dn, fahr, celsius); ,程序运行结果: fahr =100, celsius = 37,9,2.2.2 常量、变量和数据类型,int celsius, fahr; farh=100; celsius = 5 * (fahr - 32) / 9; 常量:在程序运行过程中,其值不能被改变 变量:在程序运行过程中,其值可以被改变 数据类型 常量:由书写格式决定 变量:在定义时指定,变量: 先定义,后使用!,10,变量的定义,变量定义的一般

6、形式: 类型名 变量名表; 如: int celsius, fahr; 定义整型变量 int celsius, fahr=100; 定义整型变量,并为fahr设初值 float x; 定义单精度浮点型变量 double area, length; 定义双精度浮点型变量 double数据比float数据精度高,取值范围大,变量取名原则:小写字母;见名知义,11,变量的定义,变量名代表内存中的一个存储单元,用于存放变量的值 该存储单元的大小由变量的数据类型决定 !在数学中,变量代表未知数 x = x+1,12,2.2.3 算术运算和赋值运算,fahr = 100; celsius = 5 * (f

7、ahr - 32) / 9; 1、算术运算 双目算术运算符:+ - * / % 算术表达式:用算术运算符将运算对象连接起来的、符合C语言语法规则的式子 数学式:(5/9)(F-32) ; C表达式:5 * (fahr - 32) / 9 数学式:s(s-a)(s-b)(s-c), C表达式:?,s*(s-a)*(s-b)*(s-c),13,算术运算,!注意 / 整数除整数,得整数 如:1/2 0,9/4 2 5 * (fahr - 32) / 9 和 5 / 9 * (fahr - 32) 等价吗? % 左右两个操作数必须是整数类型 如: 56 5,94 1,1004 0 双目运算符两侧操作数

8、的类型要相同,否则系统会自动进行类型转换 + 和- 还可作为单目运算符,即正负号,14,赋值运算=,赋值表达式:用 = 将一个变量和一个表达式连接起来的式子,即 变量 表达式 如: fahr = 100; celsius = 5 * (fahr - 32) / 9; 先计算赋值运算符右侧表达式的值 将赋值运算符右侧表达式的值赋给左侧的变量,左边必须是一个变量!,15,2.2.4 格式化输出函数printf(),数据输出:格式化输出函数 printf() #include printf(Hello World! n); printf(fahr = %d, celsius = %dn, fahr,

9、 celsius); printf(格式控制字符串, 输出参数1, , 输出参数n);,用一对双引号“” 括起来,表示输出文字的格式,要输出的数据,16,printf(Hello World! n); printf(fahr = %d, celsius = %dn, fahr, celsius); 格式控制字符串: 普通字符:按原样输出 格式控制说明: 按指定的格式%.输出数据 与数据类型有关 int型 :%d float, double型:%f,%lf printf(fahr = %d, celsius = %dn, fahr, celsius);,printf()格式控制字符串,输出:fa

10、hr =100, celsius = 37,17,小结与课后作业,小结 如何用printf()输出固定不变的文本信息 如何用printf()输出变量的值 如何定义变量 算数运算+ - * / % 赋值运算= 作业 P45,1,2,3,18,What will we learn? 关系运算 if-else语句 格式化输入函数scanf( ) 常用数学库函数 else-if语句,2.3 计算分段函数,19,【例2-4】 输入x,求分段函数 f(x) 的值,保留2位小数。 ex x1 f(x) = x2-1 x1,2.3.1 程序解析,要解决的问题: 输入 (x的值) 计算分段函数 f 求ex 输出

11、,并保留2位小数,20,#include # include void main( ) float x, y; printf(input x: n); /* 输入提示 */ scanf(%f, ,2.3.1 程序解析求分段函数,input x: 0.5 f(0.500000)=1.65,input x: 2.4 f(2.400000)=4.76,x必须输入吗?,21,2.3.2 关系运算x =, =, != x y x = y x != y 关系表达式:用关系运算符将2个表达式连接起来的式子。,区分和,22,运用关系表达式,表示比较的数学式 C关系表达式 x10 x10 x10 x = 10,

12、x = 10 x != 10 x = 10,用关系表达式描述条件 判断 x 是否为负数 x 0 判断 x 是否不为零 x != 0,23,2.3.3 if - else语句,if (表达式) 语句1 else 语句2,If ( x = 1 ) y = exp(x); else y = x * x -1;,24,【例2-5】 输入x,求分段函数 f(x) 的值,保留1位小数。 1/x x 0 f(x) = 0 x = 0,例2-5 另一个分段函数,if (x != 0) y = 1/x; else y = 0;,if (表达式) 语句1 else 语句2,25,#include /* 例2-5

13、*/ void main( ) float x, y; printf(input x: n); scanf(%f, ,例2-5 程序,26,软件测试的基本思想 精心设计一批测试用例输入数据,预期输出结果 ,然后分别用这些测试用例运行程序,看程序的实际运行结果与预期输出结果是否一致。,软件测试,input x: 2.5 f(2.50)=0.4,input x: 0 f(0.00)=0.0,if(x != 0) y = 1/x; else y = 0;,if(x = 1) y = exp(x); else y = x * x -1;,input x: 0.5 f(0.500000)=1.65,in

14、put x: 2.4 f(2.400000)=4.76,27,2.3.4 格式化输入函数scanf(),数据输入:格式化输入函数 scanf() #include scanf(%f, ,用双引号括起来,表示输入的格式,变量地址: Scanf(“%f%f “, fahr = 100; celsius = 5 * (fahr - 32) / 9; printf(fahr = %d, celsius = %dn, fahr, celsius); ,改进例2-3的程序,printf(input fahr: n); scanf(%d, ,input fahr: 100 fahr =100, celsiu

15、s = 37,30,2.3.5 常用的库函数,库函数: 事先编好的函数,供用户在编程时调用。 如:scanf(), printf(), exp() 库函数的一些必要信息,存放在相应的系统文件(即头文件.h)中。 #include命令 在调用库函数时,要将相应的头文件包含到源程序中。 例如 调用scanf(), printf(),需要 #include 调用exp(),需要 #include ,31,常用数学库函数(P24),平方根函数 sqrt(x) 绝对值函数 fabs(x) fabs(-3.56) 的值为3.56 幂函数 pow(x, n) :xn pow(1.1, 2) 的值为1.21(

16、即1.12) 指数函数 exp(x):ex exp(2.3) 的值为e2.3 以e为底的对数函数 log(x):ln x log(123.45) 的值为4.815836 以10为底的对数函数 log10(x):log10 x log10(123.45) 的值为2.091491。,更多函数见附录4: C语言常用函数,32,输入存款金额 money、存期 year 和年利率 rate, 根据公式计算存款到期时的本息合计sum, 输出时保留2位小数。 sum = money ( 1 + rate)year,例2-6 计算存款的本息,sum = money * pow(1 + rate), year)

17、,33,# include # include void main( ) int money, year; double rate, sum; printf(input money, year and rate: n); scanf(%d%d%lf, ,例2-6 程序,input money, year and rate: 1000 3 0.025 sum = 1076.89,34,scanf(%d%d%lf, ? 程序运行时,输入的多个数据之间必须有间隔。,调用scanf函数输入多个数据,scanf(%d%lf%d , 如何输入?,输入参数、格式控制说明、输入数据,-数据之间采用空格作为间隔符号,35,【例2-7】 输入x,计算并输出下列分段函数 f(x) 的值(保留2位小数) x+1 x 1 f(x) = x+2 1x2 x+3 x2,2.3.6 else if 语句,36,# include void main( ) double x, y; printf(input x: n); scanf(%lf, ,例2-7 程序,input x: 0.5 f(0.50) = 1.50,input x: 1.2 f(1.20)=3.

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论