C语言程序设计教案 第四章 顺序程序设计由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“c语言程序设计教案”。
第四章 顺序程序设计
课题: 第四章 顺序程序设计
教学目的:
1、掌握赋值语句、输入输出语句
2、学会简单的顺序程序设计
教学重点: 输入、输出语句 教学难点: 格式输入输出语句
步骤一 复习引导
上一章介绍的常量、变量、运算符、表达式等都是构成程序的基本成分。本章将介绍为编写简单程序所必需的一些内容。
步骤二 讲授新课
一、C语句概述
1、控制语句
二个分支语句(if-else、switch) 三个循环语句(for、while、do-while) 四个转移语句(continue、break、goto、return)
2、函数调用语句
如:printf(“Hello, world!”);
3、表达式语句
x+y;
i++;a=2;a=3*5, 40;
4、空语句(;)
5、复合语句
{ 语句序列
}
一、赋值语句
赋值语句是由赋值表达式加上一个分号构成,如:b=3;
if((a=b)>0)t=a;
三、数据输入输出的概念及在C语言中的实现
1、输入、输出
2、输入输出操作是由函数来实现的 C语言函数库中有“标准输入输出函数” 字符的输入与输出:getchar()、putchar() 字符串的输入与输出: gets()、puts() 格式输入与输出: scanf()、printf()
3、在使用C语言库函数时,要用预编译命令“#include”将有关的“头文件”包括到用户源文件中。
例如:使用标准输入输出库函数时,要用到“stdio.h”文件,在源文件开头应有: #include 或 #include “stdio.h”
(一)字符数据的输入输出
1、字符输出函数——putchar 语法:putchar(c)语义:(向stdout终端)输出一个字符;
如:#include main(){ putchar(„141‟);
putchar(„a‟);
putchar(„A‟+32);
putchar(„n‟);}
输出:aaa2、字符输入函数——getchar
语法:getchar(),是一个无参函数; 语义:(从stdin终端上)输入一个字符;
getchar 包含在 stdio.h中,是stdio.h中定义的宏; 如:#include main(){
putchar(getchar());}
如:#include main(){ int c;
while((c=getchar())!=„#‟)
if(c>=„a‟&&c
else putchar(c);
}从键盘上输入一串字符遇‘#’结束,若字符在a~z之间时,则输出字符的大写;否则直接输出字符。
(二)格式输入与输出
1、格式输出函数——printf 语法:printf(“格式控制”, 输出表列); 格式控制:是用双引号括起来的字符串,包含两种信息: 普通字符和转义字符(这类字符总是原样输出)格式说明:由%和格式控制符组成。如:%d, %f等;(P77)
如:printf(“a=%d, b=%d”,a,b);
若a、b的值分别为2和3,则输出结果为: a=2, b=3 例1:
#include main(){ int a=4096;
long int b=123456;
printf(“%5dn%3dn%ldn%9ldn”,a,a,b,b);
} 例2:
#include main(){ int a=-8;
printf(“dec a=%dn oct a=%on hex a=%xn”,a,a,a);} 例3:
#include main(){ int a= 101;unsigned int b=65;char c=„a‟;
printf(“a=%d,%c,%un”,a,a,a);
printf(“b=%d,%c,%un”,b,b,b);
printf(“c=%d,%c,%un”,c,c,c);
printf(“c=%3d,%3c,%3un”,c,c,c);}
2、格式输入函数
scanf 语法:scanf(“格式控制”,地址表列); 格式控制:包含三类符号
空白字符:(空格、Tab或t、n),输入时不必一一对应;
普通字符:(非格式转换说明符、非空白符、非%),输入时必须一一对应; 格式转换说明符:
(由%后接一个任选的压缩指示符“*”,表示本输入项在读入后不赋给相应的变量)
例1:#include main(){ int a;float b;char str[50];
scanf(“%d%f%s”,&a,&b,str);
…… } 例2:#include main(){int a;float b;char str[50];scanf(“%2d %f %*d %2s”,&a,&b,str);
…… }
注意:scanf函数规定,组成输入项表的输入对象须是地址量;如:
scanf(“%d,%d,%d”,&a,&b,&c);
scanf(“a=%d,b=%d,c=%d”,&a,&b,&c);①第一个输入语句,正确的输入数据流为:123,456,789,处理的结果为: 123→a,456→b,789→c ②同理对第二个输入语句,正确的输入数据流应是:a=123,b=456,c=789 该输入数据流中除123,456,789被赋给相应变量外,其余都被丢弃
例3:#include main(){ char c1,c2,c3;
scanf(“%c%c%c”,&c1,&c2,&c3);
scanf(“%3c%3c%3c”,&c1,&c2,&c3);
…… }
①对第一个输入语句, 若输入数据流为abc, 则a→c1 b→c2 c→c3;但如果输入的数据流为:a b c 则a→c1 •→c2 b→c3
②对第二个输入语句:要求输入3个字段9个字符,但三个变量中只能各存放一个字符,其余的2个字符将被丢掉。如当输入数据流为:abcdefghi时,结果为a→c1 d→c2 g →c3
四、顺序结构程序设计举例
例1:输入三角形的三边长,求三角形面积。
分析:三边为a,b,c,面积area2=s(s-a)(s-b)(s-c),其中s=(a+b+c)/2 程序:
#include
main(){ float a,b,c,s,area;
sacnf(%f,%f,%f”,&a,&b,&c);
s=1.0/2*(a+b+c);
area=sqrt(s*(s-a)*(s-b)*(s-c));printf(“a=%7.2f,b=%7.2f,c=%7.2f,s=%7.2fn”,a,b,c,s);
printf(“area=%7.2fn”,area);
}
例2:从键盘输入一个大写字母,要求改用小写字母输出。
}
步骤三 课堂小结
1、字符输入输出函数:getcharputchar2、格式输入输出函数:scanfprintf,特别注意scanf函数的地址项是否要加&
3、注意简单程序的结构,头文件、变量定义、输入语句及输出语句
步骤四 布置作业
1、上机练习:(课本第四章课后练习)4.4、4.62、书面作业:(课本第四章课后练习)4.8、4.10 #include main(){char c1,c2;
c1=getchar();
printf(“%c,%dn”,c1,c1);
c2=c1+32;
printf(“%c,%dn”,c2,c2);