《C语言》课件-3.ppt_第1页
《C语言》课件-3.ppt_第2页
《C语言》课件-3.ppt_第3页
《C语言》课件-3.ppt_第4页
《C语言》课件-3.ppt_第5页
已阅读5页,还剩30页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第三章c语言程序设计的三种基本结构。2。3。本章讲述了内容:字符输入/输出功能;格式输入/输出功能;c语言中的各种选择语句;4。C语言中的各种循环语句。在C语言中,系统功能放在带扩展名的磁盘文件中。”h”,它们被称为“头文件”或“头函数”。当在程序中使用系统函数时,有必要在程序的开头写一个include命令,即#include头文件名称,以指示函数所在的头文件。3.1序列结构程序设计,3.1.1赋值语句,复合语句,空语句,1。如果程序中的语句是按写的顺序执行的,那么这个程序的结构就是顺序的。一般来说,序列结构的程序段总是先输入数据,然后用赋值语句处理这些数据,最后打印出结果。的输入/输出功能。

2、C语言是通过调用系统提供的输入输出函数来实现的。直接调用它们,后跟语句终止符“;”形成了所谓的输入输出“函数调用语句”。本节描述输入/输出函数:getchar()、putchar()、printf()、scanf()。赋值语句,在赋值表达式后,添加一个语句终止符“;”,它形成一个赋值语句。赋值语句的一般格式是:=;或=;该函数计算=右侧表达式的值,然后将其赋给左侧的变量;Or=是算术或位自反赋值运算符。它的功能是对左变量和右表达式执行指定的操作,并将获得的值赋给左变量。语法上,复合语句相当于一条语句,一般格式是:语句;声明;“x=4;y=16是两个赋值语句,第一个使变量x得到值4,第二个使变量

3、y得到值16。尝试分析以下程序的运行结果。#包括stdio.h main() int x,y;x=4;y=16x=1;printf (y=%dt,y);y=1;printf (y=%dn,y);(1)、(2), x=1;是位自反赋值运算符,前者将x中的值向左移动一位,后者将y中的值向右移动一位。每次移动时,打印出结果并重复两次。(3)对于整数,每左移一次等于将原始值乘以2;每一次右移都等于原始值除以2。0,0,0,1,0,0,0,0,0,0,在第一个x=1之后,0,0,0,1,0,0,0,0,在第二个x=1之后。这种整体被称为“复合语句”。注意:变量描述可以出现在复合语句中;复合语句中最后一条

4、语句的语句结束符(分号)不能省略,否则会导致语法错误;此外,在右花括号后面不能有语句结束符(分号),它标志着复合语句的结束。3。空语句、在C语言中,只有一个分号的语句称为“空语句”,即:当编译器遇到空语句时,它不会为生成任何指令代码。也就是说,空语句不执行任何操作,它只是C语言语法中的一个概念。3.1.2字符输入/输出功能,字符输入函数getchar()和字符输出函数putchar()都在头文件“stdio.h”中。当在程序中使用时,您必须在开头写一个包含命令:# includesdio.h,字符输入函数:getchar(),1。功能函数:使程序等待用户从键盘输入。按键盘上的输入换行键结束输入

5、,然后返回输入的第一个字符。该函数没有参数。在程序中使用这个函数的一般形式是:=getchar();即getchar()返回的第一个字符存储在赋值语句的左侧。写一个程序,接收键盘输入的字符并打印出来。(1),程序实现,# includestio。h main()charch;ch=getchar();printf (ch=%cn,ch);(2)、分析和讨论,在程序中,通过调用字符输入函数getchar(),由键盘输入的字符序列中的第一个字符被存储在ch中。注意:getchar()函数应以回车键作为输入结束。该函数只返回输入的第一个字符。在按回车键之前输入的其他字符(包括回车键)可以被另一个ge

6、tchar()函数接收。字符输出函数:putchar(),2。调用形式:putchar (c),其中c是该函数的参数,它通常是一个指定的字符变量或字符常量。的功能。功能是在显示器上显示(即输出)字符变量c中的内容或字符常量。在程序中使用该函数的一般形式是:例如,可以使用前面示例中的语句printf(“ch=% cn”,ch);重写为:put char(ch);put char();或put char();3.1.3格式输入/输出功能,格式输入函数scanf()和格式输出函数printf()都在头文件stdio.h中。使用它们时,在程序开始时,应该编写include命令:# include st

