c语言教程第4章1课件
合集下载
C语言程序设计基础讲解PPT第4章(第一讲)
2019/1/8
【例4.5】选择法排序(续)
for (i=0; i<N; i++) 输入a[i] for (j=0; j<N-1; j++) for (i=j+1; i<N; i++) a[j]>a[i] T F a[j]与a[i]交换 输出a[0]~a[N-1] 图4.3 选择法排序
19
2019/1/8
#define N 5 main( ) { int a[N]; 程序运行情况如下: int i,j,t; 96 78 65 86 40 for (i=0; i<N; i++) The sorted numbers: scanf("%d",&a[i]); 40 65 78 86 96 printf("\n"); for (j=0; j<N-1; j++) /*确定基准位置 */ for(i=j+1; i<N; i++) if (a[j]>a[i]) { t=a[j];a[j]=a[i];a[i]=t; } printf("The sorted numbers: \n"); … }
20
2019/1/8
1
程序设计基础 I
第4章
数 组
青海大学 计算机系
第4章 数组
本章重点介绍 : 4.1 一维数组 4.2 二维数组 4.3 字符数组与字符串
2
2019/1/8
第4章 数组
3
一个人N门课的成绩怎样存储和处理? 一个班N门课的成绩怎样存储和处理?...... 这些数据的特点:具有相同的数据类型。 为了方便地使用这些数据,C语言提供了一 种构造数据类型:数组。 例如:存储学生成绩用实型数组 score[5] 其中:score是数组名。该数组可以存放5个成绩, 分别用下标变量表示: score[0],score[1],…score[4]。 下标变量也称为数组元素。
大学C语言基础自学课件 第4章
例 scanf(“%3d%*4d%f”,&k,&f); – 例 例 – scanf(“%2d 例 scanf( scanf( “%4d%2d%2d “%3c%2c • %*3d•%2d”,&a,&b); ”,&c1,&c2); ”,&yy,&mm,&dd); 输入 12345678765.43 输入 12 • 345 • 67 – – 输入 输入 19991015 abcde printf("k=%d,%f\n",k,f); 1234567 – printf("%c,%c\n",c1,c2);
7
第四章 顺序程序设计 – 格式输出函数
VC6.0编译器
格式:printf(“格式控制串”,输出表) 功能:按自右向左的顺序,依次计算“输出列表”中各表达式 #include <stdio.h> 的值,再按“格式串”规定的格式将自左向右的顺序表达式的 void main() 值输出到显示器。 { int i=3,j=4; 运行结果: – 输出表:要输出的数据(可以没有,多个时以“ ,”分隔) printf("%d,%d\n",j,j=i); 3,3 – 格式控制串:包含三种信息 printf("%d,%d\n",i,j++); 3,3 • 格式说明: %[修饰符]格式字符,用于指定输出格式 printf("%d,%d\n",i=j,j); 4,4 • 普通字符: 原样输出 printf("%d,%d,%d\n",i,j); 4,4,******* • 转义字符:控制字符,换行 (\n)、退格(\b)、回车(\r) printf("%d\n",i=j,j+1); 4 }
C语言程序设计教程第2版课件第4章
一条完整的C语句必须以“;”结束。 “;”是 一个语句不可缺少的一部分。
1. 控制语句:完成一定的控制功能。
C 有9种控制语句:
⑴if( ) ~ else ~
(条件语句)
⑵ for( ) ~
(循环语句)
⑶ while( ) ~
(循环语句)
⑷ do ~ while( ) (循环语句)
⑸ continue
4.1 C语句介绍
一、C程序结构
C程序
源程序文件1
源程序文件2 • • • • • • 源程序文件n
预处理命令 全局变量声明 函数1 • • • • • •
函数n
函数首部 函数体
局部变量声明 执行语句
二、C语句概述
C语句分类: 1.控制语句 2.函数调用语句 3.赋值语句 4.空语句 5.复合语句
main() { int x,y;
scanf(“%5d,%3d”,&x,&y); } 输入数据: 345,567
说明:
1. %后的“*”附加说明符,用来表示跳过它相应的数据。 如:scanf(“%2d ,%*3d , %2d”,&a,&b); 输入:12 , 456 , 67 结果:a=12 b=67
如:float f=123.456;
printf(“%10.2f ,%-10.2f”,f);
输出结果:
123.46,123.46
8. e格式——以指数形式输出实数。
(1) %e 如: printf(“%e”,123.456);
输出结果: 1.234560e+002
6位
3位
一般共占13列宽度
(2) % m.ne和 %–m.ne: m、n和“–”字符含义 与
1. 控制语句:完成一定的控制功能。
C 有9种控制语句:
⑴if( ) ~ else ~
(条件语句)
⑵ for( ) ~
(循环语句)
⑶ while( ) ~
(循环语句)
⑷ do ~ while( ) (循环语句)
⑸ continue
4.1 C语句介绍
一、C程序结构
C程序
源程序文件1
源程序文件2 • • • • • • 源程序文件n
预处理命令 全局变量声明 函数1 • • • • • •
函数n
函数首部 函数体
局部变量声明 执行语句
二、C语句概述
C语句分类: 1.控制语句 2.函数调用语句 3.赋值语句 4.空语句 5.复合语句
main() { int x,y;
scanf(“%5d,%3d”,&x,&y); } 输入数据: 345,567
说明:
1. %后的“*”附加说明符,用来表示跳过它相应的数据。 如:scanf(“%2d ,%*3d , %2d”,&a,&b); 输入:12 , 456 , 67 结果:a=12 b=67
如:float f=123.456;
printf(“%10.2f ,%-10.2f”,f);
输出结果:
123.46,123.46
8. e格式——以指数形式输出实数。
(1) %e 如: printf(“%e”,123.456);
输出结果: 1.234560e+002
6位
3位
一般共占13列宽度
(2) % m.ne和 %–m.ne: m、n和“–”字符含义 与
c语言基础 ppt第4章
mymdl: power()
14/42
模块化设计与应用 函数 • 库函数、自定义函数 • 函数的定义
一般形式: 函数运行完毕后返回值
的类型,无加void 参数表
函数类型 函数名(数据类型 参数1,数据类型 参数2, …) { 函数的唯一标识符合标 函数体 识符命名规则 }
!!函数定义不允许嵌套
15/42
26/42
模块化设计与应用 函数参数的传递方式 值传递方式 – 方式:函数调用时,为形参分配单元,并将实 参的值复制到形参中;调用结束,形参单元 被释放,实参单元仍保留并维持原值 – 特点: »形参与实参占用不同的内存单元 »单向传递
27/42
模块化设计与应用 注意: (1) 在函数没有被调用时,函数中的形参只是一个符 号,系统并不为之分配内存空间,只有该函数被调用时 ,才会为之分配存储空间,并且在调用结束后,形参所 占的内存也被释放。 (2) 在内存中,实参单元与形参单元是不同的单元。 (3) 实参可以是常量、变量或表达式,但要求它们有 确定的值,也就是说,在调用函数时必须给形参赋以确 定的值。 (4) 在被定义的函数中,必须指定形参的类型,并且 实参与形参的类型应一致,否则将发生类型“不匹配的 错误”。 (5) 形参在获得值之后便与实参相脱离,此后无论形 参发生了怎样的改变,都不会影响到实参。 28/42
模块化设计与应用
函数
分析:
• •
c
5 9
( x 32)
确定形参:求 c 必须知道 x 的大小,设形参为x 确定函数:函数的返回值即为 c 的值,设为实型 程序2: float ftoc (float x) { float c ; c =(5.0/9.0)*(x – 32 ); return c ; } 程序1: float ftoc ( void) { float c, x ; x=50.5; c =(5.0/9.0)*( x– 32 ); return c ; }
《新编C语言程序设计教程》课件第4章
为了满足将多条。
如if语句中的选择体和while语句中的循环体需多条语句描述 时,就必须采用复合语句。
复合语句只需用大括号“{ }”将一系列语句括起来即可。
复合语句不是一条具体语句,它是一种逻辑上的考虑,凡是 单一语句可以存在的位置,均可以使用复合语句。复合语句用 在语法上只能使用单一语句,而相应操作需由多条语句描述。 复合语句又称为分程序,它可以有属于自己的数据说明部分。
第 4章 顺序结构程序设计
4.1.3 特殊语句
1. 注释语句
格式为: /*注释文本*/ 注释语句虽然不对程序的运行产生任何影响, 但必要的 注释是程序的重要组成部分。 注释分功能性注释和说明性注释。 功能性注释用以注 释程序、 函数及语句块的功能, 说明性注释用以注释变量的 作用。
第 4章 顺序结构程序设计
(10) 在分析程序的输入数据时, 要同时考虑输入数据 的输入格式。
第 4章 顺序结构程序设计
4.3 数据输出
4.3.1 一般格式
printf(格式字串, 输出参数表) (1) 格式字串用以描述输出数据的格式, 由格式说明符 和普通字符组成。 与scanf( )函数中格式字串一样, 格式说 明符由“%”和格式字符组成, 不同的格式说明符对应不同 类型数据的输出, 普通字符原样输出。
第 4章 顺序结构程序设计
(2) 输出参数可以是表达式。如果是常量, 直接输出; 如是 变量, 输出其值; 如是表达式, 先计算表达式的值, 再输出。
(3) 输出函数的调用一般也采用语句调用形式, 间接形成C 语言的输出语句。 例如: int i=3, j=6; ① printf("i=%2d,j=%2d",i,j); 输出结果:i= 3,j= 6 ② printf("%2d*%2d=%2d",i,j,i*j);
如if语句中的选择体和while语句中的循环体需多条语句描述 时,就必须采用复合语句。
复合语句只需用大括号“{ }”将一系列语句括起来即可。
复合语句不是一条具体语句,它是一种逻辑上的考虑,凡是 单一语句可以存在的位置,均可以使用复合语句。复合语句用 在语法上只能使用单一语句,而相应操作需由多条语句描述。 复合语句又称为分程序,它可以有属于自己的数据说明部分。
第 4章 顺序结构程序设计
4.1.3 特殊语句
1. 注释语句
格式为: /*注释文本*/ 注释语句虽然不对程序的运行产生任何影响, 但必要的 注释是程序的重要组成部分。 注释分功能性注释和说明性注释。 功能性注释用以注 释程序、 函数及语句块的功能, 说明性注释用以注释变量的 作用。
第 4章 顺序结构程序设计
(10) 在分析程序的输入数据时, 要同时考虑输入数据 的输入格式。
第 4章 顺序结构程序设计
4.3 数据输出
4.3.1 一般格式
printf(格式字串, 输出参数表) (1) 格式字串用以描述输出数据的格式, 由格式说明符 和普通字符组成。 与scanf( )函数中格式字串一样, 格式说 明符由“%”和格式字符组成, 不同的格式说明符对应不同 类型数据的输出, 普通字符原样输出。
第 4章 顺序结构程序设计
(2) 输出参数可以是表达式。如果是常量, 直接输出; 如是 变量, 输出其值; 如是表达式, 先计算表达式的值, 再输出。
(3) 输出函数的调用一般也采用语句调用形式, 间接形成C 语言的输出语句。 例如: int i=3, j=6; ① printf("i=%2d,j=%2d",i,j); 输出结果:i= 3,j= 6 ② printf("%2d*%2d=%2d",i,j,i*j);
C语言教程第4章1课件
scanf(“%7.2f”,&a);
第4章 顺序程序设计
5.输入形式 (1)scanf("%d%d%d",&a,&b,&c); 输入:3 4 5 或 3 4 5 或 3(按Tab键)4(按Tab键)5 或空格、回车、Tab键的组合。
(2)scanf("%3d%2d%3d",&a,&b,&c); 运行时若输入: 123456789,则a、b、c的值分别为 123、45.678。
①%f
123.458000
②%12f
□□123.458000
③%-12f 123.458000□□
④%8f
123.458000
第4章 顺序程序设计
⑤%8.2f ⑥%-8.2f ⑦%.2f
□□123.46 123.46□□ 123.46
四舍五入
第4章 顺序程序设计
在输出float与double时, 注意有效位(7位、16位) main() {float x=111111.111,y=222222.222;
①%e
1.234580e+002
②%13.4e ③%-13.4e ④%.4e
□□1.2346e+002 1.2346e+002□□ 1.2346e+002
四舍五入
⑤%E
1.234580E+002
第4章 顺序程序设计
7、g格式 自动选f或e格式(选择输出时占宽度较小的一
种)输出实型数, 且不输出无意义的零。以输出 实型数f=123.468为例。 printf(“%f,%e,%g”,f,f,f); 123.468000,1.234680e+002,123.468
第4章 顺序程序设计
5.输入形式 (1)scanf("%d%d%d",&a,&b,&c); 输入:3 4 5 或 3 4 5 或 3(按Tab键)4(按Tab键)5 或空格、回车、Tab键的组合。
(2)scanf("%3d%2d%3d",&a,&b,&c); 运行时若输入: 123456789,则a、b、c的值分别为 123、45.678。
①%f
123.458000
②%12f
□□123.458000
③%-12f 123.458000□□
④%8f
123.458000
第4章 顺序程序设计
⑤%8.2f ⑥%-8.2f ⑦%.2f
□□123.46 123.46□□ 123.46
四舍五入
第4章 顺序程序设计
在输出float与double时, 注意有效位(7位、16位) main() {float x=111111.111,y=222222.222;
①%e
1.234580e+002
②%13.4e ③%-13.4e ④%.4e
□□1.2346e+002 1.2346e+002□□ 1.2346e+002
四舍五入
⑤%E
1.234580E+002
第4章 顺序程序设计
7、g格式 自动选f或e格式(选择输出时占宽度较小的一
种)输出实型数, 且不输出无意义的零。以输出 实型数f=123.468为例。 printf(“%f,%e,%g”,f,f,f); 123.468000,1.234680e+002,123.468
c程序设计第四章PPT教学课件
(2)能被4整除,又能被400整除 (year %4==0&& year %100!=0)||year % 400= =0
2020/12/10
9
4.2 结构化程序设计
• C语言中的基本语句有:
– 空语句
;
• 单独出现的一个分号,称为一个空语句;
• 空语句可应用于:在语法上要求出现一条语句,但程序中 并不需要执行任何动作的场合;
真
语句1
语句2 真
语句3
4.3if语句
18
• 条件语句的掌握要点
– 条件语句的语法、流程
– 条件语句的嵌套规则(匹配规则):
else 总是和 前面最接近的、可匹配的
if 相匹配
如下例:
if ( e1 ) e01; if ( e2 ){ e02; if ( e3 ) e03; } else if ( e4 ) e04; else e05;
4.1关系运算符和关系表达式
4
一、关系运算符及优先次序
< <= > >= = = !=
优先次序
(1)(< 、<=、>、>=)>(= =、!=) (2)算术运算 关系运算 赋值运算 例:c>a+b == c>(a+b)
a>b!=c == (a>b)!=c
二、关系表达式 [关系表达式]用关系运算符将两个
6
§4.1 逻辑运算符
• &&
与
• ||
或
•!
非
• 掌握要点:
– 参与逻辑运算的为逻辑量(整类型数据)
– 逻辑与,两个逻辑量(条件)同时成立时结果为真
2020/12/10
9
4.2 结构化程序设计
• C语言中的基本语句有:
– 空语句
;
• 单独出现的一个分号,称为一个空语句;
• 空语句可应用于:在语法上要求出现一条语句,但程序中 并不需要执行任何动作的场合;
真
语句1
语句2 真
语句3
4.3if语句
18
• 条件语句的掌握要点
– 条件语句的语法、流程
– 条件语句的嵌套规则(匹配规则):
else 总是和 前面最接近的、可匹配的
if 相匹配
如下例:
if ( e1 ) e01; if ( e2 ){ e02; if ( e3 ) e03; } else if ( e4 ) e04; else e05;
4.1关系运算符和关系表达式
4
一、关系运算符及优先次序
< <= > >= = = !=
优先次序
(1)(< 、<=、>、>=)>(= =、!=) (2)算术运算 关系运算 赋值运算 例:c>a+b == c>(a+b)
a>b!=c == (a>b)!=c
二、关系表达式 [关系表达式]用关系运算符将两个
6
§4.1 逻辑运算符
• &&
与
• ||
或
•!
非
• 掌握要点:
– 参与逻辑运算的为逻辑量(整类型数据)
– 逻辑与,两个逻辑量(条件)同时成立时结果为真
c语言程序设计第4章PPT课件
do … while ( )
(循环语句)
2021/4/6
(3).其他控制语句 第4页/共50页
4
2、 说明性语句
C程序由函数组成。函数的格式:
函数名(参数表) { 说明部分;
数据类型说明语句
执行部分; }
可执行语句
• 对程序中使用的变量、数组、函数等操作对象 进行定义、声明的描述语句
• 只起说明作用,不产生可执行的机器指令代码。
赋值语句
注意:
函数调用语句
2021/4/6
1、赋值语句(a=3;)有赋值表达式(a=3)构成。
2、 分号是语句必不可少的一部分 3、 单独的一个分号“;” 构成一个空语句 例如: ; (空语句,是最简单的C语句)
6
第6页/共50页
4、空语句
只有一个分号的语句,叫空语
句。即它什么也不做。有时用
来作流程的转向点(流程从程
序其它地方转到此处语句),
也可以用来作为循环语句中的
循环体(循环体是空语句,表
2021/4/6
7
第7页/共50页
5、 复合语句 • 用一对花括号“{}”括起来的若干条语句
• 花括号中可以是说明语句、表达式语句、控制语句,也可以是复合语句 • 例如: ⑴ if (a>b) { max=a; min=b; } ⑵ for(n=1; n<10 ;n++)
2021/4/6
2
第2页/共50页
4.1 C语句概述 • 程序包括数据描述(由声明部分来实现)和数据操作(由语句来实现)。数据 描述包括定义数据结构和在需要时对数据赋予初值。数据操作的任务是对已提 供的数据进行加工。
• 主要内容:
C语言程序设计课件-4
者是在程序运行阶段将值赋给变量的,而后者是在编译时将变量的 值存放到系统为变量分配的内存单元中去的。
(3)变量。
2020/8/29
6
4.1.2 整型数据
2020/8/29
7
4.1.2 整型数据
在C语言中,整数可用三种不同的数制表示: 十进制数,直接给出数字; 八进制数,第1位数字前加0; 十六进制数,第1位数字前加0x。 长整型数,用后缀“L”或“l” 表示; 短整型数,用后缀“H”或“h”表示; 无符号整数,用后缀“U”或“u”表示。
2020/8/29
8
4.1.2 整型数据
例4-1 编程序测试不同数制的表示和整型数据取值范围。源程序如下:
#include <stdio.h>
int main(void)
{
printf("%d,%d,%d\n",34,034,0X34); //34的不同计数制的输出
printf(“result=%hd\n",32765);
4.4 数据的输入与输出 4.4.1 printf( )函数 4.4.2 scanf( )函数 4.4.3 getchar()函数与
putchar()函数
4.2.3 逻辑运算符和表达式
4.2.4 三目条件运算符与条件表达式
4.2.5 赋值运算与赋值表达式
4.2.6 逗号运算符与逗号表达式
4.2.7 sizeof运算符
2.变量 变量是指在程序运行过程中,其值可以改变的量。
(1)变量的定义 用户按标识符的命名规则并结合程序中的实际意义对变量命名。
C语言中规定变量在使用前必须说明。其形式为: [存储类型] 数据类型 <变量名列表>;
(2)变量的赋初值和初始化的区别 用赋值语句和初始化的方法虽然都能使变量获得一个值,但前
(3)变量。
2020/8/29
6
4.1.2 整型数据
2020/8/29
7
4.1.2 整型数据
在C语言中,整数可用三种不同的数制表示: 十进制数,直接给出数字; 八进制数,第1位数字前加0; 十六进制数,第1位数字前加0x。 长整型数,用后缀“L”或“l” 表示; 短整型数,用后缀“H”或“h”表示; 无符号整数,用后缀“U”或“u”表示。
2020/8/29
8
4.1.2 整型数据
例4-1 编程序测试不同数制的表示和整型数据取值范围。源程序如下:
#include <stdio.h>
int main(void)
{
printf("%d,%d,%d\n",34,034,0X34); //34的不同计数制的输出
printf(“result=%hd\n",32765);
4.4 数据的输入与输出 4.4.1 printf( )函数 4.4.2 scanf( )函数 4.4.3 getchar()函数与
putchar()函数
4.2.3 逻辑运算符和表达式
4.2.4 三目条件运算符与条件表达式
4.2.5 赋值运算与赋值表达式
4.2.6 逗号运算符与逗号表达式
4.2.7 sizeof运算符
2.变量 变量是指在程序运行过程中,其值可以改变的量。
(1)变量的定义 用户按标识符的命名规则并结合程序中的实际意义对变量命名。
C语言中规定变量在使用前必须说明。其形式为: [存储类型] 数据类型 <变量名列表>;
(2)变量的赋初值和初始化的区别 用赋值语句和初始化的方法虽然都能使变量获得一个值,但前