代码改变世界

C语言作业12

2016-12-15 20:15  160809317刘佳星  阅读(203)  评论(1编辑  收藏  举报

1、定义结构体类型student,要求其中包括学号,姓名,年龄,性别,电话,系别,成绩等信息。

#include<stdio.h>
struct student{
    char sno[10];
    char sname[20];
    int age;
};

int main()
{
    student s1={
        "160809317",
        "liujiaxing",
        19
    };
    printf("%s %s %d",s1.sno,s1.sname,s1.age);
    return 0;
}
#include<stdio.h>
struct student
{
    char sno[10];
    char sname[20];
    int age;
    char tel[11];
    int score;
}; 

int main()
{
    student class3[31];
    int i;
    for(i=0;i<31;i++)
          scanf("%s%s%d%s%d",class3[i].sno,class3[i].sname,&class3[i].age,class3[i].tel,&class3[i].score);
    for(i=0;i<31;i++)
          printf("%s %s %d %s %d\n",class3[i].sno,class3[i].sname,class3[i].age,class3[i].tel,class3[i].score);
    return 0;
}

2、用fscanf和fprintf语句实现将input.txt文件中存储的学生信息复制到output.txt文件中。

#include<stdio.h>
struct student
{
    char sno[10];
    char sname[20];
    int age;
}; 
int main()
{
    student class3[31];
    FILE *fp=fopen("d:\\input.txt","r");
    fscanf(fp,"%s%s%d",class3[0].sno,class3[0].sname,&class3[0].age);
    fclose(fp);
    fp=fopen("d:\\output.txt","w");
    printf("%s %s %d",class3[0].sno,class3[0].sname,class3[0].age);
    fclose(fp);    
    return 0;
}

3、实现课上讲解的”学生管理系统“中第一个菜单“”添加学生信息“”模块的功能,即当用户选择“添加学生信息”菜单时,提示用户输入学生的学号、姓名、年龄等信息,并将输入的信息添加到student.txt文件中。 

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

这次作业老师在课上讲了不少,所以一般难,但是也看了好多其他同学的作业和老师上课讲的,我不明白其他同学的作业printf前面还要加一个f,括号里面为什么还要加上fp,最后一道题总是有两个错误我也没有找出来。