小书丶 2021-11-03 15:25 采纳率: 87.5%
浏览 390
已结题

C语言程序填空题。程序通过定义学生结构体变量,存储学生的学号、姓名和3门课的成绩。


/*-------------------------------------------------------
【程序填空】
---------------------------------------------------------

题目:程序通过定义学生结构体变量,存储学生的学号、姓名和3门课的成绩。函数fun的
      功能是:将形参a所指结构体变量中的数据赋给函数中的结构体变量b,并修改b中
      的学号和姓名,最后输出修改后的数据。

例如:a所指变量中的学号、姓名和三门课的成绩依次是:10001、"ZhangSan"、95、80、88,
      则修改后输出b中的数据应为:10002、"LiSi"、95、80、88。

-------------------------------------------------------*/
#include  <stdio.h>
#include  <string.h>

struct student 
{
        long  sno;
        char  name[10];
        float  score[3];
};
void fun(struct  student  a)
{ 
        struct student  b;   
        int  i;
/***********SPACE***********/
        b = 【?】;
        b.sno = 10002;
/***********SPACE***********/
        strcpy(【?】, "LiSi");
        printf("\nThe data after modified :\n");
        printf("\nNo: %ld  Name: %s\nScores:  ",b.sno, b.name);
        for (i=0; i<3; i++) 
/***********SPACE***********/
                printf("%6.2f ",  b.【?】);
        printf("\n");
}
main()
{ 
        struct student  s={10001,"ZhangSan", 95, 80, 88};
        int  i;
        printf("\n\nThe original data :\n");
        printf("\nNo: %ld  Name: %s\nScores:  ",s.sno, s.name);
        for (i=0; i<3; i++) 
                printf("%6.2f ",  s.score[i]);
        printf("\n");
        fun(s);
}



  • 写回答

1条回答 默认 最新

  • qzjhjxj 2021-11-03 15:52
    关注

    供参考:

    /*-------------------------------------------------------
    【程序填空】
    ---------------------------------------------------------
    题目:程序通过定义学生结构体变量,存储学生的学号、姓名和3门课的成绩。函数fun的
          功能是:将形参a所指结构体变量中的数据赋给函数中的结构体变量b,并修改b中
          的学号和姓名,最后输出修改后的数据。
    例如:a所指变量中的学号、姓名和三门课的成绩依次是:10001、"ZhangSan"、95、80、88,
          则修改后输出b中的数据应为:10002、"LiSi"、95、80、88。
    -------------------------------------------------------*/
    #include  <stdio.h>
    #include  <string.h>
    struct student
    {
        long  sno;
        char  name[10];
        float  score[3];
    };
    void fun(struct  student  a)
    {
        struct student  b;
        int  i;
        /***********SPACE***********/
        b = a;//【 ? 】;
        b.sno = 10002;
        /***********SPACE***********/
        strcpy(b.name,"LiSi");//(【 ? 】, "LiSi");
        printf("\nThe data after modified :\n");
        printf("\nNo: %ld  Name: %s\nScores:  ", b.sno, b.name);
        for (i = 0; i < 3; i++)
            /***********SPACE***********/
            printf("%6.2f ", b.score[i]);//【 ? 】);
        printf("\n");
    }
    int main()
    {
        struct student  s = { 10001,"ZhangSan", 95, 80, 88 };
        int  i;
        printf("\n\nThe original data :\n");
        printf("\nNo: %ld  Name: %s\nScores:  ", s.sno, s.name);
        for (i = 0; i < 3; i++)
            printf("%6.2f ", s.score[i]);
        printf("\n");
        fun(s);
    }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 12月2日
  • 已采纳回答 11月24日
  • 创建了问题 11月3日