经典C语言第四章 C程序设计初步讲解

上传人:我** 文档编号:115018404 上传时间:2019-11-12 格式:PPT 页数:95 大小:390.50KB
返回 下载 相关 举报
经典C语言第四章 C程序设计初步讲解_第1页
第1页 / 共95页
经典C语言第四章 C程序设计初步讲解_第2页
第2页 / 共95页
经典C语言第四章 C程序设计初步讲解_第3页
第3页 / 共95页
经典C语言第四章 C程序设计初步讲解_第4页
第4页 / 共95页
经典C语言第四章 C程序设计初步讲解_第5页
第5页 / 共95页
点击查看更多>>
资源描述

《经典C语言第四章 C程序设计初步讲解》由会员分享,可在线阅读,更多相关《经典C语言第四章 C程序设计初步讲解(95页珍藏版)》请在金锄头文库上搜索。

1、教学目标: 通过本章的学习,要求学生在掌握结构化程序设计思 想基础上,能够运用程序的三种基本结构(顺序结构、分 支结构、循环结构)设计出简单的C程序。 教学重点: 基本输入输出语句; 结构化程序设计思想; 两种分支语句的格式与使用; 三种循环语句的格式与使用; 文件包含与宏定义。,教学难点: 格式化输入输出语句; Switchcase语句的格式与使用; dowhile循环与 while循环的区别; break语句与continue语句的区别; 带参数宏的定义方法与宏替换规则。 教学方法: 理论教学与实践教学相结合。,第4章 C程序设计初步,4.1 C语句概述 4.2基本输入输出函数 4.3结构

2、化程序设计思想 4.4 分支结构的程序设计 4.5 循环结构的程序设计 4.6 编译预处理 4.7 程序设计举例,4.1 C 语 句 概 述,C语言是函数式语言,每一个函数是由数据说明部分和执行语句部分组成。C语言中的所有语句均是执行语句,没有非执行语句。根据C语言的句法, 语句可分为单个语句,复合语句和空语句。根据结构化程序设计的三个模块大致可分为: 用于顺序结构中的表达式语句、赋值语句、函数调用语句等; 用于分支结构中的if语句、switch语句、转移语句、标号语句等;用于循环结构中的while语句、for语句、do-while语句。 另外在后两种结构中还可出现break语句、contin

3、ue语句、复合语句和空语句等作为其中的一部分。,(1) 逻辑上每个语句最后都必须有一个分号(;), 一个语句可分写成几行, 几个语句也可合写成一行(但不提倡, 因其不利于单步调试)。 (2) 空语句直接由分号(;)组成,常用于控制语句中必须出现语句之处,它不做任何操作,只在逻辑上起到有一个语句的作用。 (3) 复合语句由花括号 括起的若干个语句, 语法上可以看成是一个语句。复合语句中最后一个语句的分号不能省略。 如下面是一个复合语句: z=x+y; y=x/z; x=z-y; ,(4) 表达式语句是在各种表达式后加一个分号(;)形成一个语句。如赋值语句由赋值表达式加一个分号构成: x=x+y;

4、 再如表达式x+后加一个分号构成表达式语句: x+; 表达式和表达式语句的区别是表达式后无分号, 可以出现在其它语句中允许出现表达式的地方;而表达式语句后有分号, 自己独立成一个语句,不能再出现在其它语句的表达式中。 如: if(a=b)0) min=a;,(5) 控制语句有条件判断语句(if、 switch), 循环语句(for、 while、 do-while),转移语句(goto、 continue、 break、 return)。,4.2基本输入输出函数,4.2.1字符输出函数putchar() 一般调用格式:putchar(参数) 其中,参数可以是任意类型表达式,一般为算术表达式。

5、功能:向显示器输出一个字符。 返回值:如果输出成功,返回值就是输出的字符,否则返回EOF(-1)。 如:putchar(a) /*输出字符a*/ putchar(65) /*输出ASCII码为65的字符A*/ putchar(a+2) /*输出字符c*/ putchar(n) /*输出一个换行符*/,说明: 1putchar()函数一次只能输出一个字符,即该函数有且只有一个参数。 2putchar()函数可以输出转义字符。 3在使用函数putchar()前,一定要使用文件包含: #include “stdio.h“ 或 #include 【例4.1】 #include “stdio.h“ ma

6、in() char a,b,c; a=o;b=u;c=t; putchar(a); putchar(b); putchar(c); putchar(n); putchar(65);putchar(t); putchar(B);putchar(a-10); ,运行结果: out ABe (代表空格),4.2.2字符输入函数getchar() 一般调用格式:getchar() 功能:从键盘读入一个字符。 返回值:如果读入成功,返回值就是读入的字符,否则返回EOF(-1)。 说明: 1getchar()函数一次只能接收一个字符,即使从键盘输入多个字符,也只接收第一个。空格和转义字符都作为有效字符接收

7、。 2接收的字符可以赋给字符型变量或整型变量,也可以不赋给任何变量,作为表达式的一部分。,3getchar()函数是无参函数。 4从键盘上输入的字符不能带单引号,输入以回车结束。 5在使用函数getchar()前,一定要使用文件包含: #include “stdio.h“ 或 #include 【例4.2】 #include “stdio.h“ main() char ch1,ch2,ch3; ch1=getchar(); ch2=getchar() ch3=getchar(); putchar(ch1); putchar(ch2); putchar(ch3); ,在运行时,若从键盘上输入:

