c语言电子教案章new_第1页
c语言电子教案章new_第2页
c语言电子教案章new_第3页
c语言电子教案章new_第4页
c语言电子教案章new_第5页
已阅读5页,还剩25页未读 继续免费阅读

下载本文档

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

文档简介

第4章最简单的C程序设计–顺序程序设计学时:4学时内容:

4.1C语句的概述4.2赋值语句

4.3数据输入输出的实现4.4数据的输入4.5数据的输出知识点:

C语句的各种形式赋值语句

数据的输出

数据的输入重点:

数据的正确输出数据的正确输入难点:格式符的正确使用计算机C语言yyyy-M-

2age*第4章输入输出操作管理4.1C语句概述C程序的组成计算机C语言yyyy-M-

3age*C语句分5大类:控制语句:控制程序流程。

if()~else~条件选择语句

switch多分支选择语句

for()~循环语句

while()~循环语句

do~while()循环语句

continue结束本次循环语句

break终止switch和循环语句

goto

无条件转向语句

return退出函数语句计算机C语言yyyy-M-

4age*4.1C语句概述

函数调用语句:函数调用加“;”构成函数调用语句。

printf("ThisisaCstatement");

表达式语句:任何一种表达式加“;”既构成相应的表达式语句。

a=5*2;(赋值表达式语句)

b+=8;(复合的赋值语句)

x++;(自增表达式语句)

a=2,b=a+2,c=9;(逗号表达式语句)

2*5+9;(算术表达式语句,该语句无实际意义,但合法)计算机C语言yyyy-M-

5age*4.1C语句概述空语句:只有符号“;”,它什么也不做。例如:;

该语句主要用于:作为转向点,例如:

.......

p1:;

.......

gotop1;

.......

作空循环语句的循环体。(后面讲)计算机C语言yyyy-M-

6age*4.1C语句概述

复合语句:用{}括起来的若干条语句的集合。例如:

{x=2;y=3;z=x+y;}

复合语句在程序中可以看作一条语句。复合语句经常被用于循环语句和条件选择语句中。(后面讲)4.1C语句概述计算机C语言yyyy-M-

7age*

赋值表达式加“;”,就形成赋值语句。赋值语句与赋值表达式的区别赋值表达式本身是有数值的,它可以出现在任一表达式能够出现的地方。例如:printf("%d,%d",a=8,3);

if((a=b)>0)m=6;

赋值语句和赋值表达式是不能相互代替。例如:if((a=b;)>0)m=6;是错误的。计算机C语言yyyy-M-

8age*4.2赋值语句

输入输出设备与计算机内存进行数据交换的外部设备,又称I/O设备。用途:进行人机信息交换。常用的输入设备有:键盘、磁盘、光盘、扫描仪等。常用的输出设备有:显示器、打印机、磁盘等。通常标准的输入/输出设备是指:键盘和显示器。

C语言的输入输出函数:

C语言把输入输出的功能作为函数来处理。优点是使C语言编译系统较简单,更容易移植到具有不同的硬件设备的计算机系统中。不同的C语言函数库都提供一批“标准的输入输出函数”,具有通用性。计算机C语言yyyy-M-

9age*4.3数据输入输出的实现

预编译命令“#include”

必须在程序的开始加上预编译命令:

#include<stdio.h>

或#include"stdio.h"4.3数据输入输出的实现计算机C语言yyyy-M-

10age*字符输出函数格式:putchar(c)

参数:c为字符变量、整型变量

功能:把字符c输出到显示器上例boy计算机C语言yyyy-M-

11age*4.4数据的输出#include<stdio.h>main(){chara,b,c;a='b';b='o';c='y';

putchar(a);

putchar(b);

putchar(c);}#include<stdio.h>main(){intc;chara;c=65;a='B';

putchar(c);

putchar('\n');

putchar(a);}AB4.4数据的输出

格式输出函数

printf("格式控制串",输出表)

功能:按指定格式向显示器输出数据输出表:要输出的数据(可以没有,多个时以“,”分隔)格式控制串:包含两种信息格式说明:%[修饰符]格式字符,用于指定输出格式普通字符或转义序列:原样输出格式字符格式字符要用小写格式字符与输出项个数相同,按先后顺序一一对应输出转换:格式字符与输出项类型不一致,自动按指定格式输出计算机C语言yyyy-M-

12age*格式符d输出十进制整数

%d,%md,%ld,%-mdo输出无符号八进制整数

x输出无符号十六进制整数

u用来输出无符号整数

c输出一个字符

s输出一个字符串

%s,%ms,%-ms,%m.ns,%-m.nsf输出实数,整数全部输出,6位小数

e以指数形式输出实数,指数部分占5位

g输出实数,自动选取f和e中宽度最小的一种4.4数据的输出计算机C语言yyyy-M-

13age*1111

11

11

11

11

11

11655354.4数据的输出main(){inta=3,b=4;

printf("%d%d\n",a,b);

printf("a=%d,b=%d\n",a,b);}main(){unsignedint;u=65535;

printf("u=%d\n",u);}

34a=3,b=4u=-1计算机C语言yyyy-M-

