9512.net
甜梦文库
当前位置:首页 >> 学科竞赛 >>

第二周 选择结构



回顾 ?请同学们到讲台签到,密码是1
? 程序是为执行一项任务而编写的有序指令集

? 算法是解决问题的具体方法和步骤
? 流程图是算法的图形化表现形式 ? C语言的特点

? C程序的编译和运行过程
? 编译器将源程序转换成机器能理解的程序 ? 连接器用于连接相关的目标文件以生成可执行程序

/>1

第二周第一节

变量和数据类型

目标
? 理解变量和常量的含义 ? 熟悉基本数据类型 - int、char、float 和 double

? 熟练使用 scanf() 和 printf() 函数

3

C语言中的基本元素
程序
常量是在程序中保持不变的量 常量用于定义具有如下特点的数据: ?在程序中保持不变 ?在程序内部频繁使用 ?需要用比较简单的方式替代某些值

指令

标识符 关键字 常量 运算符 分隔符 等

4

变量
内存
编写程序时,常常需要将数据存储在内存 10 9.5 0.5 中,方便后面使用这个数据或者修改这个 数据的值。 通常使用变量来存储数据。使用变量可以 引用存储在内存中的数据,并随时根据需 要显示数据或执行数据操纵。

程序

存储 Rate

Rate * 5% 将值存储为DiscAmt Rate-DiscAmt 将值存储为Result

5

声明和使用变量
? 声明变量:
Datatype variablename; 数据类型(int/float/char…) 变量名;

? 定义时初始化变量:
Datatype variablename = value;

? 定义后初始化变量:
variablename = value;
给变量赋值,除了给一个直接的值以外,还可以通过计算获得。

6

变量命名
在 C 语言中,变量命名需要遵循一定的规则

有效名称 ? 变量的命名规则:

无效名称

cost_price

? 变量名可以由字母、数字和 _(下划线)组合而成 ? 变量名不能包含除 _ 以外的任何特殊字符,如:%、# 、逗号、 principal 123rate 空格等lastname zip code ? 变量名必须以字母或 _(下划线)开头 ? 变量名不能包含空白字符(换行符、空格和制表符称为空白字符) ? C 语言中的某些词(例如 int 和 float 等)称为保留字,具有特殊 marks_3 discount% 意义,不能用作变量名 ? C 语言区分大小写,因此变量 price 与变量 PRICE 是两个不同的 变量

city

currency$

7

基本数据类型
数据类型

数据

数值 2.175

非数值 Africa char

123 整型

非整型 9/12/2003 int 整型 非整型 floatThe quick brown fox Jackie short intChan double 数值 非数值 long int 999 9002.12 数据属于不同类别 TRUE

8

整型
名称
整型 无符号整型 短整型

全称类型说明符 缩写类型说明符 位数 范围
int unsigned int short int int unsigned short 16 16 16 16 32 32 -32768 至 +32767 0 至 65,535 -32768 至 +32767 0 至 65,535 -2,147,483,648 至 2,147,483,647 0至 4,294,967,295

无符号短整型 unsigned short int unsigned short 长整型 long int long unsigned long

无符号长整型 unsigned long int

9

使用整型变量
? 声明:
int page_number; long int population; unsigned int age;

? 可按如下方式初始化:
page_number=0; int max_marks = 100; 在同一语句中可以声明多个类型相同的变量: int page_number, copies, paper_width;

10

单精度浮点型
float 在 C 语言中用于存储单精度浮点数
float 32 位 10-38 至 10+38 ,7位有效数字

? 声明:
float selling_price;

? 初始化:
float selling_price = 11.3; selling_price = 65.90;

11

双精度浮点型
内存

float

213.5671435568967

double
64位

16 位有效数字

? 声明:

? 初始化:

? double pressure_level; 取值范围:10-308 至 10308 ? pressure_level = 213.5671435568967; ? double dvalue = 35.4;
12

输入/输出函数
#include <stdio.h>
输入/输出函数 (printf/scanf) 用于接受和显示数据或信息

void main() { int num; printf("请输入一个数:"); scanf("%d",&num); printf(" \n%d 的平方为 %d \n",num,num*num); 转换字符串 }
转义序列

13

printf 函数5-1
int visitor_count = 150; "" %d "" , visitor_count printf ( %d visitor_count);
将一些信息按照指定的格式送到标准输出(显示器) 将按指定的格式显示该变量的值
转换字符串 说明 将参数按整数形式转换输出,对应参数应是int 类型

%d

%ld
%c %s

将参数按长整数形式转换输出,对应参数应是long 类型
输出一个字符,对应参数应该是一个char字符 输出一个字符串,对应参数应该是一个字符串 将参数按带小数点数形式输出,对应参数应是float 类型, 默认情况下精确到 6 位小数

%f
14

printf 函数5-2
int visitor_count = 150; printf (" %d" , visitor_count);

输出结果:150

15

printf 函数5-3
int salary = 5500; printf ( %10d "" %10d "" , salary);

输出结果:

