本文目錄一覽:
關於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/zh-hant/n/134668.html