C语言 第三讲

合集下载

第三讲 选择结构程序设计

第三讲 选择结构程序设计

5.3.2 switch语句的一般形式 语句的一般形式 switch(整数表达式) (整数表达式) { case 常数表达式 :<语句 ;> 常数表达式1: 语句 语句1; case 常数表达式 :<语句 ;> 常数表达式2: 语句 语句2; …… case 常数表达式 :<语句 ;> 常数表达式n: 语句 语句n; default: 语句序列 : 语句序列n+1; ; }
5.3 switch语句 语句 5.3.1 问题引入 switch 语句和 语句和if-else语句(if…else if…else)是C语 语句( 语句 ) 语 言的两种多分支选择形式。 言的两种多分支选择形式。 if…else if…else结构用于对多条件并列测试,从中 结构用于对多条件并列测试 结构用于对多条件并列测试, 取一的情形; 取一的情形; switch结构用于 单条件 测试 , 从其多种结果中取一 结构用于单条件测试, 结构用于 单条件测试 种的情形。 种的情形。 一 般 情 况 下 用 switch 能 解 决 的 问 题 , 用 if…else if…else也一样能解决,反之用 也一样能解决, 也一样能解决 反之用if…else if…else能解决的 能解决的 问题用switch也能解决。 也能解决。 问题用 也能解决
5.2.1 if 语句
(4)if-else-if结构: ) 结构: 结构 if ( 条件 ) 语句 ; 条件1 语句1; else if ( 条件 ) 语句 ; 条件2 语句2; else if ( 条件 ) 语句 ; 条件3 语句3; ┇ else 语句 ; 语句n;
F 表达式1 表达式 T 表达式2 表达式 T F 表达式3 表达式 T 语句1 语句 语句2 语句 语句3 语句 F 表达式 T 4 语句4 语句 F 语句5 语句

C语言程序设计教案第3讲 数据类型、运算符与表达式

