设为首页 加入收藏

TOP

第3章 简单的C程序设计——顺序程序设计(七)
2019-05-23 14:40:52 】 浏览:402
Tags:简单 程序设计 顺序
适用,便于在各种计算机上实现。

 

   C语言函数库中有一批“标准输入输出函数”,它是以标准的输入输出设备(一般为终端设备)为输入输出对象的。其中有:putchar(输出字符)、getchar(输入字符)、printf(格式输出)、scanf(格式输入)、puts(输出字符串)和gets(输入字符串)。

(3)     在使用系统库函数时,要在程序文件的开头用预处理指令#include把有关头文件放在本程序中,如:#include <stdio.h> 或 #include “stdio.h”

以上两种#include指令形式的区别是:用尖括号<>(如<stdio.h>)时,编译系统从存放C编译系统的子目录中去找所要包含的文件(如stdio.h),这称为标准方式。如果用双撇号形式(如”stdio.h”),在编译时,编译系统先在用户的当前目录(一般是用户存放源程序文件的子目录)中寻找要包含的文件,若找不到,再按标准方式查找。

   如果用#include指令是为了使用系统库函数,因而要包含系统提供的相应头文件,以用标准方式为宜,以提高效率。

如果用户想包含的文文件不是系统提供的相应头文件,而是用户自己编写的文件(这种文件一般都存放在用户当前目录中),这是应当用双撇号形式,否则会找不到所需的文件。如果该头文件不在当前目录中,可以在双撇号中写出文件路径(如#include “c:\temp\file.h”),以便系统能从中找到所需的文件。

注意:应该养成该习惯:只要在本程序文件中使用标准输出输出库函数时,一律加上#include <stdio.h>指令。

 

3.4.3 用printf函数输出数据

printf函数(格式输出函数)用来向终端(或系统隐含指定的输出设备)输出若干个任意类型的数据。

1.printf函数的一般格式

printf函数的一般格式为:printf(格式控制,输出表列)例:printf(“%d,%c\n”,a,b);

(1)“格式控制”是用双撇号括起来的一个字符串,称“转换控制字符串”,简称“格式字符串”。它包括两个信息:

格式说明。格式声明由“%”和格式字符组成,如%d、%f等。它的作用是将输出的数据转换为指定的格式然后输出。格式声明总是由“%”字符开始的。

普通字符。普通字符即需要在输出时原样输出的字符。

(2)“输出表列”是程序需要输出的一些数据,可以是常量、变量或表达式。

例:

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

           格式声明               输出表列

 

printf函数的一般形式可以表示为

printf(参数1,参数2,参数3……,参数n);

2.格式字符

(1)d格式字符。用来输出一个有符号的十进制整数。

可以在格式声明中指定输出数据的域宽(所占的列数),如用“%5d”指定输出数据占5列。

(2)c格式符。用来输出一个字符。

如: char ch = ‘a’;

         printf(“%c”,ch);

运行时输出a

(3)s格式符。用来输出一个字符串。如:

printf(“%s”, ”China”);

(4)f格式符。用来输出实数(包括单、双、长双精度),以小数形式输出,有以下用法

基本型,用%f

   不指定输出数据的长度,有系统根据数据的实际情况决定数据所占的猎术。系统处理的方法一般是:实数中的整数部分全部输出,小数部分输出6位。

指定数据宽度和小数位数,用%m.nf.指定数据占m列,小数占有n列。若把小数部分n指定为0,则不仅不输出小数,并且小数点也不输出。

如printf(“%20.15f\n”,a);

注意:在用%f输出时要注意数据本身能提供的有效数字,如float型数据的存储单元只能保证6位有效数字。double型数据能保证15位有效数字。

输出的数据想左对齐,用%-m.nf

在m.n的前面加一个负号,其作用与%m.nf形式作用基本相同;但当数据长度不超过m时,数据向左靠,右端补空格。换个说法就是,左对齐。

(5)e格式符,用格式声明%e指定以指数形式输出实数。如果不指定输出数据所占的宽度和数字部分的小数位数,许多C编译系统(如VC6.0)会自动给出数字部分的小数位为6位,指数部分占5列(如e+002,其中“e”占1列,指数符号占1列,指数占3列)。

数值按标准化指数形式输出(即小数点前必须有且只有1位非零数字)。如:

printf(“%e”,123.456);

输出如下:

1.234560 e+002

         6列  5列

所输出的实数共占有13列宽度。(注:不同系统的规定略有不同)

 

C语言还提供以下几种输出格式符,由于初学,用的次数不多,不过多详细介绍

(1)i格式符。作用于d格式符相同,按十进制整型数据的实际长度输出。一般习惯用%d而少用%i。

(2)o格式符。以八进制整数形式输出。

(3)x格式符。以十六进制数形式输出整数。

(4)u格式符。用来输出无符号(unsigned)型数据,以十进制整数形式输出。

(5)g格式符。用来输出浮点数,系统自动选f格式或e格式输出,选择其中长度较短的格式,不输出无意义的0.

综上所述,格式声明的一般形式可以表示为:

%   附加字符  格式字符

printf函数中用到的格式字符

 

printf函数中用到的格式附加字符

3.4.4 用scanf函数输入数据

1.scanf函数的一般形式

scanf(格式控制,地址表列)

“格式控制”的含义通printf函数。“地址表列”是由若干个地址组成的表列,可以是变量的地址,或字符串的首地址。

2.scanf函数中的格式声明

与printf函数中的格式声明类似,以%开始,以一个格式字符结束,中间可以插入附加的字符。

scanf函数中所用到的格式字符

 

scanf函数中用到的格式附加字符

3.使用scanf函数时应注意的问题

(1)scanf函数中的“格式控制”后面应当是变量地址,而不是变量名。

(2)如果在“格式控制字符串”中除了格式声明以外还有其他字符,则在输入数据时在对应的位置上应输入与这些字符相同的字符。

 

3.4.5 字符数据的输入输出

1.用putchar函数输出一个字符

想从计算机向显示器输出一个字符,可以调用系统函数库中的putchar函数(字符输出函数)。

putchar函数的一般形式为

putchar(c

首页 上一页 4 5 6 7 下一页 尾页 7/7/7
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇第1章 程序设计和C语言 下一篇第2章 算法——程序的灵魂

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目