C语言将26个大写英文字母写入文本文letter.txt中,然后第一次从文件中读取A-Z并显示,第二次从文件中读取B-Y并显示,第三次从文件中读取C-X并显示,以此类推,要求每次显示之后换行。

用C语言
1、将26个大写英文字母写入文本文letter.txt中,然后第一次从文件中读取A-Z并显示,第二次从文件中读取B-Y并显示,第三次从文件中读取C-X并显示,以此类推,要求每次显示之后换行。

2、输入10本书的信息,包括:编号、作者、单价、数量,使用fprintf()函数将这些信息保存在二进制文件book中。然后使用fscanf()函数读取二进制文件book中的前面5本书的信息并显示在屏幕上。

考擦文件的读写,fseek来设置偏移量,然后读取就可以了。

img

代码如下:

#include <stdio.h>
int main()
{
    FILE* fp;
    int i;
    char str[27]={0};
    char buf[27]={0};
    fp = fopen("letter.txt","w"); //写入
    for(i=0;i<26;i++)
        str[i] = 'A'+i;
    fwrite(str,1,26,fp);
    fclose(fp);
    
    fp = fopen("letter.txt","r");
    for (i=0;i<26;i++)
    {
        rewind(fp); //重置文件指针
        fseek(fp,i,SEEK_SET);
        fread(buf,1,26-2*i,fp);
        buf[26-2*i] = 0;
        printf("%s\n",buf);
    }
    fclose(fp);
    return 0;

}

按顺序写的吗?