程序通过定义学生结构体变量,存储了学生的学号、姓名和3门课的成绩。函数fun的功能是将形参a所指结构体变量中的数据赋给函数中的结构体变量b,并修改b中的学号和姓名,最后输出修改后的数据。
#define _CRT_SECURE_NO_WARNINGS
#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;
b = a;
b.sno = 10002;
strcpy(b.name, "LiSi");
printf("\nThe data after modified:\n");
printf("No: %ld Name:%s\n Score:\n", b.sno, b.name);
for (i = 0;i < 3;i++)
printf("%6.2f", b.score[i]);
printf("\n");
}
int main()
{
struct student s = { 10001,"ZhangSan",95,80,98 };
int i;
printf("\n\nThe original data:\n");
printf("\nNo: %ld Name: %s\n Score:", s.sno, s.name);
for (i = 0;i < 3;i++)
printf("%6.2f", s.score[i]);
printf("\n");
fun(s);
getchar();
return 0;
}