C语言程序设计教案第3讲 数据类型、运算符与表达式
12
<
>
2,实型变量的分类
说明: C并没有具体规定每种类型的长度 并没有具体规定每种类型的长度, 说明:ANSI C并没有具体规定每种类型的长度,精度和数值 范围.下面是常用的C 范围.下面是常用的C编译系统的情况 类 型 字节数 有效数字 最小取值范围 float 4 6~7 -3.4*10-38~ 3.4*1038 double 8 15~16 -1.7*10-308~ 1.7*10308 long double 16 18~19 -1.2*10-4932~1.2*104932
8
取反
<
>
2.
整型变量分类
基本类型: 基本类型:int 根据数值的范围分为: , 根据数值的范围分为:int,short,long , 根据有无符号(singed/unsigned)及范围可分: 及范围可分: 根据有无符号 及范围可分
类 型 举例: 举例: [signed] int unsigned [int] [signed] short [int] unsigned short [int] [signed] long [int] unsinged long [int]
C 数 据 类 型
构造类型 指针类型 空类型 void
定义类型 typedef
<
>
2
2.2 常量与变量
一,标识符
定义:用来标识变量名,符号常量名, 定义:用来标识变量名,符号常量名,函数 数组名,类型名, 名,数组名,类型名,文件名的有效字符序 列称为标识符.(即一个名字) .(即一个名字 列称为标识符.(即一个名字) 使用规则
32767,32767,-32768,8
<

c语言程序设计第三章运算符与表达式

c语言程序设计第三章运算符与表达式

第三章运算符和表达式3.1 运算符和表达式概述使用运算符可以对运算对象(包括常量和变量)进行计算以得到计算结果。

用运算符将运算对象连接成一个符合C语言语法规则的式称为表达式。

另外,C语言中的表达式是可以嵌套的,即简单表达式经过运算符连接后还可以形成更为复杂的表达式。

根据运算符所连接的运算对象(操作数)的个数,可以将C语言中的运算符分为三类:(1) 单目(一元)运算符:只连接一个操作数的运算符。

(2) 双目(二元)运算符:带有两个操作数的运算符。

(3) 三目(三元)运算符:同时对三个操作数进行计算的运算符。

C语言中的表达式可以分为三类:(1) 单个常量或者单个变量是最简单的表达式。

(2) 带有运算符的表达式。

(3) 函数调用。

任何一种运算都是将一定的运算符作用于一定的运算对象上,得到预期的运算结果。

所以运算对象、运算符和运算结果是运算的三大要素。

3.2 算术运算符和算术表达式一、基本算术运算符和简单算术表达式1. 基本算术运算符C语言为用户提供的基本算术运算符包括:+(加)、-(减)、*(乘),/(除)、%(求余),这些运算符都是双目运算符,也即在生成算术表达式的时,基本算术运算符左右两侧都必须出现运算对象。

2. 简单算术表达式当用基本算术运算符去连接常量或者变量时,就形成简单算术表达式。

简单算术表达式的基本形式:data1 op data2。

data1和data2表示某个常量或者变量,op代表上述5个基本算术运算符之一。

假设有变量定义:int a=20,b=-5;则a+b、a-b、a*-2、20/-b、20%6、a%b等都是简单算术表达式。

3. 基本算术运算符使用说明(1) +、-、*,/既可以连接整型数据,也可以连接实型数据。

当参与这4个运算符的运算对象都是整型数据时,得到整型数据运算结果;否则表示浮点运算。

例如,int a=15,b=2;则a*b等于30,而a/b等于7;a*2.0等于30.0,而a/2.0等于7.5。

c语言教学教案

c语言教学教案

第一讲C语言概述1.1 C语言发展概述C语言是在1972年至1973年间由美国的贝尔实验室的M.D.Ritchie 和K.Thompson以及英国剑桥大学的M.Richards等为描述和实现UNIX操作系统而设计的。

最初的C语言是附属于UNIX的操作系统环境,而它的产生却可以更好地描述UNIX操作系统。

时至今日,C语言已独立于UNIX操作系统。

它已成为微型、小型、中型、大型和超大型(巨型)计算机通用的一种程序设计语言。

随着C语言的不断发展、应用和普及,目前,C语言已经能够在多种操作系统下运行,实用的C语言编译系统种类繁多,如MicrosoftC、Turbo C等。

1.2 C语言的特点C语言能够成为目前广泛的高级设计语言之一,完全是由其语言特点决定的。

(1)语言基本组成部分紧凑简洁。

(2)C语言运算符丰富,表达能力强。

(3)C语言数据结构丰富,结构化好。

(4)具有结构化的控制语句。

(5)C语言提供了某些接近汇编语言的功能。

(6)C语言程序所生成的目标代码质量高。

(7)C语言程序可移植性好。

C语言的弱点:(1)运算符的优先级较复杂,不容易记忆(2)C语言的语法限制不太严格,一定程度上降低了某些安全性。

1.3 简单的C语言程序。

1.3.1 C语言程序的构成1.3.2 C语言程序的特点(1)C程序是由函数构成的,其中至少包括一个函数main( )。

(2)函数体是由左右花括号{ }括起来的部分。

(3)C语言中的每个基本语句都以“;”结束。

(4)C语言书写格式自由,一行内可以写一个语句,也可以写多个语句。

(5)#include语句是编译预处理语句,其作用是将由双引号或尖括号括起来的文件内容读入该语句位置处。

对程序说明:(1)可用/*…*/对C程序中的任何部分作注释。

(2)C语言中所有变量都必须先定义类型,然后再使用。

(3)一个C语言程序通过函数之间的相互调用来实现相应的功能。

即可以是系统提供的库函数,也可以是根据需要自己定义的函数。

c语言第03章

c语言第03章

活期存款一年后本息和为: p1=p0(1+r1) 一年期定期存款,一年后本息和为: p2=p0(1+r2) 两次半年定期存款,一年后本息和为:
r3 r3 p3 = p0(1 + )(1 + ) 2 2
6
3.1顺序程序设计举例

算法:
输入p0,r1,r2,r3的值 计算p1=p0(1+r1) 计算p2=p43; r 3 )
2 2
输出p1,p2,p3
7
3.1 顺序程序设计举例
#include <stdio.h> 定义变量同时赋予初值 int main ( ) {float p0=1000, r1=0.0036,r2=0.0225, r3=0.0198, p1, p2, p3; p1 = p0 * (1 + r1); p2 = p0 * (1 + r2); p3 = p0 * (1 + r3/2) * (1 + r3/2); printf(”%f\n%f\n%f\n”,p1, p2, p3); return 0; }
\„ \ddd \“ 单引号 例 void main() { printf(“Y\b=\n”);\xhh 3位8进制数代表的字符 aaa }
转义字符:反斜线后面跟一个字符或一个代码值表示
<
双引号 运行结果: 2位16进制数代表的字符 屏幕显示:= 15 打印机输出:¥
C语言程序设计
第3章 最简单的C程序设计
19
C语言程序设计
第3章 最简单的C程序设计

3.2.3不同类型数据间的转换
1.隐式转换
什么情况下发生
运算转换------不同类型数据混合运算时 赋值转换------把一个值赋给与其类型不同的变量时 输出转换------输出时转换成指定的输出格式

程序员面试宝典-第三讲 C语言

程序员面试宝典-第三讲 C语言

2、类型转换
#include <stdio.h> int main() { unsigned int a=0xFFFFFFF7; unsigned char i=(unsigned char)a; char *b=(char *)&a; printf("%08x,%08x",i,*b); }
3、运算符问题
第三讲 C/C++
1、编译器规则
#include <iostream> using namespace std; int main() { int a,x; for(a=0,x=0;a<=1 && !x++;a++) { a++; } cout<<a<<x<<endl; return 0; } #include <iostream> using namespace std; int main() { int a,x; for (a=0,x=0;a<=1 && !x++;) { a++; } cout<<a<<x<<endl; return 0; }
用预处理指令#define声明一个常数,用以 表明1年中有多少秒(忽略闰年问题)。 #define SECONDS_PER_YEAR (60*60*24*365)
写一个“标准”宏MIN,这个宏输入两个 参数并返回较小的一个。 #define MIN(A,B) ((A)<=(B)?(A):(B))
int f(int x,int y) { return(x&y)+((x^y)>>1); } f(729,271)=?

