内容正文:
3.2 数据的输入与输出
3.1.1 字符输入/输出函数
3.2.2 格式化输入/输出函数
C语言本身不提供输入/输出语句,输入/输出操作主要由标准输出函数和标准输入函数来实现的,这类函数都是系统提供的库函数。在使用C语言库函数时,要用预编译命令“#include”将有关“头文件”包括到用户源文件中。在前面所有案例开始时都有这样的预编译命令:“#include<stdio.h>”。它表示在程序中要调用标准输入/输出库函数。
所谓“标准输入/输出函数”就是以标准的输入/输出设备(一般为终端设备,例如键盘和显示器)为输入/输出对象的函数。其中包括如下内容。
(1)字符输入/输出函数putchar()(输出一个字符)和getchar()(输入一个字符)。
(2)格式输入输出函数scanf()(格式输入)和printf()(格式输出)。
(3)字符串输入/输出函数gets()(输入字符串)和puts()(输出字符串)。
3.1.1 字符输入/输出函数
字符输入/输出函数用于处理单个字符,主要包括getchar()和putchar()两个函数。
字符输入/输出函数是C标准输入/输出函数库中最简单也最容易理解的输入/输出函数。
1.字符输入函数getchar()
getchar()函数的功能是接收从终端(或系统默认指定的输入设备)输入的1个字符,它没有参数。其基本格式为
getchar();
2.字符输出函数putchar()
putchar()函数的作用是向终端输出一个字符。其基本格式为
putchar(c);
其用途是输出字符变量c的值,参数c通常为字符型变量或整型变量,也可以是1个字符常量或整型常量。
3.2.2 格式化输入/输出函数
getchar()和putchar()函数只能输入和输出字符,而且只能处理单个字符,因此在应用上具有很大的局限性。scanf()和printf()函数的作用是向终端(或系统默认指定的输出设备)输出若干个任意类型的数据,而且格式多样。
1.格式输出函数printf()
printf()函数的一般格式为
printf(格式控制,输出表列);
例如:
printf("%d,%c
",a,ch);
2.格式输入函数scanf()
scanf()函数可以用来输入任何类型的多个数据。
3.3 顺序结构程序设计
C语言是结构化程序语言,C程序中包含3种典型结构:顺序结构、选择结构和循环结构。下面首先介绍顺序结构,在稍后的章节中将依次介绍选择结构和循环结构。
顺序结构是3种基本结构中最简单的一种,通常也是一个程序中最基本、最常见的结构形式,其主要特点如下。
(1)程序中的语句按照书写的先后顺序依次执行。
(2)程序中的各条语句必须被执行一次而且仅执行一次。
(3)程序执行过程中没有语句之间的跳转以及对某些语句反复执行等操作。
习题
一、选择题
1.根据定义和数据的输入方式,输入语句的正确形式为 。
定义:
float x,y;
数据的输入方式:
3.14
-12.5
A.scanf("%f,%f",&x,&y);
B.scanf("%f%f",&x,&y);
C.scanf("%f%f",x,y); D.scanf("%3.2f%2.1f",&x,&y);
习题
2.用语句scanf("%c%c%c",&c1,&c2,&c3)输入a└┘b└┘c时,变量c1,c2,c3的值分别为 。
A.'a','b','c' B.'a','b','└┘'
C.'a','└┘','b' D.'a','└┘','c'
3.Putchar()函数可以向终端输出一个 。
A.整型变量表达式值 B.实型变量值
C.字符串 D.字符或字符型变量值
4.若x,y均为int型数据,z为double型数据,则以下的scnaf()函数调用语句中不合法的是 。
A.scanf("%d%lx,%le",&x,&y,&z);
B.scanf("%2d*%d%lf",&x,&y,&z);
C.scanf("%x%*d%o",&x,&y);
D.scanf("%x%o,%6.2f",&x,&y,&z);
习题
5.假设定义
int x;float y;
且执行“scanf("%3d%f",&x,&y);”语句时,从第1列开始输入数据12345└┘└┘67↓,则x和y的值分别为 。
A.12345 ,不确定 B.123 , 45.000000
C.45 ,678.000000 D.345 ,123.000000
6.以下说法正确的是 。
A.输