从键盘输入一串字符,存入文件,直到用户输入一个“!”作为终止标志。C语言
时间: 2023-12-23 12:02:25 浏览: 27
好的,下面是实现该功能的 C 语言代码:
```c
#include <stdio.h>
int main() {
FILE *fp; // 定义文件指针
char ch; // 定义字符变量
fp = fopen("data.txt", "w"); // 打开文件,以写入方式打开
if (fp == NULL) { // 判断文件是否打开成功
printf("文件打开失败!");
return 0;
}
printf("请输入一串字符(以!结束):");
while ((ch = getchar()) != '!') { // 从键盘读取字符,直到输入“!”为止
fputc(ch, fp); // 将字符写入文件
}
fclose(fp); // 关闭文件
printf("文件已保存!");
return 0;
}
```
上述代码中,使用 `fopen()` 函数打开文件,以写入方式打开。然后使用 `getchar()` 函数从键盘读取字符,直到输入“!”为止。每次读取到一个字符后,使用 `fputc()` 函数将其写入文件。最后使用 `fclose()` 函数关闭文件。
相关问题
C语言 从键盘输入一串字符,存入文件,直到用户输入一个“!”作为终止标志
可以使用C语言中的文件操作来实现从键盘输入一串字符并存入文件的功能。具体实现步骤如下:
1. 定义一个字符数组用于存储从键盘输入的字符。
2. 打开一个文件用于存储输入的字符,可以使用fopen函数。
3. 使用fgets函数从键盘输入字符,并将其存入字符数组中。
4. 使用fputs函数将字符数组中的内容写入文件中。
5. 判断输入的字符是否为“!”作为终止标志。
6. 如果输入的字符不是“!”,重复步骤3-5,否则关闭文件并退出程序。
下面是一个示例代码实现:
```c
#include <stdio.h>
#include <string.h>
#define MAX_LEN 1000 // 最大输入长度
int main() {
char input[MAX_LEN]; // 存储输入的字符
char filename[100]; // 存储文件名
FILE *fp; // 文件指针
printf("请输入文件名:");
scanf("%s", filename);
fp = fopen(filename, "w");
if (fp == NULL) {
printf("无法打开文件\n");
return 1;
}
printf("请输入一串字符,以!结束:\n");
while (1) {
fgets(input, MAX_LEN, stdin);
if (input[0] == '!') {
break;
}
fputs(input, fp);
}
fclose(fp);
printf("输入已保存到文件 %s 中\n", filename);
return 0;
}
```
在上面的示例代码中,我们首先使用scanf函数从键盘输入文件名,并使用fopen函数打开文件。然后使用fgets函数从键盘输入字符,并使用fputs函数将其写入文件中,直到输入的字符为“!”时退出循环。最后关闭文件并输出保存成功的信息。
C语言从键盘输入一串字符,存入文件,直到用户输入一个“!”作为终止标志。
以下是使用C语言编写的程序,可以实现从键盘输入一串字符,存入文件,直到用户输入一个“!”作为终止标志。
```c
#include <stdio.h>
int main() {
char filename[100], ch;
// 提示用户输入文件名
printf("请输入要保存的文件名:");
scanf("%s", filename);
// 打开文件并写入数据
FILE *fp = fopen(filename, "w");
printf("请输入要存入文件的内容(以!结束):\n");
while ((ch = getchar()) != '!') {
fputc(ch, fp);
}
fclose(fp);
printf("文件已成功保存!\n");
return 0;
}
```
程序中使用了 `getchar()` 函数来获取用户输入的字符,然后使用 `fputc()` 函数将字符写入文件中,直到用户输入了一个“!”作为终止标志。最后输出成功保存文件的提示信息。