一道文件操作题

作者在 2009-12-21 20:35:34 发布以下内容
#include "stdio.h"
#include "string.h"
struct kczl/*结构体类型声明*/
{
    char kc_no[20];
    char kc_name[50];
    int kc_credithr;
    char kc_xingzhi[60];
    int kc_zhongxueshi; /*应该是整型吧*/
    int kc_shoukeshi;
    int kc_shangjixueshi;
    char kc_kxxueqi[40];
}s[100];
 
void display(int i)
{
    printf("\t\t课程编号:%s\n",s[i].kc_no);
    printf("\t\t课程名称:%s\n",s[i].kc_name);
    printf("\t\t课程学分:%d\n",s[i].kc_credithr);/*注意*/
    printf("\t\t课程性质:%s\n",s[i].kc_xingzhi);
    printf("\t\t课程总学时:%d\n",s[i].kc_zhongxueshi);
    printf("\t\t课程授课时:%d\n",s[i].kc_shoukeshi);
    printf("\t\t课程上机学时:%d\n",s[i].kc_shangjixueshi);
    printf("\t\t课程开课学期:%s\n\n",s[i].kc_kxxueqi);
}

void loadData(int n)
{
    int i;
    for(i=0;i<n;i++)
    {
        printf("\t\t\t--第%d门课程的信息--\n",i+1);
        printf("\n");
        printf("\t\t* *请输入课程编号* *:");
        scanf("%s",s[i].kc_no);
        printf("\t\t* *请输入课程名称* *:");
        scanf("%s",s[i].kc_name);
        printf("\t\t* *请输入课程学分* *:");
        scanf("%d",&s[i].kc_credithr); /*注意*/
        printf("\t\t* *请输入课程性质* *:");
        scanf("%s",s[i].kc_xingzhi);
        printf("\t\t* *请输入课程总学时* *:");
        scanf("%d",&s[i].kc_zhongxueshi);
        printf("\t\t* *请输入课程授课时* *:");
        scanf("%d",&s[i].kc_shoukeshi);
        printf("\t\t* *请输入课程上机学时* *");
        scanf("%d",&s[i].kc_shangjixueshi);
        printf("\t\t* *请输入课程开课学期* *:");
        scanf("%s",s[i].kc_kxxueqi);
    }
}
 
void file(int i)
{
    FILE *fp;
    if((fp=fopen("D:\\student.txt","a"))==NULL)/*可以设置保存路径,也可以默认在所用编译器下的projects中*/
    /*
    a 以附加的方式打开只写文件。若文件不存在,则会建立该文件,
    如果文件存在,写入的数据会被加到文件尾,即文件原先的内容会被保留。
    */
    {
        printf("cannot create the file!\n");
        exit(0);
    }
    fprintf(fp,"\t\t课程编号:%s\n",s[i].kc_no);
    fprintf(fp,"\t\t课程名称:%s\n",s[i].kc_name);
    fprintf(fp,"\t\t课程学分:%d\n",s[i].kc_credithr);
    fprintf(fp,"\t\t课程性质:%s\n",s[i].kc_xingzhi);
    fprintf(fp,"\t\t课程总学时:%d\n",s[i].kc_zhongxueshi);
    fprintf(fp,"\t\t课程授课时:%d\n",s[i].kc_shoukeshi);
    fprintf(fp,"\t\t课程上机学时:%d\n",s[i].kc_shangjixueshi);
    fprintf(fp,"\t\t课程开课学期:%s\n\n",s[i].kc_kxxueqi);
}
 
int main(void)
{
    int i,il;
    printf("\t\t你想输入几门课程的信息? ");
    scanf("%d",&il);
    printf("\t\t你想输入--%d--门课程的信息",il);
    printf("\n\n\n");
    loadData(il);
    printf("\t\t* *你输入的课程信息为* *:\n\n");
    for(i=0;i<il;i++)
    {
        display(i);
        file(i);
    }
    return 0;
}
默认分类 | 阅读 1091 次
文章评论,共5条
小兔子慢慢
2009-12-24 20:50
1
怎么又一个错误
hnliji1107(作者)
2009-12-25 10:00
2
<div class="quote"><span class="q"><b>小兔子慢慢</b>: 怎么又一个错误</span></div>哪里?
小兔子慢慢
2009-12-25 21:18
3
<div class="quote"><span class="q"><b>hnliji1107</b>: 哪里?</span></div>我错啦 很强
qianzhenjun
2010-01-03 12:06
4
谭浩强的C++里,文件操作讲得挺细致的。现在正在学MFC编程。忙碌中。。。
hnliji1107(作者)
2010-01-04 10:30
5
<div class="quote"><span class="q"><b>qianzhenjun</b>: 谭浩强的C++里,文件操作讲得挺细致的。现在正在学MFC编程。忙碌中。。。</span></div>现在主攻C和汇编,暂时没时间看C++...
游客请输入验证码
文章分类