北京航空航天大学C语言c第三讲(第五章) 选择结构程序设计

北京航空航天大学C语言c第三讲(第五章) 选择结构程序设计

if (money>=500) cost=0.8; else if (money>=300) cost=0.85; else if (money>=100) cost=0.9 else if (money>=50) cost=0.95; else cost=1.0; price=money*cost;
高 低
3,优先级 <,<=,>,>= 为同一级别,== 和!= 为同一级别. 在同一级别中,采取由左至右的结合方向.
算术运算符 -> 关系运算符 -> 赋值运算符
4,关系表达式
用关系运算符将两个表达式连接起来叫关 系表达式。 例:关系运算的优先级举例
c>a+b a>b!=c a==b<c a=b>c
if (表达式) 语句1 else 语句2
说明: (1)表达式是指关系表达式或逻辑表达式,条
件满足指的是表达式的值为真,即表达式的 值是一个非0值。 例如: if (3) printf(“O.K”); 输出O.K(永真) if („a‟) printf(“%d”,„a‟); 输出97 (永真) if (0) printf(“false”); 不执行printf语句(永假)
能被4整除,但不能被100整除; 能被400整除。
用year表示年份,判断闰年的逻辑表达式为: (year%4==0 && year%100 != 0)||(year % 400 ==0)
如果给year输入一个的值,使上面的表达式的值为1
时,则year所代表的年份就是闰年。
• 课堂练习: 写出逻辑表达式。 10 1. 判断一个点是否 10 -10 落入圆形中 2. 求落入阴影部 -10 分的任意一点 x*x+y*y<=100 (小园的半径为1.)

C语言程序设计第三章 (2)

C语言程序设计第三章 (2)
① 只有整型和字符型变量有“无符号”类型。 ② 注意以下的结果: unsigned short price =-1; printf(“%d \n”,price); 输出的结果为65535,为什么?
举例 int a=10; short b=100 int short b=100; unsigned int short b=100; long d=212365; int long d=212365; unsigned int long d=212365;
练习题
练习
• char c; 等价 • c=65; 是否等价于c= 'A' • printf(“%d %c”,c,c);输入的结果是多少呢?
65 A
注意:
• • • • • int a; char b; a=65; b=‘A’; 不等价,所占内存空间不同。 问变量a 的值和变量b的值是否等价。
练习题
price ?abc int name float name age 8ab year a%d 以上哪些是正确的标识符,哪些不是?
price name age year a b 都是 正确的标识符 ?abc int float 8ab a%d 不能是 标识符
练习题
下列选项中,不能用作标识符的是( )
设有定义:float a=2,b=4,h=3;,以下C语言表达式与代数
A)(a+b)*h/2
ab 式_______________ h 2
计算结果不相符的是( ) B)(1/2)*(a+b)*h
B
C)(a+b)*h*1/2 D)h/2*(a+b)
2014-3-16
自加、自减运算符P53 自加运算(i++, ++i) 相同点:++i 和 i++的作用都等同于i=i+1 不同点:++i是先给i=i+1,然后再引用i的值。 i++是先引用i的值,然后i=i+1 自减运算(i- -, - -i) 相同点:- -i 和 i- -的作用都等同于i=i-1 不同点:- -i是先给i=i-1,然后再引用i的值。 i--是先引用i的值,然后i=i-1

C语言第3章数据类型、运算符、表达式

C语言第3章数据类型、运算符、表达式

例如
➢字符常量‘a’占一个字节 ➢字符串常量"a" 占2个字节
‘a’ → “a” →
0110 0001 ……
0110 0001 0000 0000
(97)10
(97)10 (0)10
7.变量赋初值
变量赋初值
C语言允许定义变量时赋予初值。
➢int i = 6;
也可对某个变量赋初值:
➢int a, b, c = 6;
如: 0x16, 0x28
4.整型数据
整型变量
分类:
➢基本型 用“ int ”定义; ➢短整型 用“ short int ”或 “ short ”定义; ➢长整型 用“ long ”或 “ long int ”定义; ➢无符号型 用“ unsigned ”定义,不存放符号;
整型变量定义方式
➢基本整型:int a, b, c; ➢短整型 : short int 或 short a, b, c; ➢长整型: long int 或 long a, b, c; ➢无符号型:unsigned a, b; unsigned short a, b
10+‘a’+1.5–8765.1234 ‘b’
8.各种数值型数据间的混合运算
转换方法(自动转换)
double float

long
unsigned
低 int char, short
图中“ ” 表示必定转换。如'a' +' b',先转换为int,结果为 int。
既使是同一种类型也按" "转换。
对于“++”和“--”的使用要避免二义性
10.赋值运算符和赋值表达式

第三讲-数据类型课程教案

