
《C语言程序设计》 第3章顺序结构程序设计
《 C语言程序设计》 第 3 章 顺序结构程序设计

第3章顺序结构程序设计 第3章顺序结构程序设计 了解语句的基本分类。 ·掌握赋值语句的应用。 掌握字符数据的输入与输出。 。 掌握格式输入与输出。 。 掌握编写简单的顺序结构程序的方法。 网☑D
第3章顺序结构程序设计 第3章 顺序结构程序设计 • 了解语句的基本分类。 • 掌握赋值语句的应用。 • 掌握字符数据的输入与输出。 • 掌握格式输入与输出。 • 掌握编写简单的顺序结构程序的方法

第3章顺序结构程序设计 3.1C语言语句类型 1表达式语句在一个表达式的后面加一个分号“;”就构成表达式语句。例如: =+2是表达式,而不是语句。 #2;是语句。 注:任何表达式都可以加上分号而成为语句 2.函数调用语句 在函数调用表达式后面加分号就构成了函数调用语句。例如: printf("this is a c statement.") 3.控制语句 C语言中共有9种流程控制语句:f0.else、for0 4.空语句 只有1个分号的语句称为空语句。如:;即是一个空语句,它什么也不做。 5.复合语句 由一对大括弧“”把若干语句括起来构成的语句称为复合语句。 复合语句在语法上相当于1个单一语句,在一对花括号内的语句数量不限。 例如:{t=a;a=b;b=t;} M✉D
第3章顺序结构程序设计 1.表达式语句 在一个表达式的后面加一个分号“;”就构成表达式语句 。例如: i=i+2 是表达式,而不是语句。 i=i+2 ; 是语句。 注:任何表达式都可以加上分号而成为语句 2.函数调用语句 在函数调用表达式后面加分号就构成了函数调用语句。例如: printf ("this is a c statement." ); 3.控制语句 C语言中共有9种流程控制语句:if().else、for() . 4.空语句 只有1个分号的语句称为空语句。如: ; 即是一个空语句,它什么也不做。 5.复合语句 由一对大括弧“{}”把若干语句括起来构成的语句称为复合语句 。 复合语句在语法上相当于1个单一语句,在一对花括号内的语句数量不限 。 例如: { t=a; a=b; b=t; } 3.1 C语言语句类型

第3章顺序结构程序设计 3.2赋值与赋值语句 赋值运算符和表达式 简单赋值运算符 例 a=10 >符号: 心 /*把常量10赋给变量a*/ >格式: 变量名=表达式 >作用:将一个数据(常量或表达式)赋给一个变量 01 复合赋值运算符 >种类:+-==/=%=《=》=&=“== >含义:变量op=表达式分变量=变量·op表达式 x%=3 > x=x%3 x*=y+8 X=x*(y+8) a十=3 a=a+3
第3章顺序结构程序设计 复合赋值运算符 ➢ 种类:+= -= *= /= %= 《= 》= &= ^= |= ➢ 含义: 变量 op= 表达式 变量 = 变量 op 表达式 a+=3 a=a+3 x*=y+8 x=x*(y+8) x%=3 x=x%3 例 a=10 /*把常量10赋给变量a*/ 简单赋值运算符 ➢符号: = ➢格式: 变量名 =表达式 ➢作用:将一个数据(常量或表达式)赋给一个变量 赋值运算符和表达式 3.2 赋值与赋值语句

第3章顺序结构程序设计 赋值运算符和表达式 说明: √结合方向:自右向左 例 3=x-2*y; √左侧必须是变量,不能是 a+b=3; √赋值转换规则:使赋值号右边表达式值自动转换 成其左边变量的类型 例inti; √赋值表达式的值与变量值才 i=2.56; ∥结果=2; 例: a=b=c=5 //表达式值为5,a,b,c值为5 a=(b=5) /b=5;a=5 a=5+(c=6) //表达式值11,c=6,a=11 a=(b=4)+(c=6) //表达式值10,a=10,b=4,c=6 a=(b=10)/(c=2)/表达式值5,a=5,b=10,c=2 网☑D
第3章顺序结构程序设计 ✓赋值表达式的值与变量值相等,且可嵌套 ➢说明: ✓结合方向:自右向左 ✓左侧必须是变量,不能是常量或表达式 例 int i; i=2.56; //结果i=2; 例 3=x-2*y; a+b=3; ✓赋值转换规则:使赋值号右边表达式值自动转换 成其左边变量的类型 例: a=b=c=5 a=(b=5) a=5+(c=6) a=(b=4)+(c=6) a=(b=10)/(c=2) //表达式值为5,a,b,c值为5 // b=5;a=5 //表达式值11,c=6,a=11 //表达式值10,a=10,b=4,c=6 //表达式值5,a=5,b=10,c=2 赋值运算符和表达式