14age*main(){inta=1234;floatf=123.456;charch=‘a’;printf("%8d,%2d\n",a,a);printf("%f,%8f,%8.1f,%.2f,%.2e\n",f,f,f,f,f);printf("%3c\n",ch);}4.4数据的输出1234,1234123.456000,123.456000,123.5,123.46,1.23e+02a计算机C语言yyyy-M-

15age*4.4数据的输出main(){staticchara[]=“Hello,world!”printf(“%s\n%15s\n%10.5s\n%2.5s\n%.3s\n”,a,a,a,a,a);}Hello,world!Hello,world!HelloHelloHel计算机C语言yyyy-M-

16age*4.4数据的输出main(){inta=1234;floatf=123.456;staticcharc[]=“Hello,world!”;printf(“%8d,%-8d\n”,a,a);printf(“%10.2f,%-10.1f\n”,f,f);printf(“%10.5s,%-10.3s\n”,c,c);}1234,1234123.46,123.5Hello,Hel计算机C语言yyyy-M-

17age*main(){inta=1234;floatf=123.456;printf(“%8d\n”,a);printf(“%10.2f\n”,f);printf(“%+8d\n”,a);printf(“+10.2f\n”,f);}

main(){longa=65536;printf(“%d,%8ld\n”,a,a);}0000

00

00

00

00

00010000

00

00

00

00

00

004.4数据的输出计算机C语言yyyy-M-

18age*1234123.46+1234+123.560,65536字符输入函数格式:getchar()

功能:从键盘读一字符例:4.5数据输入#include<stdio.h>main(){intc;

printf("Enteracharacter:");c=getchar();

printf("%c--->hex%x\n",c,c);}Enteracharacter:AA--->hex41main(){int

a,b;

scanf(“%d,%x”,&a,&b);

printf(“a=%d,b=%d”,a,b);}4.5数据输入计算机C语言yyyy-M-

20age*格式输入函数格式:scanf(“格式控制串”,地址表)功能:按指定格式从键盘读入数据,存入地址表指定的存储单元中,并按回车键结束地址表:变量的地址,常用取地址运算符&格式字符:d,i,o,x,u,c,s,f,e

例:10,10a=10,b=16

附加格式说明符(修饰符)4.5数据输入计算机C语言yyyy-M-

21age*修饰符功能h用于d,o,x前,指定输入为short型整数l用于d,o,x前,指定输入为long型整数用于e,f前,指定输入为double型实数m指定输入数据宽度,遇空格或不可转换字符则结束*抑制符,指定输入项读入后不赋给变量4.5数据输入main(){int

y,m,d,a,b,k;floatf;charc1,c2;scanf(“%4d%2d%2d”,&y,&m,&d);

printf(“%d,%d,%d\n”,y,m,d);scanf(“%2d%*3d%2d”,&a,&b);

printf(“%d,%d\n”,a,b);

scanf(“%3c%2c”,&c1,&c2);printf(“%c,%c”,c1,c2);scanf(“%3d%*4d%f”,&k,&f);

printf(“%d,%f”,k,f);}19991015

1999,10,15123456712,67abcdef

a,d12345678765.43123,8765.430000输入分隔符的指定一般以空格、TAB或回车键作为分隔符其它字符做分隔符:格式串中两个格式符间字符4.5数据输入计算机C语言yyyy-M-

23age*main(){int

a,b,c,e,f,h,m,s;

scanf(“a=%d,b=%d,c=%d”,&a,&b,&c);

scanf(“%d,%d”,&e,&f);

scanf(“%d:%d:%d”,&h,&m,&s);}

a=12,b=24,c=363,412:30:45说明:用“%c”格式符时,空格和转义字符作为有效字符输入4.5数据输入计算机C语言yyyy-M-

24age*main(){charc1,c2,c3;scanf(“%c%c%c”,&c1,&c2,&c3);printf(“c1=%c,c2=%c,c3=%c”,c1,c2,c3);}

abc

c1=a,c2=,c3=b4.5数据输入计算机C语言yyyy-M-

25age*main(){inta;charb;floatc;

scanf(“%d%c%f”,&a,&b,&c);

printf(“a=%d,b=%c,c=%f”,a,b,c);}1234a123o.26a=1234,b=a,c=123.000000输入数据时,遇以下情况认为该数据结束:遇空格、TAB、或回车遇宽度结束遇非法输入4.5数据输入计算机C语言yyyy-M-

26age*#include<stdio.h>main(){intx;charch;

scanf(“%d”,&x);

ch=getchar();/*scanf(“%c”,&ch);*/

printf(“x=%d,ch=%d\n”,x,ch);}123x=123,ch=10输入函数留下的“垃圾”:4.5数据输入计算机C语言yyyy-M-

27age*main(){intx;charch;

scanf(“%d”,&x);

scanf(“%c”,&ch);/*getchar();或scanf(“%*c%c”,&ch);*/

printf(“x=%d,ch=%c”,x,ch);}

123a

x=123,ch=a解决方法:用getchar()清除用格式串中空格或“%*c”来“吃掉”4.6程序举例#include<math.h>#include<stdio.h>main(){floata,b,c,s,area;

scanf("%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=

温馨提示

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

评论

0/150

提交评论