第三讲-数据类型课程教案
第3章 数据类型、运算符 与表达式
C语言程序设计
第3
C语言程序设计
教学要求:
1. 掌握C语言数据类型分类。 2. 掌握整型数据、实型数据、字符数据使用规则。 3.掌握C语言常量、变量的使用。 4.掌握各种运算符的优先级、结合方向。 5.掌握各种数据运算的运算符的运算。 6.掌握混合运算时的类型转换规则。
变量具有保持值的性质。给一变量赋值后,每次使用该变 量时总得到这个值。这种情况一直延续到下次给该变量赋 值为止。
由于有赋值,在程序执行中,一个变量在各时刻所存的值 可能不同(与数学的变量不同)。
C 语言基本类型与数据的表示
C语言程序设计
“类型名”:类型的称呼。 一个基本类型的名字由一个或几个标识符表示。 类型名也是一种标识符,属于 C 语言的关键字。
C语言程序设计
程序中处理到的每个基本数据都属于一个确定的基本数 据类型;所有数据必须指定其数据类型;
类型确定了有关数据的表示范围。 在一个具体的 C 语言系统里,每个基本类型都有固定的 表示方式,这个编码方式实际上也确定了可能表示的数据 的范围。
例如:一个整数类型(能表示的所有整数)只能是数学的 整数的一个子集合,其中只能包含有限个整数值;
标识符例子
C语言程序设计
正确的标识符例子:
Abcd Beijing a3b06 xt386ex Small_talk_80
C_Programming _xy sin A_great_machine FORTRAN_90
错误的标识符例子:
x3+5 8x 郑大 M.D.John $123 #33
C语言程序设计
3.2.2 变量
C语言程序设计
定义:在程序运行过程中其值可以改变的量称为变量。

第三讲AVRC语言的常用语法和数据类型介绍

第三讲AVRC语言的常用语法和数据类型介绍

天津锐志电子RZ-51V2.0开发板配套AVR视频教程
逻辑与,格式: 条件式1 && 条件式2 当条件式1与条件式2都为真时结果 为真(非0值),否则为假(0值)。 逻辑或,格式: 条件式1 || 条件式2 当条件式1与条件式2都为假时结果 为假(0值),否则为真(非0值)。 逻辑非,格式: !条件式 当条件式原来为真(非0值),逻辑 非后结果为假(0值)。当条件式原来为 假(0值),逻辑非后结果为真(非0 值)。 例如:若a=8,b=3,c=0,则!a为假, a && b为真,b && c为假。
天津锐志电子RZ-51V2.0开发板配套AVR视频教程
算术运算符
AVR C中支持的算术运算符有: + 加或取正值运算符 - 减或取负值运算符 * 乘运算符 / 除运算符 % 取余运算符 加、减、乘运算相对比较简单,而对于除运算,如 相除的两个数为浮点数,则运算的结果也为浮点数,如 相除的两个数为整数,则运算的结果也为整数,即为整 除。如25.0/20.0结果为1.25,而25/20结果为1。 对于取余运算,则要求参加运算的两个数必须为整 数,运算结果为它们的余数。例如:x=5%3,结果x的 值为2。
天津锐志电子RZ-51V2.0开发板配套AVR视频教程
4.1、Main 函数
格式:void main() 特点:无返回值,无参。
任何一个C程序有且仅有一个main函数, 它是整个程序开始执行的入口。 例:void main() { 总程序从这里开始执行; 其他语句; }
天津锐志电子RZ-51V2.0开发板配套AVR视频教程
天津锐志电子RZ-51V2.0开发板配套AVR视频教程
AVR C中 常用语句

c语言计算机编程第3章

c语言计算机编程第3章


输入指定宽度的数据 输入:123456 结果:123 =>a 456 =>b scanf(“%3d%3d”,&a,&b); %后的“*”附加说明符,用来表示跳过它相应的数据。 输入:12□345□67 scanf(“%2d %*3d %2d”,&a,&b);
结果:12=>a 67=>b
3.2 数据输入
3.2 数据输出
⒌c格式符 用来输出一个字符。 说明: 一个整数(0~255)可以用%c的形式按字符输出。 一个字符数据也可以用整数形式输出。 可以指定输出字符的宽度。%mc 6.f格式符 用来输出实数,以小数形式输出。有以下几种用法∶ ①%f,不指定字段宽度,由系统自动指定,使整数部分全部 输出,并输出6位小数。注意:并非全部数据都是有效数字,单 精度实数的有效位数一般为7位,双 精度有效位数为15位。
3.2 数据输出
⒋u格式符 用来输出unsigned型数据,即无符号数,以十进制形式输出。 一个有符号整数也可以用%u格式输出; 反之,一个unsigned也可以用%d、%o、%x格式输出。按相 互赋值的规则处理。 main() { unsigned int a=65535; int b=-2; printf(“a=%d,%o,%x,%u\n”,a,a,a,a); printf(“a=%d,%o,%x,%u\n”,b,b,b,b); } 运行结果:-1,177777,ffff,65535 -2,177776,fffe,65534
3.2 数据输出
8.g格式符 用来输出实数,它根据数值的大小自动选择f格式或e格式, 且不输出无意义的0。 若f=123.4 则 printf(“%f□□%e□□%g”,f,f,f); 输出:123.400002□□1.23400e+02□□123.4

21天学会c语言第3章

