山西财经大学华商学院《C语言程序设计》课件第3章顺序程序设计的课件_第1页
山西财经大学华商学院《C语言程序设计》课件第3章顺序程序设计的课件_第2页
山西财经大学华商学院《C语言程序设计》课件第3章顺序程序设计的课件_第3页
山西财经大学华商学院《C语言程序设计》课件第3章顺序程序设计的课件_第4页
山西财经大学华商学院《C语言程序设计》课件第3章顺序程序设计的课件_第5页
已阅读5页,还剩35页未读 继续免费阅读

下载本文档

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

文档简介

1、C语言程序设计山西财经大学华商学院计算机教学中心第3章 顺序程序设计3.1 C语言的基本语句3.2 数据输入与输出3.3 程序举例2 顺序结构是程序设计语言最基本的结构,其包含的语句是按照书写的顺序执行的,且每条语句都将被执行。 C语言的语句可分为以下四类:简单语句(包括输入/输出语句)、空语句、复合语句和流程控制语句。 32022/8/143.1 C语言的基本语句 42022/8/14顺序结构程序由简单语句组成,程序流程如图3.1 所示,语句按书写顺序执行。先执行A,再执行B。52022/8/14BA图3.1 顺序结构执行流程3.1.1 简单语句表达式语句就是一个表达式加上一个分号。6202

2、2/8/14A+; x=1; 函数调用语句由函数调用表达式加分号构成 printf(“%d”,a);3空语句空语句用一个分号表示,其一般形式为: ;72022/8/14C 语言有丰富的标准函数库, 可提供各类函数供用户调用调用标准库函数可完成预先设定好的操作. 例如调用标准库函数求数学函数值: sin(x) 、cos(x) 、 exp(x) (求ex ) 、fabs(x) (求x的绝对值)、log(x). 表达式语句举例#include#includemain() int a = 2 , b = 4; float x , y; x = a / 2 + sqrt( b ); /*x=3.0 */

3、 a+ ; /*a=3 */ y = x * a ; /*y=9.0 */ printf(“x=%6.2f, y= %6.2f ”, x, y);82022/8/14 程序说明注意表达式类型转换注意赋值类型输出结果: x= 3.00, y= 9.0092022/8/14调用调用标准库函数要注意以下几点在程序中要包含相应的头文件102022/8/14例如:#include #include调用调用标准库函数要注意以下几点112022/8/14调用规则: 函数名(参数表)有返回值的函数要作为表达式的一部分Y=sin(1.7);在表达式中调用函数,实际上是转去执行一段预先设计好的程序,求出结果后返回

4、调用点。所以函数的值又叫函数的返回值。函数调用举例Y = sin ( 1.12);Y1 = sin ( x );Y2 = 3*sin (x+1.12 ) + sqr(x);Y3 = sin ( sqrt(x+1.12) );122022/8/143.1.2 复合语句132022/8/14 内部数据说明; 语句1; 语句n; 注意:(1)在复合语句中说明的变量,是局部变量, 仅在 复合语句中有效。(2)复合语句的 之后,不能有分号。 用一对花括号将多条语句组合在一起,在语法上相当于一条语句。142022/8/14无返回值的函数可作为语句调用。printf(“%d”,a);调用它不是为了得到返回值

5、(函数值),是为了完成某项任务。复合语句(程序块) 示例main( ) int x=1; int x=2; int x=3; printf(“x=%d”, x); printf(“x=%d”, x); printf(“x=%d”, x);152022/8/143.2 数据输入与输出 C语言本身不提供输入输出语句,得由标准I/O库函数提供。输入输出库函数很丰富,可以从键盘、显示器、磁盘文件和硬件端口进行输入或输出操作。本节主要介绍用于键盘输入和显示器输出的函数。162022/8/14 3.2.1 字符输入输出函数1. 字符输出函数172022/8/14stdio.hint putchar(int

6、)向标准输出设备(一般为显示器)输出一个字符,并返回返回概字母的ASCII码值。参数可以是字符常量,变量或整型数。putchar(97);putchar(n);putchar(a);2.字符输入函数182022/8/14int getchar(void)stdio.h从输入设备(一般为键盘)上输入一个字符。它每被调用一次,就从标准输入设备上取一个自符,返回值是该字符的ASCII编码值。可以赋给字符变量或整型变量。执行getchar()是输入字符后要回车。 3.2.2 格式输出函数192022/8/141.格式输出函数原型:int printf(char * format ,argument,)

