版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
转移控制语句与循环嵌套
张竞丹深圳信息职业技术学院23break语句循环嵌套目录1continue语句目录23break语句1break语句循环嵌套1continue语句break语句一般形式:break;功能:中断循环体。即直接跳出循环,接着执行循环体下面的语句。例如:for(sum=0,i=0;;i++)
{
sum+=i;
if(i==5)break;
}注意:使用break语句可以使流程跳出循环结构,继续执行循环语句下面的语句。break语句不能用于循环语句和switch语句之外的其它语句。目录23break语句2continue语句循环嵌套1continue语句continue语句一般形式:continue;功能:结束本次循环体。即跳过循环体内continue语句之后尚未执行的语句组,接着进行下一次循环的判断。例如:for(sum=0,i=0;i<10;i++){if(i%2)continue;sum+=i;}课前准备continue语句与break语句的区别continue语句和break语句的区别:continue语句只结束本次循环,而不是终止整个循环的执行。break语句结束整个循环过程,不再判断执行循环的条件是否成立目录23break语句3循环嵌套循环嵌套1continue语句课前准备循环的嵌套就是一个循环体内又包含另一个完整的循环结构。如果内嵌的循环中还有嵌套循环,这就是多层循环。三种循环(while循环、do…while循环和for循环)可以互相嵌套。例
输入如下3行,每行5个‘*’的图案*****
*****
*****循环嵌套课前准备算法分析:(1)输出一个‘*’putchar('*');(2)以单层循环实现一行打印5个‘*’for(j=0;j<5;j++) putchar('*');(3)以二层循环实现(2)的循环。 for(i=0;i<3;i++) { for(j=0;j<5;j++) putchar('*'); putchar('\n'); }循环嵌套谢谢您的聆听!Thankyou!for语句
张竞丹深圳信息职业技术学院for语句一般格式:for(表达式1;表达式2;表达式3){语句;}流程图:注意:(1)for循环条件语句中有三部分组成,三部分必须用“;”隔开。(2)表达式1的作用是对循环变量赋初值,表达式2则是循环结束条件,表达式3负责为循环变量增值。(3)for循环中“循环变量初始值”可以为空,此时必须在for循环之前对其定义初始值。(4)for循环中“条件表达式”可以省略,此时程序会成为“死循环”。(5)for循环中“循环变量增值”也可以省略。但为了保证程序正常运行,变量增值必须在for循环语句中添加,否则也会变成死循环。for语句例
计算1+2+…+100(以for语句实现)算法分析:(1)以for循环完成中循环结构的设计。(2)以printf语句输出计算结果。流程图:for语句开始i<=100结束YesNoi=1i++sum+=isum=0for语句循环语句有while语句、do…while语句、for语句:在许多实际问题处理中while、do…while、for语句可以相互替换for语句更适用于循环次数明确的场景,尤其是对下一章数组的遍历。循环变量的值必须是整数吗?编写程序是很枯燥的吗?程序员都很呆板吗?下面介绍两个趣味程序:绘制心形移动的笑脸(方框程序编写)例
趣味程序:在屏幕上绘制心形图案。算法分析:(1)根据心形曲线的公式在屏幕上绘制心形。定义单精度类型变量x、y表示坐标(x,y)。定义单精度变量,如果z<0,则(x,y)在心形曲线内部
心形曲线程序执行结果
for语句例
趣味程序:在屏幕上绘制心形图案。算法分析:(2)以for循环完成心形内部图案的绘制,其中心形内部输出‘*’号,外部输出空格。(3)注意:在屏幕上绘制图形时,由于行与行之间有行间距,所以x轴的循环递增(或减)的值应小于y轴的值,以保证输出图形美观。for语句中循环变量x、y为单精度实型for语句例
趣味程序(移动的笑脸——方框的绘制)请在输出屏幕某一位置上绘制一个方框,方框中心输出笑脸。
for语句例
趣味程序(移动的笑脸——方框的绘制)算法分析:(1)方框的坐标将输出窗口左上角视为原点(0,0),横轴为x轴,纵轴为y轴;方框在x轴的坐标分别定义为整型变量left和right,在y轴的坐标分别为整型变量top和bottom。for语句(0,0)xyrightleftbottomtop例
趣味程序(移动的笑脸——方框的绘制)请在输出屏幕某一位置上绘制一个方框,方框中心输出笑脸。算法分析:(2)输出窗口的句柄
GetStdHandle函数,详情参见例3-17。(3)控制台屏幕坐标COORD设置光标的位置——SetConsoleCursorPosition函数,详情参见例3-17。(4)使用for循环语句,输出方框的四条边线。(5)求方框的中心坐标,并在此坐标处输出笑脸。
for语句谢谢您的聆听!Thankyou!do…while语句
张竞丹深圳信息职业技术学院do…while语句一般格式:do{语句;}while(表达式);流程图:do…while语句为“直到型”循环控制语句,其特点是先执行语句、后判断表达式,循环体至少执行一次。例
计算1+2+…+100(以do…while语句实现)算法分析:(1)以do…while循环完成(1)中循环结构的设计。(2)以printf语句输出计算结果流程图:do…while语句开始结束YesNoi=1;sum=0i++sum+=ii<=100例
计算1+2+…+100(以while语句实现)算法分析:(2)以while循环完成(1)中循环结构的设计。(3)以printf语句输出计算结果。流程图:开始i<=100结束YesNoi=1;sum=0i++sum+=ido…while语句循环语句有while语句、do…while语句:在许多实际问题处理中while与do…while语句可以相互替换。但是它们之间仍有区别,当循环条件不满足时候,while语句循环体的最少执行次数为0次,而do…while语句的循环体最少执行次数为1次。do…while语句谢谢您的聆听!Thankyou!while语句
张竞丹深圳信息职业技术学院while语句一般格式:while(表达式){语句;}流程图:例
计算1+2+…+100(以while语句实现)算法分析:(1)分析题目1+2+…+100中,重复处理的操作为加法。设整型变量sum用于存放累加的结果,那么sum的初值必须清零(intsum=0;)。
第1步:sum=sum+1=1
第2步:sum=sum+2=1+2……
第100步:sum=sum+100=1+2+…+100如果以整型变量i表示第i步(i∈[1,100]),那么第i步:sum=sum+i因此,循环条件为“i>=1&&i<=100”,循环体为“sum+=i”。while语句例
计算1+2+…+100(以while语句实现)算法分析:(2)以while循环完成(1)中循环结构的设计。(3)以printf语句输出计算结果。流程图:while语句开始i<=100结束YesNoi=1;sum=0i++sum+=i谢谢您的聆听!Thankyou!循环结构的概述
张竞丹深圳信息职业技术学院引言C语言有三种基本结构,已经介绍了顺序结构和选择结构,下面介绍最后一种结构——循环结构,请关注下面的几个问题:循环结构处理什么样的问题,它的作用是什么?设计循环结构的时候,它的必备条件有哪些?循环与病毒?循环结构有哪些语句,它们之间有什么区别与联系?循环结构的概述循环结构是C语言中用来解决需要重复处理的问题。据循环的类型,循环问题可以分为无休止循环和有终止循环两类。例如,地球绕着太阳转这就是一个无休止循环,而统计班级中学生的成绩就是有终止循环。在实际程序编写中,不能设计无休止循环。计算机病毒就是一种无休止循环,虽然编程错误产生的无休止循环没有病毒的危害性大,但是程序将一直执行、常占CPU和内存资源、无法退出。循环结构的概述在循环结构设计中重点关注构成循环的两个条件——循环体和循环结束条件。循环体是循环中需要重复执行的操作,例如地球围绕太阳转、对每个同学的成绩进行累加。循环结束条件就是程序在什么情况下停止重复的操作,例如计算50个同学的平均分,累加的学生成绩次数大于50即停止。谢谢您的聆听!Thankyou!switch语句
张竞丹深圳信息职业技术学院引言if语句最多有两个分支,而嵌套的if语句可以实现多分支选择,但层数太多会造成程序可读性降低。本节介绍使用switch语句处理多分支选择问题。switch语句实现多分支选择结构一般形式:switch(表达式){
case常量表达式1:语句1;break;
case常量表达式2:语句2;break;
……
case常量表达式n:语句n;break;
default:语句n+1;}
switch语句实现多分支选择结构流程图:表达式常量表达式1常量表达式2常量表达式ndefault…语句1语句2语句n语句n+1…switch语句实现多分支选择结构注意:(1)switch后面的表达式和case后的常量表达式可以是整型或字符型。(2)case后面的表达式只能是常量表达式,并且各常量表达式的值不能相同,否则会出现错误。(3)case后的语句可以是一条语句,也可以是多条语句,当是多条语句时,可以不用{}括起来。(4)break语句的功能是跳出switch语句,接着执行switch语句后面的语句。如果程序中缺少break语句,那么将顺序执行其后的case或default分支,直到遇到break语句或switch语句结束。switch语句实现多分支选择结构注意:(5)各case和default语句的先后顺序可以变动,而不会影响程序的执行结果。(6)default语句可以省略不用。这时如果找不到对应的case分支,流程将不进入switch语句。switch语句实现多分支选择结构例趣味程序(乐曲点播)曲库里有三首歌曲:1生日歌2满天都是小星星3两只老虎
请选择对应歌曲的序号并利用计算机的嗡鸣器演奏歌曲(使用switch语句完成)。switch语句实现多分支选择结构例趣味程序(乐曲点播)曲库里有三首歌曲编程分析:(1)定义符号常量表示音节(2)在屏幕上输出曲目的菜单
(3)输入所选曲目的序号(4)使用switch语句完成曲目的选择(5)编写三首乐曲的演奏程序switch语句实现多分支选择结构例
趣味程序(移动的笑脸——单步移动):请在输出窗口中某一位置上输出笑脸,通过上、下、左、右方向键对笑脸做单步移动switch语句实现多分支选择结构例
趣味程序(移动的笑脸——单步移动):请在输出窗口中某一位置上输出笑脸,通过上、下、左、右方向键对笑脸做单步移动编程分析:(1)输出窗口的句柄GetStdHandle函数函数原型:HANDLE
GetStdHandle(
DWORD
nStdHandle);功能:Windows
API函数。它用于从一个特定的标准设备(标准输入、标准输出或标准错误)中取得一个句柄(用来标识不同设备的数值)。参数nStdHandleSTD_INPUT_HANDLE标准输入的句柄STD_OUTPUT_HANDLE标准输出的句柄STD_ERROR_HANDLE标准错误的句柄注:该函数的定义在windows.h文件中。switch语句实现多分支选择结构例
趣味程序(移动的笑脸——单步移动):请在输出窗口中某一位置上输出笑脸,通过上、下、左、右方向键对笑脸做单步移动编程分析:(2)控制台屏幕坐标COORDCOORD是WindowsAPI中定义的一种结构,表示一个字符在控制台屏幕上的坐标。其定义为:typedefstruct_COORD{SHORTX;/*horizontalcoordinate*/SHORTY;/*verticalcoordinate*/}COORD;switch语句实现多分支选择结构例
趣味程序(移动的笑脸——单步移动):请在输出窗口中某一位置上输出笑脸,通过上、下、左、右方向键对笑脸做单步移动编程分析:(2)控制台屏幕坐标设置光标的位置——SetConsoleCursorPosition函数
函数原型:BOOL
SetConsoleCursorPosition(
HANDLE
hConsoleOutput,COORDdwCursorPosition);功能:Windows
API函数,设置控制台(cmd)光标位置。参数:
hConsoleOutput窗口句柄
dwCursorPosition光标位置
注:该函数的定义在windows.h文件中。switch语句实现多分支选择结构例
趣味程序(移动的笑脸——单步移动):请在输出窗口中某一位置上输出笑脸,通过上、下、左、右方向键对笑脸做单步移动编程分析:(3)在指定位置上输出笑脸将输出窗口左上角视为原点(0,0),横轴为x轴,纵轴为y轴。设置光标位置为坐标(10,5),输出笑脸。(4)以getch函数获取获取键盘上输入的符号(上、下、左、右方向键)getch函数函数原型:getch();功能:在windows平台下从控制台无回显地取一个字符注:该函数的定义在conio.h文件中。另外,获取方向键的ASCII码要调用两次getch函数,第一次获取的是扫描码,第二次获取的才是ASCII码。switch语句实现多分支选择结构例
趣味程序(移动的笑脸——单步移动):请在输出窗口中某一位置上输出笑脸,通过上、下、左、右方向键对笑脸做单步移动编程分析:(5)以switch函数判断输入的功能键,如果是上、下、左、右方向键,则在原位置输出空格,并根据方向键重新设置光标、在新位置输出笑脸;否则,不做任何处理。谢谢您的聆听!Thankyou!if语句
张竞丹深圳信息职业技术学院引言if语句是选择结构中最常用的一种语句,可以实现单分支、双分支、多分支选择结构。23if语句实现单分支选择结构嵌套的if语句实现多分支选择结构目录1if语句实现双分支选择结构目录23if语句实现单分支选择结构1if语句实现单分支选择结构嵌套的if语句实现多分支选择结构1if语句实现双分支选择结构if语句实现单分支选择结构一般形式:if(条件表达式)
语句;流程图:条件表达式
语句假真课前准备注意:条件表达式一般是逻辑表达式或关系表达式,但也可以是其它表达式,如赋值表达式,甚至也可以是一个变量或常量。例如:if(a=6)或if(6)if语句实现单分支选择结构课前准备例
输入学生成绩,如果小于60分,请输出“不及格”。编程分析:(1)数据结构(2)算法if语句实现单分支选择结构类型题目要求形式语言(C)的表达输入数据学生成绩单精度(float)实型变量:score
算法流程形式语言的表达从键盘输入一个学生的成绩以函数scanf从键盘上读取数据,存放在变量score中判断如果小于60分,请输出“不及格”if(score<60)输出“不及格”课前准备例输入学生成绩,如果小于60分,请输出“不及格”。编程分析:if语句实现单分支选择结构score<60YesNo开始结束score不及格目录23if语句实现单分支选择结构2if语句实现双分支选择结构嵌套的if语句实现多分支选择结构1if语句实现双分支选择结构if语句实现双分支选择结构一般形式:if(条件表达式)语句1;else语句2;流程图:条件表达式假真
语句1
语句2课前准备例输入两个整数,输出其中较大数。编程分析:(1)数据结构(2)算法if语句实现双分支选择结构类型题目要求形式语言(C)的表达输入数据两个整数2个整型(int)变量:a,b
算法流程形式语言的表达从键盘输入两个整数赋值给变量a、b以函数scanf从键盘上读取数据,分别存放在变量a和b中输出其中较大数if(a>b)输出aelse
输出b课前准备例输入两个整数,输出其中较大数。流程图:if语句实现双分支选择结构a>bYesNo开始结束a,bab课前准备例
趣味程序(乐曲点播)曲库里有两首歌曲:1生日歌2满天都是小星星
请选择对应歌曲的序号并利用计算机的嗡鸣器演奏歌曲。if语句实现双分支选择结构课前准备例
趣味程序(乐曲点播)曲库里有两首歌曲:编程分析:(1)定义符号常量表示音节(如表3-3),具体分析见例3-9。(2)在屏幕上输出曲目的菜单
(3)输入所选曲目的序号(4)使用if…else选择结构根据用户输入选择曲目(5)编写乐曲演奏程序if语句实现双分支选择结构课前准备背景知识补充:歌曲生日歌的歌谱及程序编写请参看例3-9歌曲满天都是小星星的歌谱简谱1155665-|4433221-|5544332-|5544332-|1155665-|4433221-|字符常量乐谱
AAGGHHGFFDDSSAGGFFDDSGGFFDDSAAGGHHGFFDDSSAif语句实现双分支选择结构目录23if语句实现单分支选择结构3嵌套的if语句实现双分支选择结构嵌套的if语句实现多分支选择结构1if语句实现双分支多择结构嵌套if语句实现多分支选择结构一般形式:if(表达式1)if(表达式2)
语句1;else
语句2;elseif(表达式3)
语句3;else
语句4;注意:(1)else总是与其前面最邻近的没有与else匹配过的if进行匹配。(2)当if语言后有多条执行语句时,请将多条语句用{}括起来作为复合语句。课前准备例趣味程序(乐曲点播)曲库里有三首歌曲:1生日歌2满天都是小星星3两只老虎
请选择对应歌曲的序号并利用计算机的嗡鸣器演奏歌曲(使用嵌套的if语句完成)。嵌套if语句实现多分支选择结构课前准备例趣味程序(乐曲点播)曲库里有三首歌曲:编程分析:(1)定义符号常量表示音节(如表3-3),具体分析见例3-9。(2)在屏幕上输出曲目的菜单
(3)输入所选曲目的序号(4)使用if…else嵌套语句完成曲目的选择(5)编写三首乐曲的演奏程序嵌套if语句实现多分支选择结构课前准备例趣味程序(乐曲点播)曲库里有三首歌曲:编程分析:两只老虎的歌谱简谱1231|1231|345|345|5654|31|56
54|31|25|10|25|10|字符常量乐谱ASDAASDADFGDFGGHGFDAGHGFDASBA-SBA-嵌套if语句实现多分支选择结构谢谢您的聆听!Thankyou!条件的描述
张竞丹深圳信息职业技术学院引言判断框(菱形框)中的条件即为选择结构中的判断条件。以七十岁以上的老人入公园免票为例,采用较为熟悉的数学方法描述为:设x为年龄,y为门票费用。如果x≥70,则y=0。其中x≥70为数学中条件的描述。但是,在C语言中不能采用如上的数学语言或者自然语言来描述条件,而且C语言中的大于等于号也不是“≥”,因为键盘上无法输入此符号。12逻辑运算符目录关系运算符目录121关系运算符逻辑运算符关系运算符关系运算符C语言中以关系运算符表述变量、常量、表达式之前的大小关系,包括大于、小于等关系,其意义和数学中的关系运算符号一致,只是在书写上略有不同关系意义C语言中的关系运算符数学中的相应符号小于<<小于或等于<=≤大于>>大于或等于>=≥等于===不等于!=≠课前准备注意关系运算符的优先级别:(1)关系运算符的优先级低于算术运算符,高于赋值运算符(2)关系运算符中,<、<=、>、>=的优先级相同,高于==和!=的优先级相同。关系运算符以七十岁以上的老人入公园免票为例,假设x为年龄,则条件表达式采用C语言描述为“x>=70”。目录122逻辑运算符逻辑运算符关系运算符逻辑运算符在实际生活中1.2米以下的儿童去公园也是免费的,那么“七十岁以上的老人或1.2米以下的儿童,入公园免票”这条判断语句仅依赖于关系表达式来描述是无法完成的。其中的“或”关系还依赖于逻辑运算符号。逻辑意义C语言中的逻辑运算符数学中的相应符号与,相当于AND&&∧或,相当于OR||∨非,相当于NOT!→逻辑运算符逻辑运算符的优先级:!非算术运算符关系运算符&&和||赋值运算符高低以七十岁以上的老人或1.2米以下的儿童入公园免票为例,假设x为年龄,h为身高,则条件表达式采用C语言描述为“x>=70||h<1.2”。谢谢您的聆听!Thankyou!输入输出语句
张竞丹深圳信息职业技术学院引言
输入输出语句是C语程序中最常见的一种语句,实现了人机之间的交互。
输出:将程序的结果显示在屏幕上或者将结果写入文件中,供用户查看与保存。
输入:将用户的数据从键盘输入或从文件中读入到程序中,然后执行相应的操作。12简单的格式输入输出语句目录字符输入输出语句目录121字符输入输出语句简单的格式输入输出语句字符输入输出语句字符输入输出语句
C标准输入输出函数库中提供了关于单个字符的输入输出函数getchar和putchar:它们用法简单、容易理解;但是每次只能输入或者输出单个字符,无法处理其它类型的数据。课前准备功能:从键盘上输入一个字符一般形式:getchar();通常把输入的字符赋予一个字符变量,构成赋值语句
charc;c=getchar();注意:在使用getchar函数时
getchar函数只接受单个字符,输入多于一个字符时,只接收第一个字符。输入数字也按字符处理。函数getchar的定义在标准输入输出库(stdio.h)文件中,所以在调用该函数时,必须在文件中用预编译命令“#include”包含此头文件。getchar函数(字符输入函数)字符输入输出语句课前准备例
请在屏幕上输入3个字符编程分析:(1)数据结构(2)算法getchar函数(字符输入函数)类型题目要求形式语言(C)的表达输入数据输入3个字符3个字符型(char)变量:a,b,c算法流程形式语言的表达以函数getchar从键盘上读取3个字符,并分别赋值给字符变量a、b、ca←getchar()b←getchar()c←getchar()字符输入输出语句课前准备功能:在显示器上输出单个字符一般形式:putchar(字符变量);例如:putchar('A');/*输出大写字母A*/putchar(x);/*输出字符变量x的值*/putchar('\n');/*输出换行*/注意:putchar函数的定义在标准输入输出库(stdio.h)文件中,所以在调用该函数时,必须在文件中用预编译命令“#include”包含此头文件。putchar函数每次只能输出一个字符。putchar函数(字符输出函数)字符输入输出语句课前准备例3-7请在键盘上输入3个字符,然后将其保存并输出到屏幕上编程分析:(1)数据结构(2)算法字符输入输出语句putchar函数(字符输出函数)类型题目要求形式语言(C)的表达输入数据输入3个字符3个字符型(char)变量:a,b,c算法流程形式语言的表达以函数getchar从键盘上读取3个字符,并分别赋值给字符变量a、b、ca←getchar()b←getchar()c←getchar()输出字符变量a、b、cputchar(a)putchar(b)putchar(c)课前准备例趣味程序(移动的笑脸——输出笑脸):使用putchar函数在屏幕上输出笑脸。编程分析:笑脸的符号其ASCII码值为2,利用变量类型的自动转换原则,用putchar函数在屏幕上输出笑脸的符号。字符输入输出语句putchar函数(字符输出函数)目录122简单的格式输入输出语句简单的格式输入输出语句字符输入输出语句简单的格式输入输出语句字符输入输出函数只能完成对单个字符的输入输出,其它类型(如整型、实型)的数据如何进行输入输出呢?接下来介绍简单的格式输入输出函数。虽然其名字称为“简单的”格式输入输出函数,但是其使用并不简单;函数printf和scanf都为形参数量可变的函数,调用时要格外小心。课前准备功能:按用户指定的格式,把指定的数据显示到显示器屏幕上调用的一般形式为printf("格式控制字符串",输出表列);格式控制字符串:包括格式声明和普通字符两种信息格式声明:以%开头,在%后面跟有各种格式字符普通字符:在输出时原样照印,在显示中起提示作用输出表列:给出了各个输出项,要求格式字符串和各输出项在数量和类型上应该一一对应。格式输出函数简单的格式输入输出语句课前准备基本的格式字符
d格式符按十进制整型数据的实际长度输出
i格式符与d格式符相同
c格式符输出单个字符
f格式符以小数形式输出单、双精度实数
s格式符输出字符串
e格式符以指数形式输出单、双精度实数格式输出函数简单的格式输入输出语句课前准备在实际应用中要注意:所有输出项都必须指定输出格式;各输出项按照格式控制字符串的格式声明符先后顺序引用的;格式说明符必须与对应输出项数据类型保持一致。在调用printf函数时必须包含stdio.h头文件。思考:如何原样输出字符“%”呢?例如:输出0.333333%
printf("%f%%",1.0/3);格式输出函数简单的格式输入输出语句课前准备例
趣味程序(移动的笑脸——输出笑脸):使用printf函数在屏幕上输出笑脸。编程分析:(1)笑脸的符号其ASCII码值为2(2)调用函数printf在屏幕上输出笑脸的符号,使用格式声明%c格式输出函数简单的格式输入输出语句课前准备功能:按用户指定的格式从键盘上把数据输入到指定的变量之中一般形式:scanf("格式控制字符串",地址表列);格式控制字符串的作用与printf函数相同地址表列是若干个地址组成的表列,可能是变量的地址,也可能是字符串的首地址.变量的地址是由地址运算符“&”后跟变量名组成的.格式输入函数简单的格式输入输出语句课前准备例
请在键盘上输入一个整数、一个实数、一个字符,然后将其保存并输出到屏幕上。编程分析:(1)数据结构格式输入函数简单的格式输入输出语句题目要求形式语言(C)的表达输入数据一个整数、一个实数、一个字符inta;floatb;charc;输出数据输入的三个数a、b、c课前准备例
请在键盘上输入一个整数、一个实数、一个字符,然后将其保存并输出到屏幕上。编程分析:(2)算法格式输入函数简单的格式输入输出语句
算法流程形式语言的表达在键盘上输入一个整数、一个实数、一个字符以函数scanf从键盘上读取相应类型的数据输出a、b、c的值调用printf函数,分别输出变量a,b,c的值课前准备思考:(1)“scanf("%d,%f,%c",&a,&b,&c);”中“%d,%f,%c”之间有逗号,在输入数据时也要加逗号。如果去掉逗号,输入语句为“scanf("%d%f%c",&a,&b,&c);”,那么键盘上输入数据时以什么符号将数据隔开?前面的提示语句“printf("Pleaseinputa,b,c:");”是不是也要修改?(2)如果输入语句为“scanf(”%d%f%c“,&a,&b,&c);”,当按照下图所示进行输入,结果为什么不对呢?格式输入函数简单的格式输入输出语句课前准备注意:(1)对于数组或指针变量,由于数组名和指针变量名本身就是地址,因此使用scanf函数时,不需要在它们前面加上“&”操作符。(2)在输入多个数值数据时,若格式控制串中没有非格式字符作输入数据之间的间隔则可用空格、TAB或回车作间隔。如输入语句“scanf("%d%f%c",&a,&b,&c);”,输入时就不用逗号,而用空格、tab键或回车键将各个数据隔开。(3)可以在格式化字符串中的“%”与格式声明符之间加入一个整数,表示任何读操作中的最大位数。(4)函数scanf中没有精度控制。例如语句“scanf("%5.2f",&a);”是非法的,不能企图用此语句输入小数为2位的实数。格式输入函数简单的格式输入输出语句课前准备注意:(5)函数scanf中要求给出变量地址,如给出变量名则会出错。如语句“scanf("%d",a);”是非法的,应改为“scanf("%d",&a);”才是合法的。(6)在输入字符数据时,若格式控制串中无非格式字符,则认为所有输入的字符均为有效字符。例如输入语句“scanf(”%c%c%c“,&a,&b,&c);”按图中输入,则把1赋值给字符型变量a,把2赋值给字符型变量b,把‘(空格)’赋值给字符型变量c。因为%c只要求读入一个字符,后面不需要用空格作为两个字符的间隔,因此把‘(空格)’作为下一个字符送给c。只有当输入为“12f”时,才能把字符‘f’赋值给字符型变量c,如下图。格式输入函数简单的格式输入输出语句课前准备注意:格式输入函数简单的格式输入输出语句谢谢您的聆听!Thankyou!赋值运算和赋值语句
张竞丹深圳信息职业技术学院12赋值语句目录赋值运算目录121赋值运算赋值语句赋值运算赋值运算赋值运算符
赋值符号"="即为赋值运算符复合赋值运算符
在赋值符"="之前加上其它运算符,即构成复合赋值运算符,如+=,-=,*=,/=,%=等
a+=5等价于a=a+5x/=y+7
等价于
x=x/(y+7)
复合运算符的优点:
简化程序,使程序精炼
提高编译效率并产生质量较高的目标代码课前准备计算结果inta=6;a+=5;a=_______intx=6;x/=x+6;x=_______inty=6;y/=y+y;y=_______intz=6;z%=5;z=_______intn=6;n%=7;n=_______练习赋值运算a=a+5=6+5=11x=x/(x+6)=6/12=0y=y/(y+y)=6/12=0z=z%5=6%5=1n=n%7=6%7=6课前准备赋值表达式由赋值运算符将一个变量和一个表达式连接起来的式子一般形式为:变量赋值运算符表达式赋值运算符具有右结合性例1:a=b=5
等效于:b=5a=b例2:(a=3*5)=4*3
等效于:a=3*5a=4*3赋值运算课前准备如果赋值运算符两边的数据类型不相同,系统将自动把赋值号右边的类型换成左边的类型。实型赋予整型,舍去小数部分整型赋予实型,数值不变,但以实数形式存放将一个double型数据赋给float变量时,取其前7位有效数字,存放在float变量的存储单元字符型赋予整型,将字符的ASCII码值赋给整型变量将一个占字节多的整型数据赋予一个占字节少的整型变量或字符变量,只把低字节赋给该变量赋值过程中的类型转换赋值运算课前准备计算结果floata=6.5;intb=a;b=________inta=6;floatb=a;b=________charz='b';intx=z;x=________(注:'a'的ASCII码为97)练习赋值运算b=6b=6.0x=98目录122赋值语句赋值语句赋值运算课前准备赋值语句由赋值表达式加上分号构成赋值语句的功能和特点都与赋值表达式相同,它是程序中使用最多的语句之一赋值表达式可以包括在其它表达式中,但不可以包含赋值语句if((a=b)>0) t=a;if((a=b;)>0) t=a;赋值语句允许连续赋值例如:a=b=c=5;赋值语句课前准备在程序中常常需要对变量赋初值,以便使用变量。在定义时赋以初值的方法,这种方法称为初始化。在变量说明中赋初值的一般形式为:类型说明符变量1=值1,变量2=值2,......;例如:floatx=3.2,y=3f,z=0.75;charch1='K',ch2='P';注意在变量说明中给变量赋初值和赋值语句的区别在变量说明中,不允许连续给多个变量赋初值如下述说明是错误的:
inta=b=c=5;必须写为inta=5,b=5,c=5;变量赋初值赋值语句课前准备写出下列表达式运算后a的值,设原来a=12a+=aa-=2a*=2+3a/=a+aa%=(n%=2),n的值等于5a+=a-=a*=a练习赋值语句a=a+a=24a=a-2=10a=a*(2+3)=60a=a/(a+a)=0n=n%2=5%2=1a=a%n=12%1=0a-=a=>a=a-a=0课前准备总结与思考实际赋值问题中变量类型的转换
赋值运算符与数学中“=”相同吗?谢谢您的聆听!Thankyou!C语言的基本结构与语句
张竞丹深圳信息职业技术学院引言
C语言中有哪些“语法”(基本结构)和句型(语句类型)呢?与英语相比,C语言在“语法结构”和“句型”上数量少、结构相对简单。三种基本结构五种语句类型12
C语句的概述目录
C语言的基本结构目录121C语言的基本结构C语句的概述C语言的基本结构C语言的基本结构C语言有三种基本程序结构(语法)—顺序结构、选择结构和循环结构。顺序结构的程序流程是按语句的书写顺序依次执行;选择结构是对给定条件进行判断,根据判断结果决定执行两分支中的一个分支或多分支中的一个分支;循环结构是在给定条件成立的情况下,反复执行某个程序段。C语言的基本结构C语言有三种基本程序结构(语法)—顺序结构、选择结构和循环结构。顺序结构的程序流程是按语句的书写顺序依次执行S1S2C语言的基本结构C语言有三种基本程序结构(语法)—顺序结构、选择结构和循环结构。选择结构是对给定条件进行判断,根据判断结果决定执行两分支中的一个分支或多分支中的一个分支条件S1YN条件S1S2YNn2条件S1S2Sn…1
C语言的基本结构C语言有三种基本程序结构(语法)—顺序结构、选择结构和循环结构。循环结构是在给定条件成立的情况下,反复执行某个程序段No
Yes条件循环体NoYes条件循环体目录122C语句的概述C语句的概述C语言的基本结构课前准备C语句的概述C程序的执行部分是由语句组成的,程序的功能也是由执行语句实现的表达式语句函数调用语句控制语句复合语句空语句C程序语句课前准备C语句的概述只有分号";"组成的,什么也不执行的语句在程序中空语句可用来作空循环体空语句复合语句由“{”和“}”把一些变量说明和语句组合放在一起,即为复合语句,又称为语句块。在程序中复合语句在逻辑上是单条语句,而不是多条语句。课前准备C语句的概述在表达式后面加一个分号的语句即为表达式语句,其作用为计算表达式的
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年猫咪领养与宠物培训教育服务合同
- 个人旅游咨询服务2024年度合同3篇
- 二零二五年度江西省事业单位实习聘用合同书
- 2025年度驾驶员道路交通事故处理与责任界定合同
- 2025矿山承包合同-矿山安全生产责任及事故处理协议
- 2025年汽车销售合同范本(全新车型)
- 2025年度艺术画廊场地租赁合同标准范本4篇
- 事业单位专业技术人员聘用合同书(2024版)
- 2025版螺杆机智能化改造与系统集成合同3篇
- 2025年度体育设施租赁保证金合同协议书4篇
- 第二章 运营管理战略
- 《三本白皮书》全文内容及应知应会知识点
- 专题14 思想方法专题:线段与角计算中的思想方法压轴题四种模型全攻略(解析版)
- 新概念英语第二册考评试卷含答案(第49-56课)
- 商业伦理与企业社会责任(山东财经大学)智慧树知到期末考试答案章节答案2024年山东财经大学
- 【奥运会奖牌榜预测建模实证探析12000字(论文)】
- (完整版)译林版英语词汇表(四年级下)
- 产科常用药物(课堂PPT)
- (高清正版)T_CAGHP 066—2019危岩落石柔性防护网工程技术规范(试行)
- 支票票样-样版
- 标准活动板房设计说明(共7页)
评论
0/150
提交评论