21天学会c语言第3章
第三章 存储信息:变量和常量

本章要点

声明和初始化变量 C语言中的两种数值常量
1

主要内容
3.0 引言 3.1 计算机内存 3.2 使用变量存储信息 3.3 数值变量的类型 3.4 常量 3.5 总结

2
3.0 引言
计算机程序通常使用不同类型的数据,如数字、字 符 数据类型不同,存储方式不同 存储数值的方式:变量和常量 变量:代表数据存储位置,其值在程序执行期间可 能发生变化 常量:其值固定,不能修改
26
3.4.2 符号常量
例:计算圆周长和圆面积时,需要用到圆周率π 的值, 例如当半径已知时,可以用下面的代码计算: 代码1:circumference = 3.14*(2*radius); area = 3.14 * (radius)* (radius); 如果定义了一个名为PI,值为3.14的符号常量,那么 代码改为: 代码2:circumference = PI*(2*radius); area = PI * (radius)* (radius); PI 比数字3.14的含义更加清楚。 如果将3.14改为3.1415926,那么代码2只需在定义该 27 常量的地方修改一次,能够做到一改全改
变量名最多有31个字符在选择变量名和其它标识符时应注意做到见名知意即选有含意的英文单词或其缩写作标识符例如interestrateinterestrate321应该不应该使用描述性的变量名尽量不使用下划线做首字符坚持使用一种命名变量的规则变量尽量不全部用大写字母1133数据类型数据类型指针类型指针类型空类型空类型无值类型无值类型voidvoid基本类型基本类型整型整型intint字符型字符型charchar实型浮点型实型浮点型单精度实型单精度实型floatfloat双精度实型双精度实型doubledouble构造类型构造类型数组类型数组类型枚举类型枚举类型enumenum结构类型结构类型structstruct共用体类型共用体类型unionunionc语言变量的类型

C语言-3-简单选择结构

C语言-3-简单选择结构
第三讲 简 单 选 择 结 构
3.2.1 关系运算
1、逻辑值与整数的关系
逻辑值: “真”、“假”,或 T 、F 表示方式: 0 为“假”,非0为“真” 系统真值: 1
2. 整数对应的逻辑值 在C语言中,整数也可以直 接作为逻辑值使用,非零整 100<200<10 数相当于逻辑值“真”,0相 分析:100<200<10相当于 当于逻辑值“假”。如下面 (100<200)<10,100<200的结果 是真,即1,因此上式成为1<10。 直接将整数10作为条件,相 结果整个表达式的值为“真”。 当于“真”,因此执行后x的 值为5。 if(10)x=5;
10 x 30 50
x 90
(2) x<60 || x>180 (或 !(x>=60 && x<=80)) (3) (x>=10 && x<=30) || (x>=50 && x<=90)
4、逻辑表达式示例
1)闰年表示:一个年份如能够被400整除则是闰年;或者 该年份能被4整除但不能被100整除,则该年份也是闰年。
(year%400==0)||((year%4==0)
&&(year%100!=0))
2)输入的字符不为‘Q’
(c=getchar( ))!=‘Q’
5、举例
例3.2 判断下列逻辑表达式是否成立: 1<3 && 5<8 (成立) 3<2 && 4>3 (不成立) 3<2 || 4>3 (成立) 6>5 || 1<2 (成立) !(4<=6) (不成立) 例3.3 写出下列判断的逻辑表达式 (1)m被3整除 (2)成绩grade在70到80之间(包含70,不包含80) (3)x 和 y 不同时为0 (4)a是奇数或者b是偶数

2023年计算机等级考试二级C语言讲义第三讲输入输出函数

2023年计算机等级考试二级C语言讲义第三讲输入输出函数

第三讲输入输出函数Printf()函数Scanf()函数Getchar()函数Putchar()函数一.格式输出函数printf()前面旳任务中我们已多次使用过这个函数。

printf函数也称为格式输出函数,其关键字最终一种字母f即为“格式”(format)旳意思。

1.printf函数一般形式格式: printf(“格式控制字符串”,输出项1,输出项2,……输出项n);功能:按指定旳格式把输出列表中旳数据显示到显示屏屏幕上。

其中,格式控制字符串用于指定输出格式。

格式控制字符串可由格式字符串和一般字符串两种构成。

格式字符串是以%号开头旳字符串,在%号背面跟有多种格式字符,用来阐明输出数据旳类型、形式、长度、小数位数等。

例如:“%d”表达按十进制整型输出;“%ld”表达按十进制长整型输出;“%c”表达按字符型输出等。

一般字符串在输出时按原样输出,在显示中起提醒作用。

输出列表中给出了各个输出项,规定格式字符串和各输出项在个数和类型上应一一对应。

例2.3有一矩形,长度为a,宽度为b,求矩形旳面积s。

#include<stdio.h>main(){float a,b,s;a=3.26;b=5.68;s=a*b;printf(“a=%4.2f,b=%4.2f,s=%7.2f\n”,a,b,s); }则程序旳运行成果是:a=3.26,b=5.68,s= 18.522.格式字符串表2-3 printf函数格式字符串完整格式及含义阐明:(1)两头旳项为必选项,中间为可选项,m,n为正整数。