第3章顺序结构程序设计 赋值运算符和表达式 假设已有整型变量a,其值为3,试计算表达式: a十=a-=a*a的值。 main() 1.先计算“a*a”; 2.计算“a-=9”; int a=3; 3.计算“a十=-6”。 printf ("%d n",a+=a-=a*a); 程序的运行结果是: -12
第3章顺序结构程序设计 假设已有整型变量a,其值为3,试计算表达式: a+=a-=a*a的值。 main() { int a=3; printf("%d\n",a+=a-=a*a); } 程序的运行结果是: -12 1. 先计算“a*a” ; 2. 计算“a-=9”; 3 .计算“a+=-6” 。 赋值运算符和表达式

第3章顺序结构程序设计 赋值语句 赋值语句是由赋值表达式加上一个分号构成,是程序设 计中最常用的语句之一: 【格式】 变量名=表达式; 【功能】将赋值号“=”号右边表达式的值赋给左边的变量 【执行过程】先计算表达式的值,然后再把该值赋给左边的 变量 注意:赋值表达式可以包括在其他表达式之中,但赋值 语句则不行。 例如: if(a=b)>0)t=a;√ if ((a=b;)>0)t=a;X 国☒D
第3章顺序结构程序设计 赋值语句是由赋值表达式加上一个分号构成,是程序设 计中最常用的语句之一 : 【格式】 变量名=表达式 ; 【功能】 将赋值号“=”号右边表达式的值赋给左边的变量 【执行过程】先计算表达式的值,然后再把该值赋给左边的 变量 注意:赋值表达式可以包括在其他表达式之中,但赋值 语句则不行。 例如: if ((a=b)>0) t=a; √ if ((a=b ;)>0) t=a; × 赋值语句

第3章顺序结构程序设计 3.3格式化输入输出函数 1.格式输入函数printf(0 2.格式输出函数scanf0 冈✉D
第3章顺序结构程序设计 1. 格式输入函数printf() 2. 格式输出函数scanf() 3.3 格式化输入输出函数

第3章顺序结构程序设计 3.3.1 printf函数 格式:printf(“格式控制串”,输出项表) 功能:按指定格式向显示器输出数据 返值:正常,返回输出字节数;出错,返回E0F(-1) 一输出表项:要输出的数据(可以没有,多个时以“,”分隔) 一格式控制串:包含两种信息 ·格式说明:%[修饰符]格式字符用于指定输出格式 ·普通字符或转义序列:原样输出 一格式字符 网☒D
第3章顺序结构程序设计 格式:printf(“格式控制串”,输出项表) 功能:按指定格式向显示器输出数据 返值:正常,返回输出字节数;出错,返回EOF(-1) 3. 3. 1 printf 函数 – 输出表项:要输出的数据(可以没有,多个时以“,”分隔) – 格式控制串:包含两种信息 • 格式说明: %[修饰符]格式字符 用于指定输出格式 • 普通字符或转义序列:原样输出 – 格式字符

第3章顺序结构程序设计 格式字符: d,i 十进制整数 inta=567;printf(“%d”,a); 567 X,X 十六进制无符号整数inta-255 printf“%x”,a; 例 0 例 int a=3,b=4; main( printf(“%d%dn”,a,b unsigned int u=65535; u printf(“a=%d,b=%d printf(”u=%d小n",u) 输出结果:34 a=3,b=4 输出结果:u=-1 说明 ·格式字符要用小写(除0、可用大写外) ·格式字符与输出项个数应相同,按先后顺序一一对应 ·输出转换:格式字符与输出项类型不一致,自动按指定格式输出(类 0 型应相兼容)
第3章顺序结构程序设计 d,i x,X o u c s e,E f g %% 格式字符: 十六进制无符号整数 不带符号十进制整数 十进制整数 指数形式浮点小数 单一字符 字符串 八进制无符号整数 小数形式浮点小数 e和f中较短一种 百分号本身 int a=567;printf ( “%d”,a); int a=255;printf(“%x”,a); int a=65;printf(“%o”,a); int a=567;printf(“%u”,a); char a=65;printf(“%c”,a); printf(“%s”,“ABC”); float a=567.789;printf(“%e”,a); float a=567.789;printf(“%f”,a); float a=567.789;printf(“%g”,a); printf(“%%”); 5.677890e+02 567 ff 101 567 A ABC 567.789000 567.789 % – 说明 • 格式字符要用小写(除O、X可用大写外) • 格式字符与输出项个数应相同,按先后顺序一一对应 • 输出转换:格式字符与输出项类型不一致,自动按指定格式输出(类 型应相兼容) 例 int a=3,b=4; printf(“%d %d\n”,a,b); printf(“a=%d , b=%d\n”,a,b); 输出结果: 3 4 a=3, b=4 例 main() { unsigned int u=65535; printf(”u=%d\n",u); } 输出结果:u=-1