C语言程序设计基础 教学课件 ppt 作者 马华 李玉娟 第2章 基本c语言-2

上传人:E**** 文档编号:89355099 上传时间:2019-05-23 格式:PPT 页数:39 大小:6.19MB
返回 下载 相关 举报
C语言程序设计基础 教学课件 ppt 作者  马华 李玉娟 第2章  基本c语言-2_第1页
第1页 / 共39页
C语言程序设计基础 教学课件 ppt 作者  马华 李玉娟 第2章  基本c语言-2_第2页
第2页 / 共39页
C语言程序设计基础 教学课件 ppt 作者  马华 李玉娟 第2章  基本c语言-2_第3页
第3页 / 共39页
C语言程序设计基础 教学课件 ppt 作者  马华 李玉娟 第2章  基本c语言-2_第4页
第4页 / 共39页
C语言程序设计基础 教学课件 ppt 作者  马华 李玉娟 第2章  基本c语言-2_第5页
第5页 / 共39页
点击查看更多>>
资源描述

《C语言程序设计基础 教学课件 ppt 作者 马华 李玉娟 第2章 基本c语言-2》由会员分享,可在线阅读,更多相关《C语言程序设计基础 教学课件 ppt 作者 马华 李玉娟 第2章 基本c语言-2(39页珍藏版)》请在金锄头文库上搜索。

1、第2章 基本c语言程序设计,2.1.1 案例描述 2.1.2 各种类型数据的输出函数printf( ),2.1 基本输出函数,函数的格式:printf( 格式控制字符串,输出表列); 格式控制字符串: 格式说明项:由“%”和格式字符组成,如%d,%f等。 转义字符:转义字符:由“”引起的字符,如:“n”。 普通字符:即需要原样输出的字符。 输出表列:需要输出的一些数据项。 举例: printf(“circles radius is:%d,area is:%fn“,radius,area);,2.1.2 各种类型数据的输出函数printf( ),格式字符,附加字符表,读程序(1),#includ

2、e int main(void) int a=123,b=12345; printf(“%5d,%10dn“,a,b); return 0; ,读程序(2),#include int main(void) float x=12.345; double y=123.123456789; printf(“x=%7.2f,y=%7.5fn“,x,y); return 0; ,(1)除了x,e,g外,其它格式字符必须用小写字母。如%d不能写成%D。 (2)格式符以%开头,以上述几个格式字符结束。中间可以插入附加格式字符。 (3)如果想输出字符%,则应当在“格式控制”字符串中用两个%表示。,使用prin

3、tf函数的几点说明:,案例程序,#include int main(void) printf(“C program is fum!n“); return 0; ,返回,案例描述 算术运算符和算术表达式 赋值运算符和赋值表达式 关系运算符和关系表达式,2.2 基本的运算符和表达式,设计“四则运算测试系统”程序,测试目标是100以内的加、减、乘、除四则运算,取值范围为两位整数。以系统随机产生的两个数相加为单项测试用例。,案例描述,1.C语言中变量、常量和基本的数据类型; 2.运算符和表达式; 3.随机数产生; 4.分支结构语句; 5.goto语句。,涉及的知识点,基本的算数运算:加、减、乘、除、求

4、余。 算术运算符:+、-、*、/、%。 运算优先级:先 *、/、% 后 +、-。 算术表达式:用算术运算符和括号将运算对象连接起来并符合C语言语法规则的式子。 如: a*b/c-1.5+a,算术运算符和算术表达式,在除法运算中,如果两整数相除,得出的结果是整数,小数部分舍去。 求余运算符“”,又称为取模运算符,要求“”的两侧必须为整型数。 c语言算术表达式的乘号(*)不能省略。分子分母是表达式时均需加括号。 c语言算术表达式只使用圆括号改变运算的优先顺序(不要用)。,注意:,赋值运算符:=,+=,-=,*=,/=,%= 赋值表达式: 赋值运算符两边数据类型不同做如下处理: 实型赋予整型,舍去小

5、数部分。 整型赋予实型,数值不变,但将以浮点形式存放, 即增加小数部分(小数部分的值为0)。 字符型赋予整型,由于字符型为一个字节, 而整型为二个字节,故将字符的ASCII码值放到整型量的低八位中,高八位为0。 整型赋予字符型,只把低八位赋予字符量。,赋值运算符和赋值表达式,读程序,#include int main(void) int a,b=322; float x,y=8.88; char c1=k,c2; a=y; x=b; c2=b; printf(“%d,%f,%c,“,a,x,c2); a=c1; printf(“%dn“,a); return 0; ,在c语言中,关系运算就是比

6、较运算,提供了6种关系运算符: 大于 = 大于或等于 = 等于 != 不等于 运算优先级: 前四个优先级相同,后两个也相同。且前四个高于后两个。 关系运算符的优先级低于算术运算符,但是高于赋值运算符。,关系运算符和关系表达式,关系表达式的值是一个逻辑值,即“真”或“假”。 C语言没有逻辑型数据,以整数1代表“真”,以整数0代表“假”。 例如:n1=6,n2=3,n3=5,求表达式得值: (1) (n1n2)*n3 (2) n1n2n3 (3) n1+n2=n1/n3,关系表达式的值,rand()函数能返回一个0-2147483647之间的随机值. srand()函数用于重新设定rand()函数

