目录
输入可以是以文件的形式或者从命令行中进行。C语言提供了一些内置的函数来读取输入的内容,并根据要求填充到程序中。
输出可以往屏幕、打印机或者任意文件中显示一些数据。C语言提供了一些内置的函数来输出数据到计算机屏幕上和保存数据到文本文件或二进制文件中。
一、标准文件
C 语言把所有的设备都当作文件。所以设备被处理的方式与文件相同。以下三个文件会在程序执行时自动打开,以便访问键盘和屏幕。
标准文件 | 文件指针 | 设备 |
标准输入 | stdin | 键盘 |
标准输出 | stdout | 屏幕 |
标准错误 | stderr | 你的屏幕 |
#include <stdio.h> // 执行 printf() 函数需要该库
int main()
{
printf("Hello World!"); //显示引号中的内容
return 0;
}
当运行上面的代码,会产生以下的结果:
Hello World!
二、getchar()和putchar()函数
int getchar(void) 函数从屏幕读取下一个可用的字符,并把它返回为一个整数。这个函数在同一个时间内只会读取一个单一的字符。
int putchar(int c) 函数把字符输出到屏幕上,并返回相同的字符。这个函数在同一个时间内只会输出一个单一的字符。
#include <stdio.h>
int main( )
{
int c;
printf( "Enter a value :");
c = getchar( );
printf( "\nYou entered: ");
putchar( c );
printf( "\n");
return 0;
}
当运行上面的代码,会产生以下的结果:
Enter a value :test
You entered: t
三、gets()和puts()函数
char *gets(char *s) 函数从 stdin 读取一行到 s 所指向的缓冲区,直到一个终止符或 EOF。
int puts(const char *s) 函数把字符串 s 和一个尾随的换行符写入到 stdout。
#include <stdio.h>
int main( )
{
char str[100];
printf( "Enter a value :");
gets( str );
printf( "\nYou entered: ");
puts( str );
return 0;
}
当运行上面的代码,会产生以下的结果:
Enter a value :test
You entered: test
四、scanf()和printf()函数
int scanf(const char *format, ...) 函数从标准输入流 stdin 读取输入,并根据提供的 format 来浏览输入。
int printf(const char *format, ...) 函数把输出写入到标准输出流 stdout ,并根据提供的格式产生输出。
format 可以是一个简单的常量字符串,但是您可以分别指定 %s、%d、%c、%f 等来输出或读取字符串、整数、字符或浮点数。还有许多其他可用的格式选项,可以根据需要使用。
#include <stdio.h>
int main( ) {
char str[100];
int i;
printf( "Enter a value :");
scanf("%s %d", str, &i);
printf( "\nYou entered: %s %d ", str, i);
printf("\n");
return 0;
}
当运行上面的代码,会产生以下的结果:
Enter a value :test
You entered: test