最新《C语言程序设计》课件——第三章课件PPT
合集下载
C语言程序设计实用教程第3章精品PPT课件
例如:#include<stdio.h>
#include <math.h> 这里的#include是编译预处理命令,其作用是将某个已经存在的文件 包含到程序中来。包含了头文件”stdio.h”才能调用标准输入输出函数; 包含了”math.h”才能调用数学函数。考虑到printf和scanf函数使用频 繁,系统允许使用这两个函数时可不加#include命令。 ② 库函数调用规则
?
6
第三章 顺序结构程序设计
3.1.1 控制语句
if~else~语句 选择分支语句 switch语句
结构化语句
while语句
控制语句
循环语句 do-while语句 for语句
非结构化语句
continue语句 限定转向语句 break语句
return语句
?
C语句
控制语句
if( ) ~ else ~ switch for ( ) ~ while ( ) ~ do ~ while( ) continue
break
goto
return
if (x>y) z=x;
else z=y;
a=3;
表达式语句 由表达式加一个分号构成一个语句。
复合语句
由{ }将一些语句括起来。
重点与难点:
各种数据类型的输入和输出格式控制。
11.10.2020
C语言程序设计
1
第三章 顺序结构程序设计
第三章 顺序程序设计
3.1 C语句概述 3.1.1 控制语句 3.1.2 表达式语句 3.1.3 复合语句
3.2 数据的输入与输出 3.2.1 字符输入输出函数 3.2.2 格式输出函数 3.2.3 格式输入函数
#include <math.h> 这里的#include是编译预处理命令,其作用是将某个已经存在的文件 包含到程序中来。包含了头文件”stdio.h”才能调用标准输入输出函数; 包含了”math.h”才能调用数学函数。考虑到printf和scanf函数使用频 繁,系统允许使用这两个函数时可不加#include命令。 ② 库函数调用规则
?
6
第三章 顺序结构程序设计
3.1.1 控制语句
if~else~语句 选择分支语句 switch语句
结构化语句
while语句
控制语句
循环语句 do-while语句 for语句
非结构化语句
continue语句 限定转向语句 break语句
return语句
?
C语句
控制语句
if( ) ~ else ~ switch for ( ) ~ while ( ) ~ do ~ while( ) continue
break
goto
return
if (x>y) z=x;
else z=y;
a=3;
表达式语句 由表达式加一个分号构成一个语句。
复合语句
由{ }将一些语句括起来。
重点与难点:
各种数据类型的输入和输出格式控制。
11.10.2020
C语言程序设计
1
第三章 顺序结构程序设计
第三章 顺序程序设计
3.1 C语句概述 3.1.1 控制语句 3.1.2 表达式语句 3.1.3 复合语句
3.2 数据的输入与输出 3.2.1 字符输入输出函数 3.2.2 格式输出函数 3.2.3 格式输入函数
c语言第三章ppt课件
§3.3 赋值语句
“=“是一个运算符 注意赋值表达式与赋值语句的区别
§3.4 输入输出在c中的实现
输入输出是以计算机主机为主体而言 输入输出是由函数来实现的
库函数:由厂商预先编写好,并编译成目标文件 使用库函数时,用预编译命令“#include”将有
关的“头文件”包含到用户源文件中。
#include <stdio.h> printf,scanf可不加#include命令
%m.ne和%-m.ne ,n指小数部分的小数位数 printf(“%e%10e%10.2e%.2e%-10.2e”,f,f,f, f,f); 设f=123.456,输出结果为
1.23456e+02 1.23456e+02 1.2e+02 1.2e+02 1.2e+02 ❖g格式符,用来输出实数,根据数值的大小,自动选
printf(“%f %10f %10.2f %.2f %-10.2f \n”,f,f,f,f,f) ;
运} 行结果:
123.456001 123.456001 123.46 123.46 123.46
❖e格式符:以指数形式输出实数 %e ,不指定输出数据所占宽度和数字部分的小数位数。 数值按规范化指数形式输出。 如:printf(“%e”,123.456);输出结果为1.23456e+02
❖格式控制:包含两种信息 格式说明: %格式字符 ,用于指定输出格式
普通字符或转义序列:原样输出
❖输出表列:要输出的数据(可以没有,也可以是表达 式,多个时以“,”分隔
printf(参数1,参数2,参数3……参数n )
格式字符
❖d格式符:输出十进制整数 %d ,按整型数据的实际长度输出 %md,m为指定的输出字段的宽度。如果数据的位数 小于m,则左端补空格,否则按实际位数输出 例:printf(“%4d,%4d”,a,b); 若a=123,b=12345,则输出结果为▂123,12345 %ld,输出长整型数据 例:long a=135790;printf(“%ld”,a); 也可以指定字段宽度,如%8ld
《C语言程序设计》课件——第三章
第三章 数据类型、 运算符和表达式
• 标识符:用来标识变量名、符号常量名、 数组名、函数名、文件名的有效字符序列。 – 关键字 – 预定义标识符 – 用户定义标识符 • 字母或下划线开头,后跟字母、数字和下 划线组成。 • 变量要先定义后使用
15
第三章 数据类型、 运算符和表达式
下列字符串中可以做C语言程序中的标识符的 有哪些? print _3id oodb I\am 3pi Line# str_1 His.age while aBc
小数形式:如 123.0 .123 0.0 12.5
指数形式:如123e2 123E2
7
2.4 字符型常量 Character constant
第三章 数据类型、 运算符和表达式
• 单引号括起来的一个字符。如: ' a ' • 字符常量的值是一个数字值。如字符常 量' 0 ' ,其ASCII为48,所以存储的实际 值为48。 • 字符常量可以象整数一样参与运算。
float double
long double长双精度
128
-1.2*10-4932 ~1.2*104932
2、变量的定义
float x,y;
double z;
/*指定x,y为单精度实型变量*/
/*指定z为双精度实型变量*/
20
3.5 字符变量
1、变量的定义
char c1,c2; /*指定c1,c2为字符型变量*/
第三章 数据类型、 运算符和表达式
2、字符型数据的存储
以ASCII码存储,存储形式与整型一样,可以和整数 进行运算 main() {char c1,c2; 结果:A,B c1=„a‟;c2=„b‟; c1=c1-32;c2=c2-32; 65,66 printf(“%c,%c\n”,c1,c2); printf(“%d,%d\n”,c1,c2); }
《CC++语言程序设计》课件第3章 程序设计基础
a=b=c=2;i=j=k=m+1;
③ 复合赋值:变量双目操作符=表达式;例 如:
sum+=i;等价于sum=sum+i;
特殊语句
9
空语句、复合语句都属于特殊语句。
(1)如果语句只有一个分号,就是空语句。
程序执行空语句时不产生任何动作。它可 以作为循环语句中的空循环体;或代替模块 化程序设计中还尚未实现的以及暂不加入的 部分。程序中有时需要加上一个空语句来表 示存在一条语句,但是随意加上分号有时会 造成逻辑上的错误,因此,用户应该慎用或 去掉程序中不必要的空语句。
(4)调试运行。把C程序输入计算机,编辑成C源程 序文件;然后进行编译、链接和运行,修改错误,直 到输出正确结果。
3.2 数据的输入与输出
14
数据的输入输出是程序设计中使用最普遍的 基本操作。程序运行所需的数据通常要从外部 设备(如键盘、文件、扫描仪等)输入,程序 的运行结果通常也要输出到外部设备(如打印 机、显示器、绘图仪、文件等)。
第3章 程序设计基础
3.1 程序结构和语句 3.2 数据的输入和输出 3.3 顺序结构的程序设计 3.4 选择结构的程序设计 3.5 循环结构的程序设计 3.6 程序设计的风格 3.7 小结
3.1 程序结构和语句
2
3.1.1 三种程序结构
顺序结构
选择结构
流
A
程
图
B
Y
N
P成立?
A
B
N-S
结
构
A
图
B
P
其他 %% 输出字符 % 本身
在%和格式符之间可以使用格式修饰符
格式修饰符
19
l 输出长整型数(只可与d、o、x、u结合用)
③ 复合赋值:变量双目操作符=表达式;例 如:
sum+=i;等价于sum=sum+i;
特殊语句
9
空语句、复合语句都属于特殊语句。
(1)如果语句只有一个分号,就是空语句。
程序执行空语句时不产生任何动作。它可 以作为循环语句中的空循环体;或代替模块 化程序设计中还尚未实现的以及暂不加入的 部分。程序中有时需要加上一个空语句来表 示存在一条语句,但是随意加上分号有时会 造成逻辑上的错误,因此,用户应该慎用或 去掉程序中不必要的空语句。
(4)调试运行。把C程序输入计算机,编辑成C源程 序文件;然后进行编译、链接和运行,修改错误,直 到输出正确结果。
3.2 数据的输入与输出
14
数据的输入输出是程序设计中使用最普遍的 基本操作。程序运行所需的数据通常要从外部 设备(如键盘、文件、扫描仪等)输入,程序 的运行结果通常也要输出到外部设备(如打印 机、显示器、绘图仪、文件等)。
第3章 程序设计基础
3.1 程序结构和语句 3.2 数据的输入和输出 3.3 顺序结构的程序设计 3.4 选择结构的程序设计 3.5 循环结构的程序设计 3.6 程序设计的风格 3.7 小结
3.1 程序结构和语句
2
3.1.1 三种程序结构
顺序结构
选择结构
流
A
程
图
B
Y
N
P成立?
A
B
N-S
结
构
A
图
B
P
其他 %% 输出字符 % 本身
在%和格式符之间可以使用格式修饰符
格式修饰符
19
l 输出长整型数(只可与d、o、x、u结合用)
C语言程序设计第3章.ppt
例如: putchar('A'); /*输出大写字母A*/ putchar(97); /*输出小写字母a*/ putchar(ch); /*输出字符变量ch的值*/ putchar(\101); /*输出大写字母A */ putchar(‘\n’); /*换行,(执行控制功能,*/
大学计算机基础
网络信息中心教研室
C语言程序是一个由main()体内的若干变量的 声明、赋值等操作以及若干函数组成的,没有编 译过的程序称为源程序。
源程序的某些行称为语句,每个语句的最后有 一个半角分号“;”,用来表示语句的结束。用“;” 隔开的语句,可以写在同一行,也可以写成几行, 但这些语句必须包含在函数体中。
大学计算机基础
网络信息中心教研室
第3章
顺序结构程序设计与编译预处理
网络信息中心教研室
大学计算机基础
主要内容
3.1 C语句概述 3.2 赋值语句 3.3 输入与输出 3.4 常用函数举例 3.5 编译预处理 3.6 顺序结构程序设计举例
网络信息中心教研室
2
3.1 C语句概述
C语言的语句用来向计算机系统发出指令,单 独的一条语句或者是复合语句完成特定的操作, 这些操作的不同组合,用来实现一系列数据处理 功能。
5. 空语句 只有“;”号的语句称为空语句 .
如:
for(i=0;i<32768;i++)
;
/*空语句,注意它的意义*/
大学计算机基础
网络信息中心教研室
7
3.2 赋值语句
赋值语句的构成形式 赋值语句是由赋值表达式再加上“;”构成,其一般形式为:
变量=表达式; 例如:
sum=0; x=y+z; a=b=c=10; 连续赋值与赋值运算符的右结合性
大学计算机基础
网络信息中心教研室
C语言程序是一个由main()体内的若干变量的 声明、赋值等操作以及若干函数组成的,没有编 译过的程序称为源程序。
源程序的某些行称为语句,每个语句的最后有 一个半角分号“;”,用来表示语句的结束。用“;” 隔开的语句,可以写在同一行,也可以写成几行, 但这些语句必须包含在函数体中。
大学计算机基础
网络信息中心教研室
第3章
顺序结构程序设计与编译预处理
网络信息中心教研室
大学计算机基础
主要内容
3.1 C语句概述 3.2 赋值语句 3.3 输入与输出 3.4 常用函数举例 3.5 编译预处理 3.6 顺序结构程序设计举例
网络信息中心教研室
2
3.1 C语句概述
C语言的语句用来向计算机系统发出指令,单 独的一条语句或者是复合语句完成特定的操作, 这些操作的不同组合,用来实现一系列数据处理 功能。
5. 空语句 只有“;”号的语句称为空语句 .
如:
for(i=0;i<32768;i++)
;
/*空语句,注意它的意义*/
大学计算机基础
网络信息中心教研室
7
3.2 赋值语句
赋值语句的构成形式 赋值语句是由赋值表达式再加上“;”构成,其一般形式为:
变量=表达式; 例如:
sum=0; x=y+z; a=b=c=10; 连续赋值与赋值运算符的右结合性
幻灯片-C语言程序设计-第3章
结构体指针
可以定义指向结构体的指针,通过指针访问结构体的成员 。结构体指针在函数参数传递和动态内存分配等方面非常 有用。
联合体定义及使用
01
联合体定义
联合体是一种特殊的数据结构,允许在相同的内存位置存储不同的数据
类型。在C语言中,可以使用`union`关键字来定义联合体。
02
联合体变量
定义联合体后,可以创建该联合体的变量。联合体变量可以在同一内存
幻灯片-C语言程序设 计-第3章
目录
• 引言 • C语言基础 • 函数 • 数组和字符串 • 指针 • 结构体和联合体 • 文件操作 • 总结与展望
01
引言
目的和背景
掌握C语言程序设计的基本概念和原理
通过学习本章内容,读者应该能够深入理解C语言程序设计的核心思想和基本原 理,为后续的学习和实践打下坚实的基础。
关闭文件
使用fclose()函数关闭文件,释放 相关资源。
文件读写操作
读取文件
使用fscanf()、fgets()等函数从文件 中读取数据。
写入文件
使用fprintf()、fputs()等函数向文件中 写入数据。
文件定位与错误处理
文件定位
使用fseek()函数实现文件指针的定位, 可以移动到文件的任意位置。
函数参数传递
值传递
在C语言中,函数的参数传递默认采用值传递方式。这意味着在函数调用时, 实参的值将被复制到形参中,形参和实参分别占用不同的内存空间。因此,在 函数内部对形参的修改不会影响实参的值。
地址传递
除了值传递外,C语言还支持地址传递方式。通过地址传递,可以在函数内部修 改实参的值。要实现地址传递,需要在函数调用时使用指针变量作为形参,并 在函数定义中使用指针类型来接收实参的地址。
可以定义指向结构体的指针,通过指针访问结构体的成员 。结构体指针在函数参数传递和动态内存分配等方面非常 有用。
联合体定义及使用
01
联合体定义
联合体是一种特殊的数据结构,允许在相同的内存位置存储不同的数据
类型。在C语言中,可以使用`union`关键字来定义联合体。
02
联合体变量
定义联合体后,可以创建该联合体的变量。联合体变量可以在同一内存
幻灯片-C语言程序设 计-第3章
目录
• 引言 • C语言基础 • 函数 • 数组和字符串 • 指针 • 结构体和联合体 • 文件操作 • 总结与展望
01
引言
目的和背景
掌握C语言程序设计的基本概念和原理
通过学习本章内容,读者应该能够深入理解C语言程序设计的核心思想和基本原 理,为后续的学习和实践打下坚实的基础。
关闭文件
使用fclose()函数关闭文件,释放 相关资源。
文件读写操作
读取文件
使用fscanf()、fgets()等函数从文件 中读取数据。
写入文件
使用fprintf()、fputs()等函数向文件中 写入数据。
文件定位与错误处理
文件定位
使用fseek()函数实现文件指针的定位, 可以移动到文件的任意位置。
函数参数传递
值传递
在C语言中,函数的参数传递默认采用值传递方式。这意味着在函数调用时, 实参的值将被复制到形参中,形参和实参分别占用不同的内存空间。因此,在 函数内部对形参的修改不会影响实参的值。
地址传递
除了值传递外,C语言还支持地址传递方式。通过地址传递,可以在函数内部修 改实参的值。要实现地址传递,需要在函数调用时使用指针变量作为形参,并 在函数定义中使用指针类型来接收实参的地址。
《C语言程序设计》第3章简单的C程序设计-PPT课件
3.3.2 数据格式输出——printf()函数
printf()功能:按控制字符串规定的格式,向 输出设备输出各输出项 基本格式为: printf(“控制字符串”,输出项列表) printf(“s=%d\n”, s);
控制字符串由格 式说明和普通字 符两部分组成。 输出项可以是常量、变量、 表达式,其类型与个数必 须与控制字符串中格式字 符的类型、个数一致、各 项之间用逗号分隔。
• 一个大型C程序的结构
C语句分为以下五类:
1.控制语句 控制语句用于控制程序的流程,以实现程 序的各种结构方式。 分三类: ① 条件判断语句:if语句、switch语句。 ② 循环执行语句:for语句、do while语 句、while语句。 ③ 转向语句:break语句、goto语句、 continue语句、return语句。
3.3 数据格式输入/输出
3.3.1 数据输入/输出的概念
• 数据输入/输出是相对计算机内存
在C语言中所有的数据输入/输出都是由库 函数完成的。 因此都是函数语句。 使用库函数时,要使用预编译命令 : #include “stdio.h” 或 #include <stdio.h> 注:printf() 和 scanf()函数不需要头包含文 件。
说明:
1. 赋值符“=” 右边的表达式可以又是一个赋 值表达式 例如:a=b=c=5; 相当于 c=5; b=c; a=b; 2. 注意变量说明中给变量赋初值和赋值语句的 区别。 int a=3,b=4,c=5; 相当于 int a,b,c; a=3;b=4;c=5; 3. 在变量说明中,不允许连续给多个变量赋初 值。 如下述说明是错误的:in表达式;
功能:将赋值运算符右侧“表达式”的值赋给 左侧的变量。例如,以下均为赋值表达式: x=3 (x的值为3) y=z=-1(等价于y=(z=-1),y和z的值都为-1) a=(b=10)/(a=2) (b的值为10,a的值为5) y=(7+6)%5/3 (y的值为1) 若在赋值表达式后面加上“;”,则构成赋值 语句.
C语言课件第三章PPT
标准输入输出
格式输出函数 printf() 格式: 输出格式, 格式: printf(输出格式 输出表列 输出格式 输出表列) 功能: 功能 : 在屏幕上按输出格式的说明输出表列 中指定的各表达式的值。 中指定的各表达式的值。 注意:输出格式一般包括以下三部分内容: 注意:输出格式一般包括以下三部分内容: • 原样照印的字符信息。如: X=; 原样照印的字符信息。 • 格式说明符 见以下列表 一个格式说明符 格式说明符(见以下列表 见以下列表),一个格式说明符 对应输出表列中一个表达式. 对应输出表列中一个表达式 如: %f %d; • 格式控制符 如: \n 换行。 格式控制符. 换行。
标准输入输出
字符输出函数 putchar()
格式: 格式: putchar(c) 功能: 在屏幕上输出变量c的值 的值。 功能: 在屏幕上输出变量 的值。 注意: 可以是字符型或整型变量 可以是字符型或整型变量, 注意 : c可以是字符型或整型变量,也可以是控制字符或转 义字符(其后介绍 其后介绍)。 义字符 其后介绍 。 例: 运行该程序,将在屏幕上显示:good (c401.c) 运行该程序,将在屏幕上显示: # include “stdio.h” /*putchar()函数在 函数在stdio.h文件中 文件中*/ 函数在 文件中 main() { char a,b; int c,d; a='g'; b='o'; c=111; d=100; putchar(a); putchar(b); putchar(c); putchar(d); }
C语句分类
由一个表达式构成的语句。 表达式语句 由一个表达式构成的语句。 如: x=5; i=i+1; ++y; c--; x+y; 是一个语句,但无实际意义。 是一个语句,但无实际意义。 函数调用语句 由一个函数调用加一个分号构 成的语句。 成的语句。如: printf(“输入三个数 输入三个数k,j,f:”); 输入三个数 scanf(“%d,%d,%f”,&k,&j,&f); 完成一定的控制功能,有以下9种 控制语句 完成一定的控制功能,有以下 种: 1) if ( ) ~ else ~ (条件语句 条件语句) ) 条件语句 2) switch ~ (多分支选择语句 多分支选择语句) ) 多分支选择语句 3) for ( ) ~ (循环语句 循环语句) ) 循环语句 4)while ( ) ~ (循环语句 循环语句) ) 循环语句
C语言程序设计-第三章-简单程序设计PPT课件
例如: 圆周率π的近似值3.142 , 自然对数底e的近似值2.7183 等。
常量可以直接书写在程序中,称为字面常量。
程序
#include <stdio.h> void main() {
printf(“%f\n”, 2.7183); }
打印出2.7183
C程序设计 第三章 简单程序设计主讲:高利军
3
第三章 简单程序设计
本章介绍最简单的C程序,包括
• 变量 • 表达式 • 赋值 • 输入输出
第1
第一部分
整体概述
THE FIRST PART OF THE OVERALL OVERVIEW, PLEASE SUMMARIZE THE CONTENT
3.1 常量及常量定义
在程序执行期间不变的数据称为常量 。
按上述语法规则,一个变量声明的形式如下: T id , id =初值, ... , id ;
C程序设计 第三章 简单程序设计主讲:高利军
7
其中: 1. 每个 id 是一个标识符,是由该变量声明引进的变量。
也是相应变量的名字;也可以直接给变量赋初值。
2. T 是类型,可以是任何一种类型符,包括已经学过的: 各种浮点类型、 各种整数类型、 字符类型、 布尔类型、 枚举类型,
c:
PS
C程序设计 第三章 简单程序设计主讲:高利军
10
3.2.4 变量地址
在C程序中,经常使用一个变量的存储区及其地址。因此 C 给出一个运算符
& 该运算符是一个单目运算符,把它缀在一个变量前,求相应 变量的内存地址。例如对于本节开始的变量 v 而言,运算
&v 将得到 v 的地址 0F000 。
声明:
i、j、k、t 为 int 型变量; c 为 char 型变量; amount、total为float型变量; flag 为 bool 型变量; color 为一个枚举型变量。
常量可以直接书写在程序中,称为字面常量。
程序
#include <stdio.h> void main() {
printf(“%f\n”, 2.7183); }
打印出2.7183
C程序设计 第三章 简单程序设计主讲:高利军
3
第三章 简单程序设计
本章介绍最简单的C程序,包括
• 变量 • 表达式 • 赋值 • 输入输出
第1
第一部分
整体概述
THE FIRST PART OF THE OVERALL OVERVIEW, PLEASE SUMMARIZE THE CONTENT
3.1 常量及常量定义
在程序执行期间不变的数据称为常量 。
按上述语法规则,一个变量声明的形式如下: T id , id =初值, ... , id ;
C程序设计 第三章 简单程序设计主讲:高利军
7
其中: 1. 每个 id 是一个标识符,是由该变量声明引进的变量。
也是相应变量的名字;也可以直接给变量赋初值。
2. T 是类型,可以是任何一种类型符,包括已经学过的: 各种浮点类型、 各种整数类型、 字符类型、 布尔类型、 枚举类型,
c:
PS
C程序设计 第三章 简单程序设计主讲:高利军
10
3.2.4 变量地址
在C程序中,经常使用一个变量的存储区及其地址。因此 C 给出一个运算符
& 该运算符是一个单目运算符,把它缀在一个变量前,求相应 变量的内存地址。例如对于本节开始的变量 v 而言,运算
&v 将得到 v 的地址 0F000 。
声明:
i、j、k、t 为 int 型变量; c 为 char 型变量; amount、total为float型变量; flag 为 bool 型变量; color 为一个枚举型变量。
C语言程序设计第三章课件PPT课件
an integer
result
-2 5 -11
the result is the remainder of -11/5
-10
remainder
-1
an integer
第10页/共51页
求余(Modulus)
11 Example: % -5 = 1
an integer
result
-2 -5 11
10
similar to
j = i – 2; i = i + 1;
i 56 j ?3?
第30页/共51页
后缀(Postfix)增1和减1运算 符
int a=3; printf("%d", -a++);
similar to
printf("%d", -a); a = a + 1;
a 34
第31页/共51页
• 当算术表达式包含两个或两个以上的算术 运算符时 ◘ 首先要确定运算顺序 ◘ 所有的运算符都有一个优先级 ( Order of Precedence )
第13页/共51页
算术表达式 (Arithmetic Expression)
优先级(Order of Precedence)
High: Low: + -
an integer
the result is a float
第7页/共51页
求余(Modulus)
• It returns the remainder that occurs after performing the division of 2 operands
• Rule:
• Operands must be integers
C语言第3章课件.ppt
例如: “x>0” 隐含 x 的值是否大于0
P56
3.1.2 关系表达式
P56
用关系运算符将两个表达式(可以是算术表达 式或关系表达式、逻辑表达式、赋值表达 式、字符表达式)连接起来的式子,称关系 表达式。
例如,下面都是合法的关系表达式:
a>b, a+b>b+c, (a=3)>(b=5), 'a'<'b', (a>b)>(b<c)
x=5; printf("%d ",!x); 输出0 printf("%d ",3 && ‘A’); 输出1
printf("%d ",(x=2) || 0); 输出1 printf("x=%d\n",x); 输出x=2
逻辑运算的规则
&&:两个运算量都为非零,结果是真, 值为1;否则,结果是假,值为0
x=1;
printf("%d ",x>=0 && x<=2); 输出1
真
真
x=5;
真
假
printf("%d ",x>=0 && x<=2); 输出0
printf("%d ", x<-3 || x>3 ); 假真
输出1
x=0; printf("%d ",x<-3 || x>3); 输出0 printf("%d ",!x); 输出1
x2+1 (当20≤x<30时)
x+3 (当x≥30时)
scanf("%f",&x);
P56
3.1.2 关系表达式
P56
用关系运算符将两个表达式(可以是算术表达 式或关系表达式、逻辑表达式、赋值表达 式、字符表达式)连接起来的式子,称关系 表达式。
例如,下面都是合法的关系表达式:
a>b, a+b>b+c, (a=3)>(b=5), 'a'<'b', (a>b)>(b<c)
x=5; printf("%d ",!x); 输出0 printf("%d ",3 && ‘A’); 输出1
printf("%d ",(x=2) || 0); 输出1 printf("x=%d\n",x); 输出x=2
逻辑运算的规则
&&:两个运算量都为非零,结果是真, 值为1;否则,结果是假,值为0
x=1;
printf("%d ",x>=0 && x<=2); 输出1
真
真
x=5;
真
假
printf("%d ",x>=0 && x<=2); 输出0
printf("%d ", x<-3 || x>3 ); 假真
输出1
x=0; printf("%d ",x<-3 || x>3); 输出0 printf("%d ",!x); 输出1
x2+1 (当20≤x<30时)
x+3 (当x≥30时)
scanf("%f",&x);
C程序设计课件(第3章)
整理ppt
6
3.2.1 运算符重载概述
(3)不能创建新的运算符,只能重载c++中已 有的运算符。
(4)有些运算符不能进行重载。如:“.”类成 员运算符、“*”类指向运算符、“::”类 作用域运算符、“?:”条件运算符及 “sizeof”求字节数运算符。
整理ppt
7
3.2.2 运算符重载的实现
运算符重载的本质就是函数重载。在实现过程 中,首先把指定的运算表达式转化为对运算符函数 的调用,运算对象转化为运算符函数的实参,然后 根据实参的类型来确定需要调用的函数,这个过程 是在编译过程中完成的。运算符重载形式有两种: 重载为类的成员函数和重载为类的友元函数。
整理ppt
3
3.2.1 运算符重载概述
{ real = r, image = i; } void Print(); private: double real, image; }; void Complex::Print() { if(image<0) cout<<real<<image<<'i'; else cout<<real<<'+'<<image<<'i'; }
在以前的学习中,C++中预定义的运算符的操 作对象只能是基本数据类型如int或float等。实 际上,对于很多用户自定义的类型(如类),也需 要有类似的运算操作。
例如复数类Complex。
class Complex
{
public:
Complex () { real=image=0; }
Complex (double r, double i)
《C语言程序设计》课件第3章
(5) “%”后面的“*”附加说明符用来表示跳过它相应的 数据。例如:
scanf ("%3d %*3d %3d", &m, &n ); 如果输入如下的数据:
234 117 96 ↙
则系统将234赋给变量m,将96赋给变量n,中间的数据117 被跳过不赋给任何变量。在使用一批现成数据时,有时不需 要其中的某些数据,可以使用该方法将其“跳过”。
表3.4 printf函数常用格式说明符
格式说明符 d c s f
功能说明 表示输出带符号的十进制整数(正数不输出符号) 表示输出单个字符 表示输出多个字符,即一个字符串 表示以小数形式输出实数,默认输出 6 位小数
表3.5 printf函数常用修饰符
修饰符 字母 l
m m.n -
功能说明 表示输出长整型整数,可加在格式说明符 d、o、x 前面 表示输出数据的最小宽度 表示输出总宽度占 m 列,其中小数位占 n 位 表示输出的数字或字符在输出区域内向左靠
scanf("%d%d", m, n ); 是错误的,应将“m, n”改为“&m, &n”。
(2) 如果在“格式控制串”中除了格式标识符、修饰符 和格式说明符以外还有其他字符,则应在输入数据时输入与 这些字符相同的字符。例如:
scanf("%d, %d", &m, &n ); 输入时两个整数之间应加入“,”:
(2) 格式控制串由下列形式组成: % <修饰符><格式说明符>
其中,“%”是格式标识符;格式说明符用来表示输入的格 式,scanf函数常用的格式说明符如表3.1所示;修饰符作为 附加格式说明符,常用的修饰符如表3.2所示。
scanf ("%3d %*3d %3d", &m, &n ); 如果输入如下的数据:
234 117 96 ↙
则系统将234赋给变量m,将96赋给变量n,中间的数据117 被跳过不赋给任何变量。在使用一批现成数据时,有时不需 要其中的某些数据,可以使用该方法将其“跳过”。
表3.4 printf函数常用格式说明符
格式说明符 d c s f
功能说明 表示输出带符号的十进制整数(正数不输出符号) 表示输出单个字符 表示输出多个字符,即一个字符串 表示以小数形式输出实数,默认输出 6 位小数
表3.5 printf函数常用修饰符
修饰符 字母 l
m m.n -
功能说明 表示输出长整型整数,可加在格式说明符 d、o、x 前面 表示输出数据的最小宽度 表示输出总宽度占 m 列,其中小数位占 n 位 表示输出的数字或字符在输出区域内向左靠
scanf("%d%d", m, n ); 是错误的,应将“m, n”改为“&m, &n”。
(2) 如果在“格式控制串”中除了格式标识符、修饰符 和格式说明符以外还有其他字符,则应在输入数据时输入与 这些字符相同的字符。例如:
scanf("%d, %d", &m, &n ); 输入时两个整数之间应加入“,”:
(2) 格式控制串由下列形式组成: % <修饰符><格式说明符>
其中,“%”是格式标识符;格式说明符用来表示输入的格 式,scanf函数常用的格式说明符如表3.1所示;修饰符作为 附加格式说明符,常用的修饰符如表3.2所示。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
21
第三章 数据类型、 运算符和表达式
第四节 算术运算符和算术表达式 Arithmetic Operations and Expressions
4.1 基本算术运算符 4.2 运算符的优先级和结合性 4.3 自增、自减运算符
22
4.1 基本算术运算符
第三章 数据类型、 运算符和表达式
+(加法运算或正号运算符) -(减法运算或负号运算符) * (乘法运算符) /(除法运算符) % (求余运算符,或称模运算符)
int a=0,b=0,c=0; /*指定a,b,c为整型变量,a、b、c的 初值为0*/
19
3.4 实型变量
第三章 数据类型、 运算符和表达式
1、分类
所占位数 取值范围
float
单精度
32
-3.4*10-38 ~3.4*1038
double 双精度
64
-1.7*10-308 ~1.7*10308
基本类型
– 整型 – 字符型 – 实型(浮点型)
• 单精度、双精度
构造类型
– 数组类型 – 结构体类型 – 共用体类型
指针类型
空类型
第三章 数据类型、 运算符和表达式
3
第三章 数ቤተ መጻሕፍቲ ባይዱ类型、 运算符和表达式
第三章 数据类型、 运算符和表达式
第三章 数据类型、 运算符和表达式
第三章 数据类型、 运算符和表达式
long double长双精度
128 -1.2*10-4932 ~1.2*104932
2、变量的定义
float x,y; double z;
/*指定x,y为单精度实型变量*/ /*指定z为双精度实型变量*/
20
3.5 字符变量
第三章 数据类型、 运算符和表达式
1、变量的定义
char c1,c2;
/*指定c1,c2为字符型变量*/
下列字符串中可以做C语言程序中的标识符的 有哪些?
print _3id oodb I\am 3pi Line# str_1 His.age while aBc
16
3.3 整型变量
第三章 数据类型、 运算符和表达式
1、分类 int short int(或short) long int(或long) unsigned int unsigned short unsigned long
《C语言程序设计》课件——第 三章
第三章 数据类型、 运算符和表达式
第三章 数据类型、运算符和表达式
第一节 C的数据类型 第二节 常量 第三节 变量 第四节 算术运算符和算术表达式 第五节 赋值运算符和赋值表达式 第六节 逗号运算符和逗号表达式 第七节 各类数据间的混合运算
2
第一节 C的数据类型
整型 短整型 长整型 无符号整型 无符号短整型 无符号长整型
17
第三章 数据类型、 运算符和表达式
2、各类型数据长度、取值范围
所占位数 取值范围
int
16 -32768~32767
short
16 -32768~32767
long
32 -21亿~21亿
unsigned int
16 0~65535
unsigned short 16 0~65535
量' 0 ' ,其ASCII为48,所以存储的实际 值为48。 • 字符常量可以象整数一样参与运算。
8
字符常量还有另外一种形式 ——转义字符形式。
第三章 数据类型、 运算符和表达式
转义字符 功能
\a
响铃
\b
退一格
\f
走纸换页
\n 换行
\r
回车
\t
横向跳格
转义字符 功 能 \\ 反斜杠字符 \' 单引号字符 \" 双引号字符
\?
问号
\ooo 1~3位8进制数代表的字符
\xhh 1~2位16进制数代表的字符
9
第三章 数据类型、 运算符和表达式
main() { char c1='\101',c2= '\x42'; printf("a\tbc\t\bABC\n"); printf("xyz\t%c %c",c1,c2); }
程序运行结果?
14
3.2 变量名
第三章 数据类型、 运算符和表达式
• 标识符:用来标识变量名、符号常量名、 数组名、函数名、文件名的有效字符序列。 – 关键字 – 预定义标识符 – 用户定义标识符
• 字母或下划线开头,后跟字母、数字和下 划线组成。
• 变量要先定义后使用
15
第三章 数据类型、 运算符和表达式
unsigned long
32 0~42亿
18
第三章 数据类型、 运算符和表达式
3、整型变量的定义 所有的变量需先定义类型
int a,b,c;
/*指定a,b,c为整型变量*/
unsigned lower; /*指定lower为无符号整型变量*/ long s;
有些变量可以预先设置初值:
int a=0,b,c; /*指定a,b,c为整型变量,a的初值为0*/
2.3 实型常量 Floating-point constants
小数形式:如 123.0 .123 0.0 12.5 指数形式:如123e2 123E2
7
第三章 数据类型、 运算符和表达式
2.4 字符型常量 Character constant
• 单引号括起来的一个字符。如: ' a ' • 字符常量的值是一个数字值。如字符常
2、字符型数据的存储
以ASCII码存储,存储形式与整型一样,可以和整数 进行运算
main() {char c1,c2; c1=‘a’;c2=‘b’; c1=c1-32;c2=c2-32; printf(“%c,%c\n”,c1,c2); printf(“%d,%d\n”,c1,c2); }
结果:A,B 65,66
结果? a bc ABC
xyz A B 10
2.5 字符串常量
第三章 数据类型、 运算符和表达式
• 双引号括起来的字符序列。 如"How are you","0"等
• 字符串在存储时末尾被自动加上字符'\0' • 字符常量与只包含一个字符的字符串常量的
区别
12
第三节 变量 Variable
3.1 变量的概念 3.2 变量名 3.3 整型变量 3.4 实型变量 3.5 字符型变量
第三章 数据类型、 运算符和表达式
13
3.1 变量的概念
第三章 数据类型、 运算符和表达式
程序运行过程中其值可以改变的量,系统为程序中 的每一个变量开辟一个存储单元,如:
main( )
{ int a;
a=2; printf("a=%d\n",a);
a=4; printf("a=%d\n",a);
}