7、使用的种子。 time()函数将从1970年1月1日00.00.00到当前时间所经过的秒数存储到实参指向的变量。,随机数产生函数,例2-7 产生两个随机数x和y,并输出。,#include #include int main(void) int x,y; x=rand(); y=rand(); printf(“x=%d,y=%d“,x,y ); return 0; ,用srand(time(null)设定不同的随机数种子,#include #include #include int main(void) int x,y; srand(time(null); x=rand(); y=rand()

8、; printf(“x=%d,y=%d“,x,y ); return 0; ,单分支if语句: if(表达式) 语句; 双分支if语句: if(表达式) 语句1; else 语句2;,选择语句if-else,利用goto语句改变程序执行方向的句式如下: goto 标号; 与goto语句配合使用的标号语句的句式如下: 标号: 语句;,goto语句,案例程序,#include #include #include int main(void) int x,y,sum; srand(time(NULL); aa: x=rand(); y=rand(); if(x+y100) printf(“%d+%d

9、=“,x,y ); else goto aa; scanf(“%d“, ,返回,格式:scanf(“格式控制”,地址列表) 功能:从标准输入设备上读入一系列数据,按格式控制的要求进行转换,并送入输入列表所列的诸变量中。 地址列表变量的地址(&)或字符串首地址。,2.3 基本输入函数,scanf附加的格式说明字符,字符,说明,用于输入长整型数据(可用ld, %lo, %lx), 以及double型数据(用%lf或%le)。,用于输入短整型数据(可用%hd, %ho, %hx)。,指定输入数据所占宽度(列数)。,表示本输入项在读入后不赋给相应的变量。,h,域宽(为一正整数),*,l,#includ

10、e int main(void) int int_i,int_j; float float_f; double double_d; char ch; printf(“Please input 2 integer:n“); scanf(“%d%d“, ,2.4.1 逗号运算符和逗号表达式 2.4.2 条件运算符和条件表达式 2.4.3 位运算符 2.4.4 自增、自减运算符,2.4 特殊运算符和表达式,格式:表达式1,表达式2,表达式n 逗号表达式的求解过程是:自左向右,求解表达式1,求解表达式2,求解表达式n。整个逗号表达式的值是表达式n的值。 例如:x=(a=3,b=5,c=b*4) 逗号运

11、算符的优先级最低,结合性为自左至右。,2.4.1 逗号运算符和逗号表达式,条件运算符由问号“?”和“:”两个字符组成,用于连接3个运算对象。 格式:表达式1?表达式2:表达式3 运算规则:当“表达式1”的值为非零时,求“表达式2”的值,“表达式2”的值就是整个条件表达式的值;当“表达式1”的值为零时,求“表达式3”的值,“表达式3”的值作为整个条件表达式的值。 例如,已知a=5,b=7,则ab?a:b的值为?,2.4.2 条件运算符和条件表达式,2.4.3 位运算符,自增(+)、自减(-)运算符。两个都是单目运算符,作用是使运算对象的值增1或减1。 使用自增或自减运算符,应注意以下几个问题:

12、+i,-i(前置运算):先使变量i的值增加1或减去1,再引用变量的值参与其它运算; i+,i-(后置运算):先引用变量i的值参与运算, 再使变量的值增加1或减去1.,2.4.4 自增、自减运算符,#include int main(void) int i,x,y; i=5; x=i+; /* 后缀运算,先把i的值赋给x,然后i的值加1*/ printf(“postfix:i=%d,x=%dn“,i,x); i=5; y=+i; /* 前缀运算,先使i的值加1,然后将i的值赋给y*/ printf(“prefix:i=%d,y=%dn“,i,y); return 0; ,2.5.1 自动类型转换

13、,2.5 类型转换,格式:(类型说明符)表达式 功能:把表达式的结果强制转换为类型说明符所表示的类型。 例如: (int)a 将a的结果强制转换为整型量。 (int)(x+y) 将x+y的结果强制转换为整型量。 (float)a+b 将a的内容强制转换为浮点数,再与b相加。,2.5.2强制类型转换,1. 类型说明和表达式都需要加括号(单个变量可以不加括号),如把(int)(x+y)写成(int)x+y则成了把x转换成int型之后再与y相加。 2. 无论是强制转换或是自动转换,都只是为了本次运算的需要而对变量的数据长度进行的临时性转换,而不改变数据说明时对该变量定义的类型。,说明:,#inclu

14、de int main(void) float f=5.75; printf(“(int)f=%d,f=%fn“,(int)f,f); return 0; ,常用的数学库函数有(math.h): 绝对值函数fabs(a) 计算|a| 如fabs(23.456)的值为23.456。 平方根函数sqrt(a) 计算a 如sqrt(64.0)的值为8.0。 幂函数pow(a,n) 计算an 如pow(1.5,2)的值为2.25 指数函数exp(x)计算ex 如exp(2.3)的值为9.974182。,2.6 常用数学库函数,以e为底的对数函数log(x) 计算lnx 如log(123.45)的值为4.815836。 三角正弦值函数sin(x) 计算x的三角正弦值 三角余弦值函数cos(x) 计算x的三角余弦值 三角正切值函数tan(x) 计算x的三角正切值,其中x用弧度表示。,2.6 常用数学库函数,

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


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

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