5500

输出结果的左边显示了 6 个空格

16

printf 函数5-4
float circumference = 78.53; 9.4786789; printf (" %f" , circumference);

9.478679 输出结果:78.530000
默认情况下精确到六位小数

17

printf 函数5-5
double mercury_level = 168.2251074; printf ( ""%7.2f" " , mercury_level);

输出结果: 168.23
宽度,表示所有的数字和小数点所占的位数。不够7位右对齐。

精度(精确到小数点后多少位)

18

转义序列
转义序列 名称 描述 输出结果: Name: Audrey Hepburn \a 警告 产生一则警告。 Movie: ?Roman Holiday?
\b 退格 换页 将光标回退一格。

代码: \f
\r
\v

将光标移到下一页的第一格。

printf( Audrey Hepburn \n Movie: \?Roman Holiday\?”); \n “Name: 换行 将光标移到下一行的第一格。

回车
垂直制表

将光标移到当前行的第一格。
将光标移到下一个垂直制表位置。

\t 水平制表 将光标移到下一个水平制表位置。 转义序列允许在输出结果中包括特殊字符

\'
\" \? \\
19

单引号
双引号 问号 反斜线 空

产生一个单引号。
产生一个双引号。 产生一个问号。 产生一条反斜线。 产生一个空字符。

\0

printf 函数使用示例
内存 #include <stdio.h> pi radius high void main() { 3.14159 2.0 1.5 float radius=1.5, high=2.0; vol float pi=3.14159, vol; 14.14 /*计算体积*/ vol=pi*radius*radius*high; /*输出体积的值*/ printf("vol=%7.2f\n",vol); } 输出:

vol= 14.14
20

scanf 函数
scanf 函数从标准输入(键盘)读取信息,按照格式描述 把读入的信息转换为指定数据类型的数据,并把这些数 据赋给指定的程序变量。

scanf("%d",&num);
变量的名称

&符号(附在读取的每个变量上)用于指明变量 在内存中的位置
转换字符串 转换字符串 参数变量的类型 要求的实际输入

%d
%ld %f %lf
21

int
long float double

十进制数字序列
十进制数字序列 十进制数,可以有小数点及指数部分 十进制数,可以有小数点及指数部分

scanf
内存
tax_rate

float tax_rate; scanf (" %f" , &tax_rate); ? 在内存中分配一块 32 位存储空间
? 存储空间使用名称“ 提示用户输入一个值tax_rate”标识 ? 输入的值存储在变量中(因为 scanf 提供此变量的 地址)

12.234
22

输入输出函数使用示例
#include <stdio.h> #include <stdlib.h> int main(int argc, char *argv[]) {

内存

radius 5

high 10

float radius,high,vol; vol //输入圆柱体底面积的半径和高,求体积 785 scanf("%f%f",&radius,&high); vol=3.14*radius*radius*high; printf("radius=%7.2f,high=%7.2f,vol=%7.2f\n" ,radius,high,vol);
system("PAUSE"); return 0; }

5 10 radius=
23

5.00, high= 10.00, vol= 785.00

第二周第二节

运算符和字符处理

目标
? 使用算术运算符 ? 熟练使用 getchar() 和 putchar() 函数

? 理解类型转换

25

算术运算符2-1
算术 操作数 一元 运算符 操作数

二元

26

算术运算符2-2
算术

++
一元

num++ num=num+1 ++num --num 前缀 num++ num-后缀

-二元

num-- num=num-1

27

算术运算符示例
#include <stdio.h> void main() { int a = 5, b = 3, c = 25, d = 12; float qu; int re,in,de; /* 使用算术运算符 */ qu = a / b; // 除法 re = a % b; // 求模 in = ++c; de = --d; printf ("商为 %f\n",qu); printf ("余数为 %d\n",re); printf (“加 1 后为 %d\n",in); printf ("减 1 后为 %d\n",de); }
28

输出:

商为 1.000000
余数为 2 加 1 后为 26

减 1 后为 11

练习:算术运算符的练习题
?输入两个数,求它们的和、差、积、商。

?提示: ?变量定义:float num1,num2,sum……. ?输入函数:scanf(); 输出函数:printf();

29

字符型3-1
在线保险单
23 年龄:_____

保险总额:98340 _____
'M' 性别:_____

int/float

char

30

字符型3-2

0 32 33 34 35 36 37 38

符号
空字符 44 45 46 47


, . /

符号
91 92 93 94 95 96


