从键盘输入一个长度不超过100个字符的字符串,然后做如下操作: (1)将字串中的小写字母转为大写,大写字母转为小写,而其它字符不作处理。 (2)将字串输出保存到一个名为“ex801.txt”的文本文件中。注:文本文件ex801.txt应与源码文件ex801.c保存在同一个文件夹中。 目前,已编写完成main函数,请编程实现writeToFile函数,具体功能和要求如下所示。 c语言
时间: 2023-12-10 21:37:51 浏览: 64
实现writeToFile函数的代码如下:
```c
void writeToFile(char str[]) {
int i;
FILE *fp;
fp = fopen("ex801.txt", "w");
if (fp == NULL) {
printf("Failed to create file.");
return;
}
for (i = 0; str[i] != '\0'; i++) {
if (islower(str[i]))
fputc(toupper(str[i]), fp);
else if (isupper(str[i]))
fputc(tolower(str[i]), fp);
else
fputc(str[i], fp);
}
fclose(fp);
}
```
在这个函数中,我们首先打开一个名为“ex801.txt”的文件,如果无法打开该文件,则输出错误消息并退出函数。然后我们遍历输入字符串中的每个字符,如果该字符是小写字母,则将其转换为大写字母并写入文件中。如果该字符是大写字母,则将其转换为小写字母并写入文件中。对于其他字符,我们直接将其写入文件中。最后,我们关闭文件并退出函数。
在主函数中,我们可以调用writeToFile函数来读取用户输入的字符串并将其写入文件中:
```c
int main() {
char str[101];
printf("Input a string (up to 100 characters):\n");
fgets(str, 101, stdin);
writeToFile(str);
printf("The string has been written to ex801.txt.\n");
return 0;
}
```
在这个主函数中,我们使用fgets函数读取用户输入的字符串,并将其传递给writeToFile函数进行处理。一旦函数完成,我们输出一条消息来告知用户字符串已经成功写入文件中。
阅读全文