7、dio.h 。但是,因为这两个函数在C语言编程中使用得太频繁了,即使这个包含命令没有写在程序中,编译也不会出错。格式输入功能:scanf(),1。格式输入函数的调用形式为:scanf的功能是根据中给出的格式描述和数据之间的分隔符从键盘输入数据,然后将其存储在指定的变量地址中。scanf (%d,% f ,格式描述,格式控制字符串,数据分隔符,输入地址列表,scanf(,),参数是一个用双引号括起来的字符串常量,它列出了输入数据的格式描述和分隔符;参数列出了存储输入数据的变量的地址。a和b是字符变量。执行“scanf (a=%c,b=%c)”后,在键盘上正确输入a和b是什么?在scanf()的格

8、式控制字符串中,排列可以分隔数据的常规字符。当用户输入时,他们必须按计划键入这些分隔符。scanf()函数中最常用的格式字符、格式字符、说明、应用示例、输入示例、d、十进制整数、scanf(“% d”)、输入212、变量x为212、f、十进制实数、scanf(“% f”),输入6.28,变量ch为A(ASCII码值)、字符串,输入北京,数组t为字符串“北京”、s、scanf(“% s”、t);八进制整数,输入324,x是八进制数324,o,scanf (%o ,十六进制整数,输入D4,x是十六进制数D4,x,scanf (%x ,因此,在键盘上正确的输入应该是:a=A,b=B /*这里,“”用

9、于回车*/在用户在键盘上输入这样的输入之后,字母A的ASCII码值存储在变量A中,字母B的ASCII码值存储在变量B中.从键盘输入所有数据后,回车(即键盘上的回车键)必须作为整个数据输入的结束。在scanf()的格式控制字符串中,没有安排数据分隔符,那么默认的空格字符、制表符或回车换行符就是数据输入后的分隔符。例如,scanf (%d%d%d)中的格式控制字符串中没有普通字符。此时,在输入一个数据后,您可以键入一个空格(或制表符,或回车键),然后输入下一个数据,直到最后一个输入回车指示整个输入的结束。(2)、(3)在格式符号前加上一个额外的格式符号,以指示输入数据的字段宽度(正整数)。例如:s

10、canf (=-M,这里,3 in=是一个附加的格式符号,这意味着由d限定的十进制数是3位数。因此,如果您在键盘上连续输入245321258并按回车键,scanf将在变量a中存储245,在变量b中存储32,在变量C中存储1258.正确使用scanf()函数时必须注意的几点。(1)、(2)必须是可变地址,但不能是其他地址。因此,不要忘记添加地址运算符、原样输出字符、格式描述、格式控制字符串、输出变量列表、并执行该语句,然后输出Two roots: x1=、t x2=、n原样(注意t和n是另一方面,该语句根据格式控制字符串中给出的两个格式规范%f,将输出变量表中列出的变量re1和re2转换为指定的

11、数据格式(实数),然后在指定位置输出它们。printf(,);printf()函数中最常用的格式字符、格式字符、描述、应用示例、输入示例、d、十进制int类型、printf(“x=% dn”,x);X=212,f,十进制双精度,printf(“总和=% fn”,总和);sum=0.628000,c,单字符,printf(“它是% cn”,c);它是W、字符串、* * *北京* * *、s、printf(“* * * * % s * * * n”,s);八进制整数,oct=324,o,printf(“oct=% on”,x);hex=D4,x,printf(“hex=% xn”,x);无符号十进

12、制数,addr=65498,u,printf(“addr=% un”),在printf()的格式字符之前,可以添加额外的格式字符以获得更多的格式输出信息。附加格式字符,描述,应用程序示例,输入示例,m(正整数),指定的输出字段宽度,printf(“x=n”,x);X=212,n(正整数),指定的小数位数,printf(“sum=% 5.2fn”,sum);sum=44.86,-左对齐输出数据,printf (%-3dn ,a);数据左对齐、#包含stdio。h main () int x=18,y=222,z=34printf (M M Mn,x,y,z);printf (M M Mn,x,y

13、,z);试着在右边给出程序的输出格式。解决方案:右对齐格式:左对齐格式:1,8,2,2,3,4,1,8,2,2格式控制字符串中的格式描述数应与输出变量表中列出的变量数和类型一致。使用函数printf(),(1)时必须注意的问题,格式控制字符串必须用双引号引起来。(2)、(3)对于输出变量表中列出的变量(表达式),计算顺序是从右到左。因此,请注意右侧的参数值是否会影响左侧的参数值。尝试分析以下程序的输出。#包括stdio . h main()int x=4;printf (%dt %dt %dn,x,x,-x);因此,在输出printf()之前,应该先计算-x,然后是中间的x,最后是左边的x。因

14、此,程序执行后的输出是:543,而不是:565。请特别注意函数printf(),它从右到左计算输出变量表中列出的变量(表达式)。(2)、(3)、printf (%dt %dt %dn,x,x,-x);、对应、第一次计算、第二次计算、第三次计算、3.2.1 if单分支选择语句、3.2选择结构编程、c语言程序中,实现选择结构的手段,一是使用if语句。if语句有三种形式:if单分支选择、ifelse双分支选择和ifelse if多分支选择。if单分支选择语句的一般格式是:如果条件成立时要做的事情需要用几个语句来表达,那么格式中的语句应该用花括号以复合语句的形式出现。的执行流程图。如果单个分支选择语句

15、,条件,语句,true,false,(后续语句),如果();当在执行中遇到if时,如果括号中的值不是0(即条件成立),则执行;否则(即值为0,条件不成立),将执行单个分支选择语句的以下语句,而不是if中的语句。例如,运行程序两次,第一次输入242,第二次输入108,结果如图所示。写一个程序从键盘输入一个整数,然后输出它的绝对值。(1),程序实现,# includestio。h main()int num;输入你的整数;扫描(%d),(2),分析和讨论,在程序中,当条件num0成立时,执行一个分支语句:num=num。这样,变量num总是保持一个正数,也就是说,它存储输入数据的绝对值。print语句:printf(绝对值为% dn,num);是单个分支语句的后续语句,与“num=num”无关不管做还是不做,这个打印语句都将被执行。在具体的编程中,printf()经常被用来给出提示信息。例如,程序在开始给出一个语句:printf(输入你的整数:n);也

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论