C言語のファイル操作

A.コードの実行ショット




2。コード

#include<stdio.h>
#include<stdlib.h>
#include<string.h>
struct student{
    char name[10];
    char num[100];
    char sex[10];
    char cla[10];
    int grade;
}s[100];
int main()
{
    FILE *fp;
    int n, i;
    char name1[10][10];
    printf("请输入你要录入学生的数目 \n");
    printf("\n");
    scanf("%d",&n);
    printf("请输入你要的学生姓名\n");
    for(i=0;i<n;i++)
    {
        scanf("%s", s[i].name);
        strcpy(name1[i], s[i].name);
        strcat(name1[i], ".txt");//为每个人创建一个txt文件
        fp=fopen(name1[i],"w");
        if (fp== NULL)
        {
            printf("File open error!\n");
            exit(0);
        }
        if (fclose(fp))//**打开文件时需谨记关闭文件**
        {
            printf("Can not close the file!\n");
            exit(0);
        }
    }
    printf("请按以下并用空格输入学生信息  姓名    学号    性别    班级   线代成绩\n");
    printf("\n");//给每个人输入个人信息
    for (i=0;i<n;i++)
    {
        fp = fopen(name1[i], "r+");
        if (fp == NULL)
        {
            printf("File open error!\n");
            exit(0);
        }
        printf("%s", s[i].name);
        scanf("%s %s %s %d", s[i].num, s[i].sex, s[i].cla, &s[i].grade);
        fprintf(fp, "%s %s %s %d", s[i].num, s[i].sex, s[i].cla, s[i].grade);
        if (fclose(fp))
        {
            printf("Can not close the file!\n");
            exit(0);
        }
    }
    printf("姓名   学号  性别  班级  线代成绩  \n");
    printf("\n");//重新读取信息,存入数组中
    for (i=0;i<n;i++)
    {
        fp = fopen(name1[i], "r");
        if (fp == NULL)
        {
            printf("File open error!\n");
            exit(0);
        }
        fscanf(fp,"%s %s %s %d", s[i].num, s[i].sex, s[i].cla, &s[i].grade);
        printf("%s %s %s %s %d",s[i].name, s[i].num, s[i].sex, s[i].cla, s[i].grade);
        if (fclose(fp)) 
        {
            printf("Can not close the file!\n");
            exit(0);
        }
    }
    return 0;
}

三.system機能解析
システムの機能のようないくつかのDOSコマンド、呼び出すことができます
1.system(「CLS」)は、画面クリアするために使用することができます
2.system(「ATTRIB」)を表示または変更ファイル属性
3.system(「DISKCOPYを」)となります別のフロッピーにフロッピーディスクの内容をコピー
。IVまとめ
このブログパークの仕事を通じて、私は関数fopen、fcloseは、関数fscanf、関数fprintfおよびその他のドキュメントの使用をマスターして、ファイルが、私も学んだ、ということだけではなく、予備的な理解を持っていますシステム機能の使用方法、それはプログラムを読みやすくするためのコードを美しくすることができます。

おすすめ

転載: www.cnblogs.com/20010816bb/p/12076237.html
おすすめ