软考
APP下载

c语言字符串输入输出

C语言中的字符串是由一段字符数组组成的。字符串输入输出是计算机程序中最常用的操作之一,可以通过键盘输入或文件读取等方式获取字符串,并将其输出到屏幕或文件中。本文将从多个角度分析C语言字符串的输入输出操作。

1. 字符串输入

1.1 scanf函数

在C语言中,可以使用scanf函数从标准输入设备(键盘)中读取字符串。下面是一个简单的例子:

```

#include

int main() {

char str[100];

printf("Enter a string: ");

scanf("%s", str);

printf("The string you entered is: %s\n", str);

return 0;

}

```

scanf函数的用法是scanf(“%s”, str),其中%s表示读入字符串,str表示存储读入字符串的字符数组。

需要注意的是,scanf函数遇到空格、回车、制表符等空白符时就会停止读入,因此无法读入包含空格等特殊字符的字符串。此外,如果字符串太长,可能会导致数组越界的问题。

1.2 gets函数

gets函数可以读取一行字符串,而不是由空格隔开的单个字符串。下面是一个例子:

```

#include

int main() {

char str[100];

printf("Enter a string: ");

gets(str);

printf("The string you entered is: %s\n", str);

return 0;

}

```

需要注意的是,gets函数存在缓冲区溢出的风险,应该避免使用。

1.3 fgets函数

fgets函数可以读取指定长度的字符串,避免了缓冲区溢出的问题。下面是一个例子:

```

#include

int main() {

char str[100];

printf("Enter a string: ");

fgets(str, 100, stdin);

printf("The string you entered is: %s\n", str);

return 0;

}

```

fgets函数的第一个参数是存储读入字符串的字符数组,第二个参数是最大的读取字符数,第三个参数是输入源,通常使用stdin表示从标准输入设备(键盘)中读取。

2. 字符串输出

2.1 printf函数

printf函数可以将字符串输出到屏幕上。下面是一个例子:

```

#include

int main() {

char str[] = "Hello, world!";

printf("%s\n", str);

return 0;

}

```

printf函数的用法是printf(“%s”, str),其中%s表示输出字符串,str表示要输出的字符串。

2.2 puts函数

puts函数可以将一个字符串输出到屏幕上,并在末尾添加一个换行符。下面是一个例子:

```

#include

int main() {

char str[] = "Hello, world!";

puts(str);

return 0;

}

```

需要注意的是,puts函数只能输出一行字符串,不能输出格式化字符串。

2.3 fputs函数

fputs函数可以将一个字符串输出到指定文件中。下面是一个例子:

```

#include

int main() {

FILE *fp;

fp = fopen("output.txt", "w");

fputs("Hello, world!", fp);

fclose(fp);

return 0;

}

```

fputs函数的第一个参数是要输出的字符串,第二个参数是文件指针,表示要输出到哪个文件中。需要注意的是,如果文件不存在,会自动创建该文件。

3. 总结

本文介绍了C语言字符串输入输出的基本操作,并从不同的角度分析了scanf函数、gets函数、fgets函数、printf函数、puts函数和fputs函数。其中,fgets函数是比较安全的字符串输入函数,可以避免缓冲区溢出的问题;而printf函数是较为常用的字符串输出函数,可以格式化输出字符串。

备考资料 免费领取:软件设计师报考指南+考情分析+思维导图等 立即下载
真题演练 精准解析历年真题,助你高效备考! 立即做题
相关阅读
软件设计师题库