第 2 章 用 c 语言表达程序

55
第 2 第 第 C 第第第第第第

Upload: brina

Post on 19-Mar-2016

146 views

Category:

Documents


5 download

DESCRIPTION

第 2 章 用 C 语言表达程序. 内容回顾. 算法: 方法和步骤 框图: 算法的表示方法。流程图、 PAD 程序: 算法的具体实现 操作: 编辑→编译→链接→运行 查错:语法错误、语义错误. 内容回顾. 重点: 主函数: main 键盘输入函数 scanf 屏幕输出函数 printf 基本数据类型: int , float , double. 内容回顾. 题目: ① 几个数的最大数(最小数) ② 两个数的和(差) ③圆的面积. 内容回顾. 求两个整数的最大数 - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: 第 2 章 用 C 语言表达程序

第 2 章 用 C 语言表达程序

Page 2: 第 2 章 用 C 语言表达程序

内容回顾算法:方法和步骤框图:算法的表示方法。流程图、 PAD程序:算法的具体实现操作:编辑→编译→链接→运行 查错:语法错误、语义错误

Page 3: 第 2 章 用 C 语言表达程序

内容回顾重点: 主函数: main 键盘输入函数 scanf 屏幕输出函数 printf 基本数据类型: int , float , double

Page 4: 第 2 章 用 C 语言表达程序

内容回顾题目: ① 几个数的最大数(最小数) ② 两个数的和(差) ③圆的面积

Page 5: 第 2 章 用 C 语言表达程序

内容回顾求两个整数的最大数定义变量: int a, b, max; 分配内存空间a b max

Page 6: 第 2 章 用 C 语言表达程序

内容回顾输入 : scanf (“ %d,%d” , &a, &b);

键盘maxa b5 9

Page 7: 第 2 章 用 C 语言表达程序

内容回顾处理 : max = a;

a b max5 9 5

Page 8: 第 2 章 用 C 语言表达程序

内容回顾处理 : max = a; if ( max < b ) max = b;

a b max5 9 9

Page 9: 第 2 章 用 C 语言表达程序

内容回顾输出 : printf(“%d”, max);

a b max5 9 9

屏幕

Page 10: 第 2 章 用 C 语言表达程序

内容回顾函数结束 , 释放变量空间由操作系统( Windows )管理内存。

Page 11: 第 2 章 用 C 语言表达程序

C 程序的结构 ◆ 由函数组成 ◆ 有且只有一个主函数 (main)

Page 12: 第 2 章 用 C 语言表达程序

例 2-1 输入两个整数 ,输出其和 . ◆ 输入 : ? ◆处理 : ? ◆输出 : ?

Page 13: 第 2 章 用 C 语言表达程序

例 2-1 输入两个整数 ,输出其和 . ◆ 输入 : ? ◆处理 : ? ◆输出 : ?

scanf(“%d,%d”, &a, &b);c = a + b;

printf(“%d”, c);

不需要用 if

Page 14: 第 2 章 用 C 语言表达程序

例 2-1 输入两个整数 ,输出其和 .#include <stdio.h> // 标准输入输出函数的声明void main( ) // 主函数 , 程序的入口{ int a, b, c; /* 定义变量 */ scanf(“%d,%d”, &a, &b); // 输入 c = a + b; // 处理 printf(“%d”, c); // 输出}

①关于头文件②标识符③标识符命名④关于注释⑤版权说明

Page 15: 第 2 章 用 C 语言表达程序

例 2-2 输入两个整数 ,输出平方和 .#include <stdio.h> // 标准输入输出函数的声明

void main( ) // 主函数 , 程序的入口{ int a, b, square; /* 定义变量 */ scanf(“%d,%d”, &a, &b); // 输入 c = a*a + b*b; // 处理 printf(“%d”, square); // 输出}

Page 16: 第 2 章 用 C 语言表达程序

输入一个整数 ,输出其绝对值 . ◆输入◆处理 ◆输出

课堂练习

Page 17: 第 2 章 用 C 语言表达程序

例 2-3 计算圆的周长与面积 .◆ 输入◆处理 ◆输出

①函数②函数的构造③函数的调用④实数类型

Page 18: 第 2 章 用 C 语言表达程序

小结①C程序由函数组成,主函数是入口;②两个基本数据类型:整型、实型;③程序的基本思路:输入 -处理 -输出;④标识符、命名法。

Page 19: 第 2 章 用 C 语言表达程序

上机作业 习题 2.1~2.3 ;

Page 20: 第 2 章 用 C 语言表达程序

上机存在的问题“= ”和“ ==”是同一个意思吗?同一行的语句用逗号隔开: max=a , max=b ;编辑新的程序时,忘记关闭工作空间。

Page 21: 第 2 章 用 C 语言表达程序