(2)格式字符和含义阐明如表所示:表2-4 格式字符意义(3)输出域宽m:用十进制整数来表达输出旳至少位数。

若实际位数多于定义旳宽度,则按实际位数输出,若实际位数少于定义旳宽度则补以空格或0。

(4)精度n:精度格式符以“.”开头,后跟十进制整数。

本项旳意义是:假如输出数字,则表达小数旳位数;假如输出旳是字符,则表达输出字符旳个数;若实际位数不小于所定义旳精度数,则截去超过旳部分。

C语言教材 C语言教材 第3章

C语言教材  C语言教材  第3章

第3章运算符与表达式本章要点了解运算符及其表达式的概念,熟练掌握各种运算符的运算规则。

重点掌握各种运算符的优先级和结合性。

本章的难点在于自增自减运算符的正确运用。

第一节算术运算符与算术表达式C语言中基本的算术运算符有:(1)+:加法运算符,用于计算任意两个数的和。

如:3+2,结果为5;(2)-:减法运算符,用于计算任意两个数的差。

如:3.5-2,结果为1.500000;(3)*:乘法运算符,用于计算任意两个数的乘积。

如:4*3,结果为12;(4)/:除法运算符,用于计算任意两个数的商。

如:3.6/3,结果为1.200000;(5)%:模运算符(求余运算符),用于求余数。

如:13%4,结果为1。

这几个运算符要求运算符两边都有数据,即运算对象为两个,所以称为双目算术运算符。

关于算术运算符的几点说明:(1)用算术运算符和括号将运算对象连接起来的、符合C语言语法规则的式子称为算术表达式。

运算对象可以是变量、常量、函数等。

算术表达式中运算符的结合方向为“从左至右”;*,/,%运算的优先级高于+,-运算,可以使用圆括号改变优先级别。

如:表达式3+4*3/2-1,按照从左至右的顺序,先计算优先级别较高的*、/运算,4*3,结果为12,12/2,结果为6,6和左边的3进行加法运算,得到结果9,最后计算9-1,结果为8。

(2)对于除法运算“/”,如果运算符两边的运算对象都是整数,则运算结果也是整数。

如:5/2的结果为2,而不是2.5,小数部分被舍去了。

(3)对于模运算符“%”,要求其左右两边的运算对象都为整数,结果也为整数,即只有整数才能进行求余运算;(4)“+,-”运算符有时作为正值运算符(+)和负值运算符(-),此时“+、-”变为单目运算符。

如:+3,-6。

例3.1 算术运算符和算术表达式#include<stdio.h>void main(){int a=3,b=4;printf("a+b/4%2-2.5=%f\n",a+b/4%2-2.5); /* 从左至右,按照优先级别运算*/printf("4*a/b=%d,a/b*4=%d\n",4*a/b,a/b*4); /* 两个表达式结果不同,不满足数学中的交换律*/printf("9/4=%d,-9/4=%d",9/4,-9/4); /* 两个整数做除法运算,所得结果也是整数*/ }程序运行结果:a+b/4%2-2.5=1.5000004*a/b=3,a/b*4=09/4=2,-9/4=--2第二节关系运算符与关系表达式关系运算符相当于数学中的比较运算符,用于将两个值进行比较,判断比较的结果是否符合给定的条件。

C语言大纲

C语言大纲

第一讲 C语言基本程序设计(一)一、学习目标1、让学生理解C语言的基本特点和运行环境;2、掌握C语言编程的基本语法规则;3、学会C语言的基本输入输出函数和基本运算符;4、使学员能够编写简单的应用程序。

二、课程内容引言:C语言是当今世界上最为流行的高级语言之一,它设计精巧,功能齐全,适合编写应用软件和系统软件,C语言是1972——1973年之间由贝尔实验室生产的。

1、C语言的特点:1)C语言短小精悍,基本组成部分紧凑、简洁。

有32个标准关键字,45个标准的运算符以及9种控制语句。

2)C语言运算符能力丰富,表达能力强。

3)C语言结构丰富、结构化好。

4)是一种介于低级语言和高级语言之间的语言。

5)运算符的优先级转移,不容易记忆。

6)语法限制不太严格,这增强了程序设计的灵活性,但也在一定程度上降低了程序的安全性,这对程序人员提出了更高的要求。

2、C语言的基本书写规则:#include”stdio.h”main(){ int a;int b;int c;scanf(“%d%d”,&a,&b);c=a+b;printf(“%d”,c);}1)一个C语言程序中可以有多个函数,但有且只有一个main函数;2){,}括起来的部分叫函数体;3)每一条基本语句都是以“;”结束的;4)书写规则自由:一条语句可以写在多行上,多条语句也可以写在一行上;5)#include可用<>和“”括起头文件;6)/* ,*/括起来的是注释部分,起标注的作用,提高程序的可读性。

7)变量必须先定认后使用;8)同一语句定义多个变量时,可用不逗号(,)隔开。

3、常量和变最:1)常量:指在程序运行中其值不变的量。

