张照行 的第十二次作业

本文通过三个示例介绍了如何使用C语言定义结构体来存储学生信息,并演示了如何进行文件读写操作,包括从文件中读取学生信息到数组和连续添加学生信息到文件。

1.只是让定义结构体,并没有让干别的什么的,所以就。。。特别奇怪?

#include<stdio.h>
struct student{
    char number[10];
    char name[20];
    int age;
    char gender[5];
    char phone[15];
    char dept[20];
    int score;
}; 
int main()
{
    
    return 0;
}

2.

#include<stdio.h>
struct student{
    char number[10];
    char name[20];
    int age;
}; 
int main()
{
    student class3[31];
    int i=0,j;
    FILE *fp=fopen("g:\\input.txt","r");
    while(!feof(fp))
    {
        fscanf(fp,"%s%s%d",class3[i].number,class3[i].name,&class3[i].age);
        i++;
    }
    fclose(fp);
    fp=fopen("g:\\output.txt","w");
    for(j=0;j<i;j++)
        fprintf(fp,"%s    %s    %d\n",class3[j].number,class3[j].name,class3[j].age);
    fclose(fp);    
    return 0;
}

3.既然只是实现一个模块的功能那就简化一些,不然看都看不过来了,也不算是偷懒吧,哈哈

#include<stdio.h>
struct student{
    char number[10];
    char name[20];
    int age;
}; 
void add()
{
    student class3;char ch;
    FILE *fp=fopen("g:\\student.txt","a+");
    printf("请输入学号:");
    scanf("%s",class3.number);
    printf("请输入姓名:");
    scanf("%s",class3.name);
    printf("请输入年龄:");
    scanf("%d",&class3.age);
    fprintf(fp,"%s    %s    %d\n",class3.number,class3.name,class3.age);
    printf("信息添加成功,是否继续添加学生信息(y/n)");
    scanf("%s",&ch);
    do
    {
        printf("请输入学号:");
        scanf("%s",class3.number);
        printf("请输入姓名:");
        scanf("%s",class3.name);
        printf("请输入年龄:");
        scanf("%d",&class3.age);
        fprintf(fp,"%s    %s    %d\n",class3.number,class3.name,class3.age);
        printf("信息添加成功,是否继续添加学生信息(y/n)");
        scanf("%s",&ch);
    }while(ch=='y' || ch=='Y');
}
int main()
{
    printf("                    三班学生管理系统\n");
    printf("1.添加学生信息\n"); 
    printf("2.其他功能。。。\n");
    printf("请选择(只能选1....):\n");
    int a;
    scanf("%d",&a);
    if(a==1)
        add();     
    return 0;
}

感想:哈哈哈哈哈,没有指针,哈哈哈哈,不过这次作业的确是非常有趣,这次课讲的内容很好玩,我很感兴趣,从外部调用东西,终于感觉像模像样的了,不错,以后还有更厉害的东西,继续加油!

转载于:https://www.cnblogs.com/160809332zzh/p/6180878.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值