内容回顾一个程序有几个主函数?主函数的作用?标识符的命名规则;匈牙利命名法整型、单精浮点、双精浮点标识符是如何表示的?

Page 22: 第 2 章 用 C 语言表达程序

例 2-3 计算圆的周长与面积 .输入处理 输出

用函数 scanf 实现键盘输入圆的半径 r。

用求圆的周长和面积的公式 c=2πr ,s=πr2,计算周长 c、面积 s。把上面的计算结果 c和 s用函数 printf向屏幕输出。

Page 23: 第 2 章 用 C 语言表达程序

例 2-3 计算圆的周长与面积 .

#include<stdio.h>void main( ){ float r, c, s ; scanf(“%f”,&r); c=2*3.1415926*r; s=3.1415926*r*r; printf(“ 周长为 :%f, 面积为 :%f\n", c, s);}

Page 24: 第 2 章 用 C 语言表达程序

例 2-3 计算圆的周长与面积 .输入处理 输出

①函数②函数的构造③函数的调用④实数类型

Page 25: 第 2 章 用 C 语言表达程序

关于函数: 输入:参数 参数处理:函数体 输出:返回值关于库函数:附录 D。

函数参数 函数值

Page 26: 第 2 章 用 C 语言表达程序

例 2-3 :计算圆的周长与面积。 #include<stdio.h> float c( float r ) { return 2*3.1415926*r; } float s( float r ) { return 3.1415926*r*r; } void main( ) { float r; scanf( "%f", &r ); printf ( “ c: %f, s:%f\n ", c(r), s(r) ); }

Page 27: 第 2 章 用 C 语言表达程序

常量 常量:在程序的运行过程中,其值不能被改变 常量的分类:

按字面形式 直接常量(字面常量)符号常量 (用标识符表示的常量)

按数据类型整型常量实型常量字符常量字符串常量

0 、 -2 、 1230.2 、 4.8 、 1.3e20'A' 、 'g' 、 '+' 、 '?'“Abc”

Page 28: 第 2 章 用 C 语言表达程序

例 2-4 球的表面积与体积 构造函数 常量标识符 编译预处理

Page 29: 第 2 章 用 C 语言表达程序

变量与内存 变量:在程序的运行过程中,其值可以 被改变的。 定义了变量就分配了空间。 空间的大小与数据类型有关。

Page 30: 第 2 章 用 C 语言表达程序

小结 构造函数、调用函数; 常量; 预处理; 变量与内存; 记住:交换两个变量的程序段作业:输入三个整数,从大到小输出。

Page 31: 第 2 章 用 C 语言表达程序

内容回顾( 1)构造函数、调用函数;( 2)常量;( 3)预处理;( 4)变量与内存。

Page 32: 第 2 章 用 C 语言表达程序

内容回顾有关预处理,请看如下实例#include<stdio.h>#define PI 3.1416#define S(x) PI*x*xvoid main(){double r;// 输入scanf (“ %lf”,&r);// 输出printf(“%lf”,S(r));}

Page 33: 第 2 章 用 C 语言表达程序

内容回顾有关预处理,再请看如下实例,看看结果与上面的实例有何不同?#include<stdio.h>#define PI 3.1416#define S(x) PI*x*xvoid main(){double a , b;//输入scanf(“ %lf, %lf”,&a, &b);// 输出printf(“%lf”,S(a+b));}

Page 34: 第 2 章 用 C 语言表达程序

内容回顾有关变量与内存,请看例 2-6 :交换两个变量的值。#include<stdio.h>void main(){int a,b,t;// 输入a=2;b=3;//交换t=a;a=b;b=t;// 输出printf(“%d,%d”,a,b);}

Page 35: 第 2 章 用 C 语言表达程序

a 2

(a)执行“ a=2; b=3;”后

b 3 t a 2 b 3 t(b)执行“ t=a;”后

a 2 b 3 t 2

(c)执行“ a=b;”后a 3 b 3 t 2

(d)执行“ b=t;”后

此时变量 t单元里的值是内存原来的“残留物”,值不确定,不必关心

t 2

Page 36: 第 2 章 用 C 语言表达程序

从例 2-6 不难看出,变量与内存的关系: 变量有空间 变量的值能被覆盖 变量的值能被复制

Page 37: 第 2 章 用 C 语言表达程序