2)变量:程序运行过程中其值可以改变的量。

标识符:用来标识程序中用到的变量名、函数名、数组名,文件名以及符号常量等有效的字符序列。

标识符的命名规则:1、由字母、数字、下划线组成;2、第一个字母必须是下划线或字母;3、区别大小写;4、长度不超过8个;5、不能使用关键字;6、见名知意。

C语言第2-3讲

C语言第2-3讲
分别输出以下图形: ******* ******* ******* *******
* *** ***** *******
复习: 计算机中的数据表示
1.2.2 基本整型与%d格式符
例 例1-2 1-2 基本整型变量的定义和输出。 基本整型变量的定义和输出。 #include #include "stdio.h" "stdio.h" main() main() { { int /*定义一个基本整型变量a*/ int a; a; a=23; /*a赋值为23*/ a=23; a=-23567; printf("%d\n",a); printf("%4d\n",a); //用%d格式符输出变量a的值 } }
⑵ 整型变量的声明 例1 main( ) { int a,c; unsigned u; a=12; u=10; c=a+u; printf("%d\n",c); }
2.浮点型变量
(1)浮点型变量的分类
类型 关键字 所占字节数 有效数字位数 数值范围
单精度 float
双精度 double 长双精度 long double
常用数学函数(附录D) x fabs(x) exp(x) ex log(x) ln x log10(x) lg x pow(x,y) xy sqrt(x) x sin(x) sin x cos x cos(x) tan(x) tan x
2.4 赋值、自增、自减运算符
例2-5 赋值运算示例。 #include "stdio.h" main( ) {int a,b; a=1; a=1.95; b=5; a=a+1; a=b; b=a; printf("%d,%d\n",a,b); }
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

