本文目录一览:
关于C语言结构体的表示
scanf(“%d,%s,%s,%d”,t-student.sno,t-student.name,t-student.gender,t-student.score);
printf(“sno:%d,name:%s,gener:%s,score:%d/n”,p-student.sno,p-student.name,p-student.gender,p-student.score);
改成这样的就好了,你知道的scanf的输入要对赋予的变量取地址输入,但是如果定义的已经是一个地址,那么就不用加取址符了,因为你定义的是一个sno是一个int,是一个数,不是一个地址,所以要用取地址符,但是输出的时候就不用了
C语言中if(n.sno==sno)是什么意思呢?
n是一个结构(struct),里面有个成员名字叫sno,另外这个函数里面也有一个变量叫做sno,这句话的作用就是比较这个成员和这个变量是不是相等的
C语言中scanf(“%s”,&s1.sno)是什意思
s1是个结构变量,sno是它的一个成员,这是给成员sno输入一个字符串
c语言解释 谁能帮我解释下,谢谢你们了
#include stdio.h
struct mes {
int sno;//学号
char sname[20];//姓名
float grade1;//数学分数
float grade2;//计算机分数
float sum;//总分
float avg;//平均分
}student [5]; //定义结构体变量数组
int main()
{
int i,j,k;
struct mes temp;
printf(“请输入五位学生的信息\n”);
printf(“学号\t姓名\t数学\t计算机\n”);
for(i=0;i5;i++) {
scanf(“%d\t%s\t%f\t%f”,student[i].sno,student[i].sname,student[i].grade1,student[i].grade2);//输入一个学生的学习成绩
student[i].sum=student[i].grade1+student[i].grade2;//计算该学生的总成绩
student[i].avg=student[i].sum/2;//计算该学生的平均分
} //输入每位学生间隔的信息时运用Tab键
//冒泡排序法,按照总分由高到底的顺序排列
for(i=0;i4;i++) {
k=i;
for(j=i+1;j5;j++){//找出总分最高分学生
if(student[k].sumstudent[j].sum)
k=j;
}
temp=student[k];
student[k]=student[i];
student[i]=temp;
}
printf(“学生成绩的排序结果为:\n”);
for(i=0;i5;i++) {
printf(“学号:%d,姓名:%s,数学成绩:%3.1f,计算机成:%3.1f:%3.1f,分:%3.1f\n”,
student[i].sno,student[i].sname,student[i].grade1,student[i].grade2,student[i].avg,student[i].sum);
} //显示五位同学的信息 return ;
}
原创文章,作者:UABL,如若转载,请注明出处:https://www.506064.com/n/134668.html