从键盘输入一串字符,存入文件,直到用户输入一个“!”作为终止标志。用C
时间: 2024-03-04 16:49:18 浏览: 14
可以使用C语言中的文件操作函数来实现这个功能,具体实现如下:
```c
#include <stdio.h>
int main() {
char filename[50];
printf("请输入文件名:");
scanf("%s", filename);
FILE *fp = fopen(filename, "w");
if (fp == NULL) {
printf("文件打开失败!\n");
return 1;
}
char ch;
printf("请输入内容(以“!”结束):\n");
while ((ch = getchar()) != '!') {
fputc(ch, fp);
}
printf("内容已保存到文件 %s 中!\n", filename);
fclose(fp);
return 0;
}
```
这个程序首先让用户输入要保存的文件名,然后使用 `fopen()` 函数打开文件并得到文件指针。接着通过 `getchar()` 函数逐个读取用户输入的字符,用 `fputc()` 函数将字符写入文件中,直到遇到输入的终止标志“!”为止。最后关闭文件并输出保存成功的信息。
相关问题
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函数将其写入文件中,直到输入的字符为“!”时退出循环。最后关闭文件并输出保存成功的信息。
从键盘输入一串字符,存入文件,直到用户输入一个“!”作为终止标志
下面是一个Python的示例代码,可以实现从键盘输入一串字符,存入文件,直到用户输入一个“!”作为终止标志:
```python
filename = input("请输入要保存的文件名:")
with open(filename, 'w') as f:
while True:
text = input()
if text == '!':
break
f.write(text + '\n')
print("保存成功!")
```
解释一下代码:
1. 用户输入要保存的文件名,程序使用`with open`语句打开文件,并将文件对象赋值给变量`f`。
2. 进入一个无限循环,每次循环中用户可以输入一行字符串。
3. 如果用户输入的字符串是“!”(即终止标志),则跳出循环。
4. 否则,将用户输入的字符串写入文件,并在末尾加上换行符`\n`。
5. 循环结束后,关闭文件,输出保存成功的提示信息。