1. /*-------------------------------------------------------
    2. 【程序填空】
    3. ---------------------------------------------------------
    4. 题目:程序通过定义学生结构体变量,存储学生的学号、姓名和3门课的成绩。函数fun的功
    5. 能是:将形参a中的数据进行修改,把修改后的数据作为函数值返回主函数进行输出。
    6. 例如:若传给形参a的数据中学号、姓名和三门课的成绩依次是:
    7. 10001、"ZhangSan"、95、80、88,修改后的数据应为:
    8. 10002、"LiSi"、96、81、89。
    9. -------------------------------------------------------*/
    10. #include <stdio.h>
    11. #include <string.h>
    12. struct student
    13. {
    14. long sno;
    15. char name[10];
    16. float score[3];
    17. };
    18. /***********SPACE***********/
    19. struct student fun( struct student a )
    20. {
    21. int i;
    22. a.sno = 10002;
    23. /***********SPACE***********/
    24. strcpy(a.name, "LiSi");
    25. for (i=0; i<3; i++)
    26. /***********SPACE***********/
    27. a.score[i]+= 1;
    28. return a;
    29. }
    30. main()
    31. {
    32. struct student s={10001,"ZhangSan", 95, 80, 88}, t;
    33. int i;
    34. printf("\n\nThe original data :\n");
    35. printf("\nNo: %ld Name: %s\nScores: ",s.sno, s.name);
    36. for (i=0; i<3; i++)
    37. printf("%6.2f ", s.score[i]);
    38. printf("\n");
    39. t = fun(s);
    40. printf("\nThe data after modified :\n");
    41. printf("\nNo: %ld Name: %s\nScores: ",t.sno, t.name);
    42. for (i=0; i<3; i++)
    43. printf("%6.2f ", t.score[i]);
    44. printf("\n");
    45. }