7、stdio.h前面两条语句非常方便,但一次只能处理一个字符,按规定格式向输出设备(一般为显示器)输出数据,并返回输出的字符数。这个函数可以输出多字信息。2.格式输出函数的一般形式202022/8/14printf(“格式控制字符串”,输出参数表);可以是一个或多个输出项. 可以是常量或变量表达式,用逗号分隔。类型可以是整型实型字符型和字符串型.用双引号括起来,控制输出项的格式和输出一些提示信息 3.格式输出函数例程212022/8/14int i = 97;char ch = a;printf (“i =%d ,%cn”, i, i );两个输出项都是变量i , 但以不同的格式输出,一个是输出

8、的整型数,一个输出的是字符a. 其格式是由,%d与%c控制的.输出结果:i =97,aprintf (“i =%d ,%cn”, i, i );222022/8/14int i = 97;char ch = a;printf (“i =%d ,%cn”, i, i );输出结果:i =97,a两个输出项都是变量i , 但以不同的格式输出,一个是输出的整型数,一个输出的是字符a. 其格式是由,%d与%c控制的.int printf(char * format ,argument,)int i = 97;char ch = a;printf (“i =%d ,%cn”, i, i );输出结果:i

9、 =97,a普通字符,按原样输出双引号括起来的普通字符,在屏幕上原样输出。转义字符指明特定的操作,如n表示换行而格式说明部分由%和格式字符串组成,下面详细讨论。%flagswidth.precF|N|h|Ltype232022/8/14Flags为选择的标志字符。常用的有:- : 为左对齐,否则右对齐+:正数输出+,负数输出-空格:正数输出空格,负数输出-flags%flagswidth.precF|N|h|Ltype242022/8/14Flags为选择的标志字符。常用的有:- : 为左对齐,否则右对齐+:正数输出+,负数输出-空格:正数输出空格,负数输出-Width为宽度指示符。用十进制数

10、来设置输出值的最少输出个数,少则补空格,多则按实际输出。width%flagswidth.precF|N|h|Ltype252022/8/14Flags为选择的标志字符。常用的有:- : 为左对齐,否则右对齐+:正数输出+,负数输出-空格:正数输出空格,负数输出-Width为宽度指示符。用十进制数来设置输出值的最少输出个数,少则补空格,多则按实际输出。.prec.prec为精度指示符。用小数点加十进制正整数构成,用来限制输出数的精度。%flagswidth.precF|N|h|Ltype262022/8/14Flags为选择的标志字符。常用的有:- : 为左对齐,否则右对齐+:正数输出+,负数

11、输出-空格:正数输出空格,负数输出-Width为宽度指示符。用十进制数来设置输出值的最少输出个数,少则补空格,多则按实际输出。F|N|h|L.prec为精度指示符。用小数点加十进制正整数构成,用来限制输出数的精度。F|N|h|L为长度修饰符,F远程指针地址 N近程指针地址h短整数据的值 L长整(双精度)数据的值%flagswidth.precF|N|h|Ltype272022/8/14Flags为选择的标志字符。常用的有:- : 为左对齐,否则右对齐+:正数输出+,负数输出-空格:正数输出空格,负数输出-Width为宽度指示符。用十进制数来设置输出值的最少输出个数,少则补空格,多则按实际输出。

