用c语言写:从键盘输入一个字符串,将其中的小写字母全部转换成大写字母,然后输出到一个磁盘文件“test”中保存。输入的字符串以回车结束。
时间: 2024-03-08 07:48:42 浏览: 89
以下是用 C 语言编写的程序,可以实现从键盘输入一个字符串,将其中的小写字母全部转换成大写字母,然后输出到一个磁盘文件“test”中保存的功能:
```c
#include <stdio.h>
#include <ctype.h>
int main() {
FILE *fp;
char str[100];
printf("请输入一个字符串:");
fgets(str, 100, stdin);
for (int i = 0; str[i] != '\0'; i++) {
if (islower(str[i])) {
str[i] = toupper(str[i]);
}
}
fp = fopen("test", "w");
fputs(str, fp);
fclose(fp);
printf("字符串已保存到文件 test 中。\n");
return 0;
}
```
程序运行时,会提示用户输入一个字符串,然后使用 `fgets` 函数读取用户输入的字符串。接着使用 `islower` 函数判断字符串中的每个字符是否为小写字母,如果是,就使用 `toupper` 函数将其转换成大写字母。最后,使用 `fopen` 函数打开一个名为“test”的文件,并使用 `fputs` 函数将处理后的字符串写入文件中。最后,关闭文件并输出提示信息。
相关问题
用C语言实现:从键盘输入一个字符串,将其中的小写字母全部转换成大写字母,然后输出到一个磁盘文件“test”中保存。输入的字符串以回车结束
好的,以下是代码实现:
```c
#include <stdio.h>
#include <ctype.h>
int main() {
char str[100];
FILE *fp;
// 从键盘输入字符串
printf("请输入字符串:");
fgets(str, sizeof(str), stdin);
// 将小写字母转换成大写字母
for (int i = 0; str[i] != '\0'; i++) {
if (islower(str[i])) {
str[i] = toupper(str[i]);
}
}
// 将字符串写入磁盘文件
fp = fopen("test", "w");
if (fp == NULL) {
printf("打开文件失败!\n");
return 1;
}
fprintf(fp, "%s", str);
fclose(fp);
printf("转换后的字符串已保存到文件 test 中!\n");
return 0;
}
```
代码解释:
1. 首先定义了一个字符数组 `str` 和一个文件指针 `fp`。
2. 使用 `fgets` 从键盘输入字符串,`fgets` 会在读取到回车时停止,所以不需要额外处理回车。
3. 使用 `islower` 判断字符是否为小写字母,如果是则使用 `toupper` 将其转换为大写字母。
4. 使用 `fopen` 打开文件,如果失败则输出错误信息并退出程序。
5. 使用 `fprintf` 将转换后的字符串写入文件中。
6. 使用 `fclose` 关闭文件,并输出保存成功的信息。
注意事项:
1. 如果要在 Windows 上运行该程序,请修改打开文件时的参数为 `"wb"`,即将 `"w"` 改成 `"wb"`,这是因为 Windows 和 Linux 的文本文件换行符不同,Windows 使用 `\r\n`,而 Linux 使用 `\n`。
2. 如果要在 Linux 上运行该程序,请确保当前目录下有写入权限,否则会打开文件失败。
2.从键盘输入一个字符串,将小写字母全部转换成大写字母,然后输出到一个磁盘文件“test”中保存,输入字符串时以!结束输入。用c语言做
在C语言中,你可以使用`ctype.h`库中的`toupper`函数将字符转换为大写,并结合`fopen`、`fprintf`和`fclose`函数来操作文件。下面是一个简单的示例程序:
```c
#include <stdio.h>
#include <ctype.h>
int main() {
char input[100];
FILE *fp;
// 打开文件 "test.txt" 进行写入
fp = fopen("test.txt", "w");
if (fp == NULL) {
printf("Failed to open file.\n");
return 1;
}
while (1) {
// 读取用户输入,直到遇到 '!'
fgets(input, sizeof(input), stdin);
if (input[0] == '!') {
break; // 用户输入 ! 结束循环
}
// 将字符串中的每个字符转为大写并写入文件
for (int i = 0; input[i]; i++) {
input[i] = toupper(input[i]);
}
fprintf(fp, "%s", input); // 写入转换后的字符串
fprintf(fp, "\n"); // 每行结束后添加换行符
}
// 关闭文件
fclose(fp);
printf("Data saved to test.txt.\n");
return 0;
}
```
阅读全文
相关推荐