2. 写出程序运行结果 #include <stdio.h> void main() { char a1='a',b1='b'; putchar(a1-32); putchar(b1-32); putchar('\n'); putchar(a1); putchar('\t'); putchar(b1); putchar('\n'); }
XUAN SHANLI
合 肥 工 业 大 学
格式I/O函数和字符I/O函数的比较
共同点: 格式I/O函数scanf( )和printf( )与字符I/O函数getchar( ) 和putchar( )均通过系统提供的I/O标准库函数来实现的。 scanf( )和getchar( )都是接收来自键盘的输入数据,printf( ) 和putchar( )都是向显示器屏幕输出数据,它们均包含在头文 件stdio.h中。 不同点: 合 功能:格式I/O函数功能较强,对输入或输出的信息几乎没 肥 有限制,而字符I/O函数功能较单一,每次只能输入输出一个 字符。前者能实现后者的功能; 工 使用方法:格式I/O函数使用灵活,合理而巧妙地使用各种 业 格式说明符和提示信息,可使屏幕丰富多彩,而字符I/O函数 大 则不具备这些灵活性,但它简单、直观。实际应用时应考虑它 们各自的特点,合理使用。 学
XUAN SHANLI
合 肥 工 业 ③ 格式说明符,说明输出表列中的各项的输出格式。格式 大 说明符用%为开始标志。内容包含对一项输出对象的格式说 明。如:%d、%7.2f、%-5c等。 学
对于普通字符和转义字符在相应位置原样输出。 例:printf(“\nabcd%%”); 输出结果: abcd%
合 肥 工 业 大 学
各种类型数据输出举例
①字符型输出(实验l2-4.c) char a=‟b‟; printf(“%5c, %-5c, %c” ,a ,a-32,‟s‟+1); ②字符串输出 输出结果: b,B ,t #include <stdio.h> void main(void) { char Str[ ]="China"; 合 printf("%s,%6s,%-6s\n", Str, Str, Str); 肥 printf(“%4s%6.2s%-6.2s","Hefei","Hefei","Hefei"); 工 } China, China, China Hefei HeHe
2.4.4
逗号运算符和逗号表达式
格式: 表达式1,表达式2 ,. . . 表达式n 功能:用逗号将多个表达式连接成一个表达式,运算结 果取表达式n的值。 例:void main( ) { int a=1,b=2,c=3,x,y; y=(x=a+b, a=x, b+c); printf(“a=%d,b=%d,y=%d,x=%d”,a,b,y,x); }
XUAN SHANLI
有效字符(p40)。
工 (1)实型变量输入时不能规定精度;scanf(“%7.2f”,&a); Х 业 (2)输入多个数据时,数据输入的分隔符应与格式说明符中的 大 分隔符相对应; (3)输入字符数据时,格式中若无分隔符,则所输入的字符均为 学
课堂作业:
1. 求C语句执行后各变量的值 ① a=3;b=5;c=++a* b ;d=a++* b; ② d=(a=3, b=5, b+=a, c=b* 5);
格式说明类型表 (p37表2-6)
格式说明符 %d(o、 x 、 u) %c %s %f(e、g) 说明量的类型 整型 字符型 字符串 浮点型
XUAN SHANLI
♂格式说明符应和输出的表列项一 一对应。 ♂输出的表项应与格式说明符类型一致。
例:printf(“a=%5d\nb=%f”, 2+3, 5.34); 输出结果:a= 5 b=5.340000
2 2
2.5 数据的输入输出(I/O)
C 语言没有I/O语句,输入输出是通过编译系统提供的标准 库函数中的I/O函数来实现的。 I/O函数的原型定义在stdio.h头文件中,在引用I/O函数时,应 在程序开始处加预处理语句包含头文件#include <stdio.h>
2.5.1 输入输出的概念
输入输出指的是内存变量和外部设备间的数据交换(p34)。 输入 内 存 输出
XUAN SHANLI
合 运行结果: a=3,b=2,y=5,x=3 肥 说明: 工 (1) 通常逗号表达式是依次求各表达式的值,结果并不重要。 业 (2) 并非所有出现逗号的地方都是逗号表达式。 上例中 int a=1,b=2,c=3,x,y; 的逗号是变量间的分隔符。 大 学
2.4.5 条件运算符和条件表达式
XUAN SHANLI
业 6.2 6为总输出列数, 2为截取输出字符数大 学
宽度不够,原样输出。
③ 整数输出 例1: #include <stdio.h> void main(void) { unsigned int a=65535; int b=-2; printf("a=%d,%o,%x,%u", a, a, a, a); printf("\nb=%6d%8o%5X%6u",b, b, b, b); } 合 输出结果: a=-1,177777,ffff,65535 b= 177776 -2 FFFE 65534 肥 例2:void main() 相当于: 工 { int c=5; a1=++c; 业 printf(“%d,%d,%d\n”,c+=c++,c+8,++c); a2=c+8; 大 a3=c++; } 输出结果:13,14,6 c+=a3; 学 注意:输出表列如果是表达式,注意求值顺序()!!!
XUAN SHANLI
小数保留两位,四舍五入截断。
合 肥 工 业 大 学
2. 输入函数 scanf()
格式: scanf(“格式控制字符串”,变量地址列表); 功能:按用户指定的格式从键盘将数据输入到变量中。 控制格式与输出基本相同(p40表),输出表列给出各变量地址。 & — 取地址运算符 &a表示变量a的地址 void main(void) 设 a=3,b=4 { scanf(“%d %d”,&a,&b); int a,b; scanf(“%d,%d”,&a,&b); scanf("%d%d",&a,&b); 合 scanf(“a=%d,b=%d",&a,&b); printf("%d,%d\n",a,b); 肥 } 123 456 如何输入?
XUAN SHANLI
一、编辑C源文件 编辑: 对C程序进行输入修改的过程。使用Turbo C(或VC++)集成开发环 二、编译C文件 编译:对C源文件语法进行检查和翻译,生成二进制目标文件。目标文件与
源文件同名,以 “.obj”为扩展名。编译系统发现错误时,在屏幕下方信息 窗口显示出错信息,根据错误信息改正后再次编译,直到编译通过为止。
XUAN SHANLI
肥 工 业 大 学
2.7.6 求字节数运算符sizeof
格式: sizeof 表达式; sizeof(类型说明符); 功能:求表达式或类型说明符对应的数据所占内存的字节数。 例: int a,b,c,d,e; a=20; b=sizeof a; c=sizeof(a+b); 合 d=sizeof(float); 肥 e=sizeof(double); printf(“a=%d\nb=%d,c=%d\nd=%d,e=%d”,a,b,c,d,e) 工 运算结果: a=20 b=2, c=2 d=4, e=8
XUAN SHANLI
④ 实数输出 include <stdio.h> void main(void) { float f1=123.456; double f2=12345678.1234567; printf(“f1=%f,%e,%10.2f,%-10.2f\n",f1 ,-f1,f1 ,-f1); printf(“f2=%lf,%G,%-10.4f\n",f2 ,-f2 ,f2); } 123.456001,-1.23456e+02, 123.46,-123.46 12345678.123457, -1.23457E+07,12345678.1234 左对齐,符号占一位。
XUAN SHANLI
合 肥 工 业 大 学
2.5.3 格式输入/输出函数 用“,”分隔 1. 输出函数 printf( ) 的常量、变量、 格式描述。 表达式表。 格式: printf(“格式控制字符串”,输出表列);
格式控制字符串包含: ① 普通字符 ,如:“ a=”、 “ input a,b,c:” ② 转义字符,如:“ \n”、 “ \t”
XUAN SHANLI
tan(x) fabs(x) pow(x,y) sqrt(x)
log(x) log10(x)
tanX |x| xy
X
lnx log10x
合 y=sqrt(sin(x)*sin(x)+cos(x)*cos(x)) 肥 工 使用方法: 业 作为一个运算项参加表达式运算。 大 学
y sin X cos X
XUAN SHБайду номын сангаасNLI
业 大 学
C语言常用数学函数
为方便用户使用,C系统定义了大量函数。数学函数主要是 求解数学中的常用函数,如sinX等。数学函数的原型定义在系统 的math.h头文件中。在使用此类函数时,应在程序的开始处加语 句:#include <math.h> 函数 数学含义 注意:函数的参数(自变量)、 函数的值都是double类型。 sin(x) sinX con(x) cosX
相关文档
最新文档