C语言 输入和输出
-
输入和输出
当我们说Input时,它意味着将一些数据输入程序。输入可以文件形式或从命令行给出。C编程提供了一组内置函数来读取给定的输入,并根据需要将其输入到程序中。当我们说Output时,它意味着在屏幕,打印机或任何文件中显示一些数据。C编程提供了一组内置函数,可在计算机屏幕上输出数据并将其保存为文本或二进制文件。 -
标准文件
C编程将所有设备视为文件。因此,诸如显示器之类的设备以与文件相同的方式进行寻址,并且在程序执行以提供对键盘和屏幕的访问时,以下三个文件会自动打开。标准文件 文件指针 设备 标准 输入 stdin 键盘 标准 输出 stdout 屏幕 标准 错误 stderr 您的屏幕 文件指针是访问文件以进行读写的方式。本节说明如何从屏幕读取值以及如何在屏幕上打印结果。 -
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 ); return 0; }
编译并执行上述代码后,它等待您输入一些文本。当您输入文本并按Enter键时,程序将继续并仅读取单个字符并将其显示如下-$./a.out Enter a value : this is test You entered: t
-
getchar()和putchar()函数
char *gets(char *s)
函数从读取一行标准输入到缓冲指向小号直到终止新行或EOF(文件结束)。int puts(const char *s)
函数把字符串 s 和一个尾随的换行符写入到标准输出。注意:尽管不建议使用gets()函数,使用fgets()而不是使用gets。
#include <stdio.h> int main( ) { char str[100]; printf( "Enter a value :"); gets( str ); printf( "\nYou entered: "); puts( str ); return 0; }
编译并执行上述代码后,它等待您输入一些文本。当您输入文本并按Enter时,程序将继续读取整行直到结束,并显示如下:$./a.out Enter a value : this is test You entered: this is test
-
scanf()和printf()函数
int scanf(const char *format, ...)
函数从标准输入流输入标准输入,并根据该扫描输入格式提供。int printf(const char *format, ...)
函数的输出写到标准的输出流标准输出,并根据所提供的格式产生输出。格式可以是简单的字符串常量,但可以指定%S,%d,%C,%F等,以打印或读取字符串,整数,字符或分别浮动。还有许多其他格式设置选项可以根据需要使用。现在让我们继续一个简单的示例,以更好地理解这些概念-以下示例显示如何在程序中使用#define-#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); return 0; }
编译并执行上述代码后,它等待您输入一些文本。当您输入文本并按Enter键时,程序将继续并读取输入并将其显示如下-$./a.out Enter a value : seven 7 You entered: seven 7
在这里,应该注意,scanf()期望输入的格式与您提供的%s和%d相同,这意味着您必须提供有效的输入,例如“%s”表示字符串,“%d”表示整数。如果不按给点格式输出,则将其视为错误的输入。其次,在读取字符串时,scanf()遇到空格时将立即停止读取,因此“this is test”是scanf()的三个字符串。