100字范文,内容丰富有趣,生活中的好帮手!
100字范文 > c语言用结构体交换名字 结构体赋值给另一个 结构体 如何定义 求大神了

c语言用结构体交换名字 结构体赋值给另一个 结构体 如何定义 求大神了

时间:2018-12-15 08:36:24

相关推荐

c语言用结构体交换名字 结构体赋值给另一个 结构体 如何定义 求大神了

定义了一个 输入学生信息的 结构体 通过比较 总成绩排名 各个信息都要交换信息,我想定义另一个结构体 盛放它完成交换

#include

struct Student//定义储存学生信息的结构体

{

int num[20]; //定义一个存储学生学号的整型的数组

char name[20];//定义一个存储学生名字的字符类型的数组

int englishscore;//定义一个存储学生英语分数整型变量

int mathscore;//定义一个存储学生数学分数整型变量

int Cscore;//定义c语言分数变量

int all;

int average;

int place;

};

struct Student stu[4];//结构体中的变量数为4

struct temp//定义储存学生信息的结构体

{

int num1[20]; //定义一个存储学生学号的整型的数组

char name1[20];//定义一个存储学生名字的字符类型的数组

int englishscore1;//定义一个存储学生英语分数整型变量

int mathscore1;//定义一个存储学生数学分数整型变量

int Cscore1;//定义c语言分数变量

int all1;

int average1;

int place1;

};

struct temp stu1[4];//结构体中的变量数为4

void main(void)

{

struct Student *p;//申明指针指向结构体

struct temp;

int i,k,n;

p=stu;//将数组变量的初始地址赋予指针p

printf("请输入4学生的:\n");

printf("学号\t姓名\t英语成绩\t数学成绩\tC语言成绩\t总成绩\t平均成绩\t排名\n");

for(i=0;i<4;i++)//从键盘输入学生的信息

{

scanf("%6d %18s %3d %3d %3d",&stu[i].num,&stu[i].name,&stu[i].englishscore,&stu[i].mathscore,&stu[i].Cscore);

}

for(i=0;i<4;i++)

{

stu[i].all=stu[i].englishscore+stu[i].mathscore+stu[i].Cscore;

stu[i].average=stu[i].all/4;

}

for(int j=0;j<3;j++) /*外循环控制排序趟数,n个数排n-1趟*/

{

for(i=0;i<3-j;i++) /*内循环每趟比较的次数,第j趟比较n-j次*/

if(stu[i].all

{

stu1[i]=stu[i];

stu[i]=stu[i+1];

stu[i+1]=stu1[i];

}

}

printf("综合成绩排名信息/n");

printf("学号\t姓名\t英语成绩\t数学成绩\tC语言成绩\n");

for(i=1;i<4;i++)//从数组中读出学生的信息

{

stu[i].place=i+1;

printf(" %d %s %d %d %d %d %d %d",stu[i].num,stu[i].name,stu[i].englishscore,stu[i].mathscore,stu[i].Cscore,

stu[i].all,stu[i].average,stu[i].place);

}

printf("\n");

}

显示结果是:\c++\Microsoft Visual Studio\MyProjects\81\81.cpp(63) : error C2679: binary '=' : no operator defined which takes a right-hand operand of type 'struct temp' (or there is no acceptable conversion)

执行 cl.exe 时出错.

自学 c对结构体 交换 如何定义赋值 求大神了 求救

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。