表达式 例 2-7 :华氏温度转换成摄氏温度。 输入:华氏温度 F (实数) 处理: 输出:摄氏温度 C (实数)

)32(95

FC

Page 38: 第 2 章 用 C 语言表达程序

表达式 算术运算符 加( +)、减(-)、乘(*)、除( / )、整数取余(%)

注意: ①除( / ):当两个操作数都是整数时,结果

也为整数(丢掉小数部分)。②整数取余(%):取模运算,要求整数操作

数。

Page 39: 第 2 章 用 C 语言表达程序

课堂练习首先请大家将下列的应用题的解析式写出;然后将写出的解析式用C

语言的表达式表示出来 1.利民水果店运来500千克桃,卖出了 13筐,平均每筐 25千克,还剩多少千克桃?

2.一个县有1440人参加电视大学学习。每8人准备一台电视机。已经准备好95台,还缺多少台?

3.一个粮食加工厂碾了一批大米。已经装满96袋,每袋75千克,还剩 2700千克没有装袋。把这批大米平均分两批运出,一共运出多少千克?

Page 40: 第 2 章 用 C 语言表达程序

课堂练习 4.洗发水每瓶 15 元,商场开展促销活动,买 2瓶送 1瓶。一次买 2瓶,每瓶便宜多少元?

5.甲乙两种面包车,甲车可乘 12人,每辆租金 120元。乙车 18 人,每辆租金 160 元。旅行团 58人,怎样租最省钱?

Page 41: 第 2 章 用 C 语言表达程序

表达式 关系运算符 <, <=, ==, >, >=, !=

逻辑运算符 与( && )、或( | |)、非 (! )

条件运算符 条件 ? 表达式 1 : 表达式 2

Page 42: 第 2 章 用 C 语言表达程序

小结预处理方式变量与内存的关系,注意变量定义之后才能使用

表达式:算术表达式、逻辑表达式运算符:算术运算符、逻辑运算符、位操作运算符、条件运算符(三目)

Page 43: 第 2 章 用 C 语言表达程序

上机作业习题 2.4习题 2.8

Page 44: 第 2 章 用 C 语言表达程序

内容回顾变量与内存 运算符: 算术、关系、逻辑 条件运算(三目运算)

Page 45: 第 2 章 用 C 语言表达程序

表达式位运算符 按位:与 (&) 、或 (|) 、异或 (^) 、取反 (~)

类型自然转换 向占用空间大的转换; 占用空间相同,则向实数转换。

Page 46: 第 2 章 用 C 语言表达程序

使用库函数例 2-9 求解一元二次方程。输入:方程的系数 a, b, c处理:用求根公式求解 x1 , x2输出:输出解 x1 , x2

Page 47: 第 2 章 用 C 语言表达程序

给变量赋值 赋值表达式: 变量 = 表达式 赋值表达式的值是左边变量的值语句:表达式后面加分号变量的自增、自减x=x+1; 写成变量 x自增: ++x; 或 x++;x=x-1; 写成变量 x自减: --x; 或 x--;

Page 48: 第 2 章 用 C 语言表达程序

给变量赋值 变量的自增自减 ①单独使用自增的语句, ++x与 x++ 效果相同,自减同理;

②特别提示:忌讳使用难懂的表达方式,如“ y=x+++z”,有歧义!

复合赋值运算在“=”之前加上其他运算符,如 += 、 -=、 *=等。

Page 49: 第 2 章 用 C 语言表达程序

基本输入和输出格式输入函数: scanf(“格式字符串”,地址表)格式输出函数: printf(“格式字符串”,表达式表) 格式字符:以 % 号引导

Page 50: 第 2 章 用 C 语言表达程序

基本输入输出字符输入函数: getchar( ) ;在 stdio.h 中,需回车 getch( ) ;在 conio.h 中,不需回车字符输出函数: putchar( 表达式 );转义字符:以‘ \’引导

Page 51: 第 2 章 用 C 语言表达程序

基本数据类型 变量的含义 变量:其实就是一片内存空间。 一片内存空间由两个条件决定:

这片空间的起始地址(首地址) 这片空间的长度(字节数)

数据类型 决定空间大小(自然也决定了取值范围)

Page 52: 第 2 章 用 C 语言表达程序

基本数据类型变量的地址: printf(“%p”, &a); 输出变量 a的起始地址。变量的长度: printf(“%d”, sizeof(a) ) ; 输出变量 a占用的字节数。由指针变量存取变量的值: 例题 2-12

Page 53: 第 2 章 用 C 语言表达程序

基本数据类型表达式混合运算类型的转换1自然转换 向占用空间大的类型转换; 如果遇到实数,向实数类型转换。2赋值转换 以左边变量的类型为准。

Page 54: 第 2 章 用 C 语言表达程序

基本数据类型3强制类型转换 (double)1/2 等价于 1.0/2

思考: (double)a/b 与 (double)(a/b) 的差别?比如: (double)1/2 与 (double) ( 1/2 )

Page 55: 第 2 章 用 C 语言表达程序

本章小结 程序结构 自定义函数 变量与内存 运算符与表达式 赋值运算、赋值表达式 基本输入输出 基本数据类型