写字母(文件)

2024-01-07 20:32:13

请编写函数,将大写字母写入文件中。

函数原型
 
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个大写字母写入文件,最后关闭文件并输出提示信息。

文章来源:https://blog.csdn.net/2302_80325489/article/details/135443959
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。