8、CG 则第一个getchar()接收的是C, 第二个getchar()接收的是回车, 第三个getchar()接收的是G。 输出结果为: C (输出ch1的值) G (输出ch3的值),4.2.3格式输出函数printf() 一般调用格式:printf(“格式控制字符串“,输出表列) 功能:按指定格式向显示器输出数据。 返回值:输出成功,返回输出字节数;否则返回EOF(-1)。 输出表列:是要输出的数据,可以没有,有两个或两个以上时,用逗号(,)分隔。输出表列中的输出项可以是常量,可以是变量,也可以是表达式。 格式控制字符串:由普通字符和格式说明两部分组成。普通字符,即需要原样输出的字符,包括

9、转义字符;格式说明是以%开始,以一个格式字符结束,中间可以插入附加格式说明符,它的作用是将输出的数据转换为指定的格式输出,其一般形式为: %附加格式说明符格式字符,printf()函数的格式字符和常用的附加格式说明符分别见表4-1和表4-2。 表4-1 printf()函数格式字符,按%f格式输出实型数据时, 整数部分全部输出, 小数部分保留六位。 在Turbo C中,按%e格式输出实型数据时,输出占十一位,其中整数部分占一位, 小数部分占五位,指数部分占四位,小数点占一位。 如: printf(“%f“,123.4);的输出结果为:123.400000 printf(“%e“,123.4);

10、的输出结果为:1.23400e+02,表4-2 printf()函数常用的附加格式说明符,【例4.3】 main() char ch =A; int a=1234; float b=123.4562222; printf(“ch=%cn“,ch);/* 输出:ch=A*/ printf(“ch=%3cn“,ch);/* 输出:ch=A */ printf(“a=%6dn“,a);/* 输出:a=1234*/ printf(“a=%2dn“,a);/* 输出:a=1234*/ printf(“a=%#on“,a);/* 输出:a=02322*/ printf(“a=%#xn“,a);/* 输出:

11、a=0x4d2*/ printf(“b=%fn“,b);/* 输出:b=123.456223*/ printf(“b=%8.2lfn“,b);/* 输出:b=123.46*/ printf(“b=%-8.2fn“,b);/* 输出:b=123.46*/,printf(“b=%.2fn“,b);/* 输出:b=123.46*/ printf(“b=%en“,b);/* 输出:b=1.23456e+02*/ printf(“b=%8.2en“,b);/* 输出:b=1.2e+02*/ printf(“b=%-8.2len“,b);/* 输出:b=1.2e+02 */ printf(“b=%.2en

12、“,b);/* 输出:b=1.2e+02*/ printf(“str=%sn“,“china“);/*输出:china*/ printf(“str=%8.3sn“,“china“);/*输出:chi*/ printf(“str=%-6.3sn“,“china“);/*输出:chi*/ printf(“str=%.6sn“,“china“);/*输出:china*/ ,说明 1.格式说明与输出项从左向右一一对应,两者的个数可以不相同,若输出项个数多于格式说明个数,输出项右边多出的部分不被输出,若格式说明个数多于输出项个数,格式控制字符串中右边多出的格式说明部分将输出与其类型对应的随机值。如: p

13、rintf(“%d %d “,1,2,3); /*输出结果为1 2*/ printf(“%d %d %d“,1,2); /*输出结果为1 2 随机值*/ 2.在格式控制字符串中,两个连续的%只输出一个%。如: printf(“%f%“,1.0/6); /* 输出结果为0.166666% */ 3格式说明与输出的数据类型要匹配,否则得到的输出结果可能不是原值 。,【例4.4】 main() int a=-1,b=10; float c=3.14; printf(“a=%dn“,a); /*输出:a=-1*/ printf(“a=%un“,a); /*输出:a=65535*/ printf(“a=

14、%on“,a); /*输出:a=-177777*/ printf(“a=%xn“,a); /*输出:a=ffff*/ printf(“b=%d c=%.2fn“,b,c);/* 输出:b=10 c=3.14*/ printf(“b=%.2f c=%dn“,b,c);/* 输出:b=0.00 c=16393*/ ,4.2.4格式输入函数scanf() 一般调用格式: scanf(“格式控制字符串“,地址表列) 功能:按指定的格式从键盘读入数据,并存入地址表列指定的内存单元中。 返回值:返回输入数据个数。 地址表列:是由若干个地址组成的表列,可以是变量的地址或字符串的地址,C 语言中变量的地址通过

15、取地址运算符“&”得到,表示形式为:&变量名,如变量a的地址为&a。 格式控制字符串:同printf()函数类似,是由普通字符和格式说明组成。普通字符,即需原样输入的字符,包括转义字符。格式说明同printf()函数相似。scanf()函数格式字符和常用的附加格式说明符见表4-3和表4-4。,表4-3 scanf()函数格式字符,表4-4 scanf()函数常用附加格式说明符,【例4.5】 #include “stdio.h“ main() char ch1,ch2,ch3; int a,b; unsigned c; double x,y;,scanf(“%c%c%c“, /* 输出:a=12

16、34 ch1=w x=12.00*/ ,说明: 1格式控制字符串中的普通字符必须原样输入。如例中的 scanf(“a=%,b=%“,/*输入:A*/,字符A送给变量ch1,空格送给变量ch2,回车送给变量ch3。 4数据输入以回车结束,回车将存储在键盘缓冲区中,下次用scanf()之前,必须将其取出,否则将得不到正确的输入。如例2.17中使用的getchar();就是完成此功能。 5输入数据时不能指定精度。如例中的 scanf(“%lf,%lf“,/*输入:1234w12h.234*/ 变量a的值为1234,变量ch1的值为w,变量x的值为12.00。 遇空格数据输入结束,用scanf()函数不能输入含有空格的字符串。,4.3 结构化程序设计

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号