请编写函数,将大写字母写入文件中。
函数原型
void WriteLetter(FILE *f, int n);
说明:参数 f 为文件指针,n 为字母数目(1 ≤ n ≤ 26)。函数将前 n 个大写英文字母写入 f 所指示的文件中。
裁判程序
#include <stdio.h>
#include <stdlib.h>void WriteLetter(FILE *f, int n);int main()
{FILE *f;int n;f = fopen("Letter.txt", "w");if (!f){puts("文件无法打开!");exit(1);}scanf("%d", &n);WriteLetter(f, n);if (fclose(f)){puts("文件无法关闭!");exit(1);}puts("文件保存成功!");return 0;
}/* 你提交的代码将被嵌在这里 */
样例输入
3
输出样例
文件保存成功!
打开“Letter.txt”文件,查看文件内容:
Letter.txt
ABC
代码长度限制
16 KB
时间限制
100 ms
内存限制
64 MB
C程序如下:
void WriteLetter(FILE *f, int n) { // 打开文件指针f指向的文件 // "w"表示以写入模式打开文件,如果文件不存在则创建文件 // 如果文件无法打开或创建,则输出错误信息并退出程序 if (f == NULL) { puts("文件无法打开!"); exit(1); } // 循环n次,每次写入一个大写字母 for (int i = 0; i < n; i++) { // 将字母'A'加上i的偏移量得到大写字母的ASCII码值 // 然后将该值转换为字符类型并写入文件 fputc('A' + i, f); } // 关闭文件指针f指向的文件 // 如果文件无法关闭,则输出错误信息并退出程序 if (fclose(f)) { puts("文件无法关闭!"); exit(1); }
}
在这个示例代码中,WriteLetter
函数接收两个参数:一个文件指针f
和一个整数n
,表示要写入文件的字母数目。函数使用循环将前n
个大写字母依次写入文件。在每次循环中,将字母'A'加上当前的循环变量i
的偏移量,得到大写字母的ASCII码值,然后使用fputc
函数将该值转换为字符类型并写入文件。最后,使用fclose
函数关闭文件指针f
指向的文件。如果文件无法打开或关闭,则输出错误信息并退出程序。在主函数中,先打开一个名为"Letter.txt"的文件,然后从标准输入读取一个整数n
,调用WriteLetter
函数将前n
个大写字母写入文件,最后关闭文件并输出提示信息。