用C语言写一个程序要求从键盘输入若干行字符每行长度不懂输入后把它们存储到一个磁盘文件中再从开文件中读入这些数据将其中小写字母转换成大写字母后在显示屏上输出
时间: 2024-02-16 16:59:41 浏览: 73
C语言实验--输入一个字符,若是小写字母,转换成大写字母输出;若是大写字母,则转换成小写字母输出。
5星 · 资源好评率100%
好的,我来帮你写这个程序。
```c
#include <stdio.h>
#include <ctype.h>
#define MAX_LINE_LEN 1000 // 每行最大长度
int main() {
char filename[100];
printf("请输入要存储数据的文件名:");
scanf("%s", filename);
FILE *fp = fopen(filename, "w"); // 打开文件进行写操作
if (fp == NULL) {
printf("无法打开文件\n");
return 1;
}
printf("请输入若干行字符,每行长度不超过%d,以空行结束:\n", MAX_LINE_LEN);
char line[MAX_LINE_LEN];
while (fgets(line, MAX_LINE_LEN, stdin) != NULL) {
if (line[0] == '\n') break; // 遇到空行结束
fputs(line, fp); // 将输入的数据写入文件
}
fclose(fp);
fp = fopen(filename, "r"); // 打开文件进行读操作
if (fp == NULL) {
printf("无法打开文件\n");
return 1;
}
printf("文件内容为:\n");
while (fgets(line, MAX_LINE_LEN, fp) != NULL) {
for (int i = 0; line[i] != '\0'; i++) {
if (islower(line[i])) {
line[i] = toupper(line[i]); // 将小写字母转换为大写字母
}
}
printf("%s", line); // 输出转换后的内容
}
fclose(fp);
return 0;
}
```
这个程序会要求你输入一个文件名,然后让你输入若干行字符,每行长度不超过 `MAX_LINE_LEN`,以空行结束。程序会将这些数据存储到指定的文件中,并从文件中读取数据,将其中的小写字母转换成大写字母后输出到屏幕上。
阅读全文