12、F|N|h|L.prec为精度指示符。用小数点加十进制正整数构成,用来限制输出数的精度。F|N|h|L为长度修饰符,F远程指针地址 N近程指针地址h短整数据的值 L长整(双精度)数据的值%flagswidth.precF|N|h|Ltype282022/8/14typetype为格式字符。用来进行格式转换d以带符号的十进制形式输出整数(正数不输出符号) o以8进制无符号形式输出整数(不输出前导符O) x(X)以16进制无符号形式输出整数(不输出前导符Ox) u以无符号10进制形式输出整数 c以字符形式输出一个字符s输出字符串 f以小数形式输出单、双精度数,隐含输出6位小数 e(E)以标准指数形

13、式输出单、双精度数,小数位数为6位 g(G)选用%f或%e格式中输出宽度较短的一种格式 %百分号3.2.3 格式输入函数292022/8/141.格式输入函数原型int scanf(char * format ,argument,)stdio.h这个函数可以从键盘输入任何类型的数据给所制定的单元,并返回输入的数据个数。2.格式输入函数一般形式302022/8/14scanf(“格式控制字符串”,地址列表);例如:scanf(“%d %d, %f ”,&a,&b,&c);控制字符串说明了需输入数据的类型,两个整型数和一个实型数。&a,&b和&c是变量a,b和c的地址。312022/8/14% *

14、 widthF|Nh|Ltype * 输入赋值抑制字符,输入数据但不赋值% * widthF|Nh|Ltypewidth输入赋值抑制字符,输入数据但不赋值宽度指示符,表示最多可输入的字符个数。322022/8/14% * widthF|Nh|LtypeF|N输入赋值抑制字符,输入数据但不赋值宽度指示符,表示最多可输入的字符个数。地址大小修饰符。Ffar Nnear332022/8/14% * widthF|Nh|Ltypeh|L输入赋值抑制字符,输入数据但不赋值宽度指示符,表示最多可输入的字符个数。地址大小修饰符。Ffar Nnear输入数据类型。h短整型,l长整或双精度342022/8/14

15、% * widthF|Nh|Ltypeh|L输入赋值抑制字符,输入数据但不赋值宽度指示符,表示最多可输入的字符个数。地址大小修饰符。Ffar Nnear输入数据类型。h短整型,l长整或双精度352022/8/14% * widthF|Nh|Ltypetypetype是必须的,表示输入后转换的数据类型。d(D)十进制整数o(O)八进制整数x(X)十六进制整数i(I)自动根据数头分辨十、八、十六进制u(U)无符号十进制整数c单个字符s字符串f(e,g,G)实数n不输入数据,将已读入的字符输送到对应的地址中%百分号3.使用scanf应注意:scanf()的格式控制字符串中的字符不是用于输出的,都是要

16、求输入的。 scanf(”x=%d”,&x);参数的第二部分一定是地址列表,不能是表达式,请记得在变两前加上&。执行scanf( )输入数据时,在两个数据之间允许以一个或多个空格间隔,也可以用回车键、tab键分隔。实数不许规定精度,像%10.4f是不合法的。%后面有*号时,该数据会被禁止使用。如果输入时类型不匹配则停止处理,返回0。362022/8/143.3 程序举例 例3.1 输入圆的半径,输出圆的周长和面积。分析: 1.定义实型变量r、l、s用于存放半径、周长、面积;2.调用输入函数,输入r:3.分别利用周长公式和面积公式求出l、s;4.调用输出函数输出l、s。372022/8/14程序:#include void main()float r,l,s; scanf(“ %f ”,&r); /*输入一个浮点数据,存入地址&r */ l = 2 * 3.14159 * r; /*计算周长,赋值给l */s = 3.14159 *r * r; /*计算面积,赋值给s */printf(“n l=%8.4f”,l); /*周长占8个字符宽,4位小数*/printf(“n s=%8.4f”,s); /*输出面积,数据共占8个字符宽,4位小数*/382022/8/14例3.2 从键盘输入一个小写字

温馨提示

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

评论

0/150

提交评论