内容正文:
编程语言基础——C语言
2.5 数据的输入
第2章 基本数据类型与简单程序设计
高等教育出版社
教学目标
一
了解C语言的输入语句
1
2
掌握C语言输入语句的使用。
3
培养学生严谨的学习态度。
教学重难点
二
C语言中输入数据的方法。
1
2
各种格式的使用。
导入新课
三
信息处理的最终结果是数据输出,不同的应用场合、不同的人群对数据输出的要求也不一样。
新知讲授
四
字符输入函数getchar()和输出函数putchar()是以一个字符为单位来完成输入/输出过程的。在程序中使用这两个函数时,要求在程序开头包含文件stdio.h:
# include <stdio.h>
数据的输入一般是以键盘为处理对象的,从键盘接受字符和数值。
getchar()
字符输入函数getchar()
2.5.1
c=getchar();
函数getchar()的功能是接受从键盘上输入的字符。在程序中使用这个函数输入字符时,可以用一个变量来接受读取的字符,例如:
执行上面的语句时,程序等待用户输入,当用户按下某个键时,变量c就得到了该键的代码值。
说明:(1)只能输入一个字符
(2)可以将获得的字符赋给int 型或char型的变量
字符输入函数getchar()
2.5.1
[例]
#include <stdio.h>
main()
{
char c;
c=getchar( );
putchar(c);
} 运行时键入字符a,必须要回车则输出为:a
注意:输入字符时不要带撇号
字符输入函数getchar()
2.5.1
在进行数据输入时有一个特殊的字符,就是从键盘输入^z(^z表示将Ctrl键与Z键同时按下),^z称为文件尾标,表示输入过程结束,这个特殊字符的值为-1。
例2-10 字符输入函数getchar()的功能。
#include <stdio.h>
main( )
{ char ch;
ch=getchar();
printf( ”ch=%c,ch=%d
“ ,ch,ch );
}
执行此程序,当执行到语句:
不要丢掉头文件
字符输入函数getchar()
2.5.1
执行此程序,当执行到语句:
ch=getchar();
时,计算机就会等待用户按键(等待输入)。此时,若用户按了A键,就会在屏幕上显示如图所示内容(图中的65时大写字母A的ASCII码值)。
字符输入函数getchar()
2.5.1
例:输入三角形的三边长,求三角形面积.为简单起见,设输入的三边长a,b,c能构成三角形.
#include "math.h "
main()
{float a,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=%7.2f
",a,b,c,s);
printf("area=%7.2f
",area);}
输入:3,4,6 输出如下:
a= 3.00, b=4.00, c=6.00, s= 6.50, area=5.33
注意:此例调用了函数库中的函数sqrt,必须在程序开头加上include命令,把头文件“math.h”包含到程序中。
scanf()
格式化输入函数scanf()的一般使用形式如下:
scanf(“格式串“,地址表);
getchar()函数只能输入一个字符,要想输入其他类型的数据,就需要使用格式化输入函数scanf(),该函数按指定的格式完成输入。scanf()函数的功能是按指定的格式从键盘接受输入信息。
例如:
int a,b,c;
scanf(“%d%d%d”,&a,&b,&c);
格式化输入函数scanf()
2.5.2
scanf()
与printf()函数一样,“格式串”中既可以含格式符,也可以含非格式符。scanf()中格式符的意义同prinf(),如表所示:
格式化输入函数scanf()
2.5.2
输入时,只要遇到非格式符,就要按原样输入;只要遇到格式符,就要按指定格式输入数据,输入的数据存入对应地址的存储空间中。
格式化输入函数scanf()
2.5.2
说明:
* scanf 函数中的“格式控制”后面应当是变量地址而不是变量名。
* 输入数据时,在两个数据之间以一个或多个空格间隔,也可以用回车键、跳格键tab分隔。
格式化