[ \ ] ^ ` {

符号

' 空格 ' ! '5' " # 'p' $ '$'
% &

"2"
'2'

48 ~ 57 58 59 60

0 ~ 9 : ; <

97 ~ 122 a ~ z 123

正确

39
40 41 42 43
31

'
( ) * +

'2' + '2' = 4
62 63 64 65 ~ 90 > ? @ A ~ Z 125 126 127

61

=

124

|
} ~ DEL (Delete键)

字符型3-3
占 8 位内存

char gender; gender='m'; unsigned
0 至 255

signed 或 unsigned

char gender='m';
Signed -128 至 +127
32

接受并显示字符
字符型数据

字符型数据

字符型变量

33

getchar() 函数
语法:

char variablename; variablename = functionname;
例如: char c; c=getchar();

34

getchar()和putchar()示例
内存

#include <stdio.h> a void main() { O char a,b; printf(" 请输入两个字符:\n"); a=getchar(); fflush(stdin); 输出: b=getchar(); 请输入两个字符: fflush(stdin); O putchar(a); K putchar(b); putchar('\n'); OK }
35

b K

Press any key to continue_

类型转换
? 自动类型转换
?原则:把表示范围小的类型的值转换到表示范围大的 类型的值

? short ? int ? long ? float ? double

? 强制类型转换
?语法:(类型名) 变量或数值 ?例如:

int a = 5, b = 3; float qu = float(a) / b;

36

数据类型的转换:
#include <stdio.h> #include <stdlib.h> int main(int argc, char *argv[]) {

试一试:按F9 后,看看输出 了什么?

char c1,c2; int i; c1=65; i='a'; c2=c1+32; printf("%c ,%d\n %c %d\n",c1,c1,i,i); printf("%c %d\n",c2,c2);
system(“PAUSE”); return 0;

}
37

提示:%c对应输出 字符,%d对应输出 整数。

总结 2-1
? 常量是在程序中不能被更改的值;而变量在程序 中可以被更改的,通过变量可以引用存储在内存 中的数据 ? C语言中的基本数据类型包括整型、单精度浮点 型、双精度浮点型和字符型

? 整型分为短整型、整型、长整型,每种整型又可 分为有符号型和无符号型

38

总结 2-2
? 单精度浮点型和双精度浮点型变量可以存储实数, 但双精度型取值范围要比单精度型大的多 ? 字符型变量可以存储单个字符,其值是该字符的 ASCII 码 ? 算术运算符提供运算功能,包括+、-、*、/、%、 ++和-? printf() 和 scanf() 函数属于格式输入输出函数 ? getchar() 和 putchar() 函数用来输入输出单个字 符的函数
39



更多相关文章:
第1周第2节课选择结构的嵌套
第1周第2节课选择结构的嵌套_其它课程_高中教育_教育专区。信息备课组选择结构 1 教案 教学内容:选择结构 3——选择结构的嵌套教学目标: 一、知识目标: (1) ...
2010年11月第二周结构技术问题汇总
2010 年 11 月第二周结构技术问题汇总 1、预应力模块“三维构件非预应力筋设计...13、PMSAP 参数勾“砼矩形梁转 T 型”会让计算面积加大不少,最明显的是...
化学必修二第一章物质结构_元素周期表精选
章​物​质​结​构​_​元​素​周​期​表​精​...2 , D 是淡黄色固体则 D 为 Na 2 O 2 ,则: CO 2结构式为 O=C...
第二周周测生物试题
第二周周测生物试题一、单项选择题: 1.下列物质的合成都能够体现“基因选择性...它与靶膜上的___结合形成稳 定的结构后,囊饱和靶膜才能融合,从而将物质准确...
第二周自测题 (答案)
第二周自测题 (答案)_信息与通信_工程科技_专业资料...当移动台做小区选择时,会将该服务小区的 T3212 ...(×) 29. 通常根据网络结构设计需要,将基站按照...
九年级物理第二周教学随笔
2 3 3 5 3 3 3 3 3 计算题 近三年知识结构分析 1,2014 聊城物理中考...故 C. 试题评析:试题的编制和设计都从生活实际现象或实际问题入手,都来源于...
简阳市三星中学2015-2016学年度上期高三第二周周考
(选择题)和第 II 卷(非选择题)两部分,共 40 题,共 300 分,共 12 页。...结构模式图,图 2 是某种生物雄性个体中的细 胞分裂示意图,图 3 是图 2 ...
第二周教案
上课周次 李园园 第二周 科学发展观和小康社会的经济建设 一、实现全面建成...二、选择题常考点 命题点一 推进经济结构战略性调整 [典例 1] (2013· 安徽...
第二周 三语
四、达标检测 1、先将下面的词语补充完整,再选择其中的两个成语写几句话。 ...(味塔愉) 2、左右结构的字有什么特点? 3、毛笔“长横”的运笔方法 法二、...
江西省丰城中学2015-2016学年下学期高三政治第二周周考试题(3.6)
增强企业发展能力 ③促进第三产业发展,有益经济结构调整 ④完善国家财税制度,...③④二.非选择题(共 40 分) 41.如今,大众创业、万众创新, “草根科创”的...
更多相关标签:
双色球周二结构走势图    结构第二周期扭转    框架结构第二周期扭转    选择结构    选择疑问句的结构    c语言选择结构    数据结构选择题    选择结构程序设计    

All rights reserved Powered by 甜梦文库 9512.net

copyright ©right 2010-2021。
甜梦文库内容来自网络,如有侵犯请联系客服。zhit325@126.com|网站地图