當前位置:首頁 » 編程語言 » c語言學生結構體
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

c語言學生結構體

發布時間: 2022-08-24 05:25:33

c語言求助:定義一個學生結構體數組stu[10],結構體類型



#include <stdio.h>


#define N 10


typedef struct student {

int num;//成員num (學號)的類型為整型

char name[21];//成員name (姓名)的類型為字元數組

char sex;//成員sex(性別)的類型為字元型

int age; //成員score(分數)的類型為double類型

}stu;


void show(stu a[],int n) {

for(int i = 0; i < n; ++i)

printf("%d %d %s %c %d ",i + 1,a[i].num,a[i].name,a[i].sex,a[i].age);

printf(" ");

}


int find(stu a[],int n,int num) {

for(int i = 0; i < n; ++i) {

if(a[i].num == num) {

printf("%d %s %c %d ",a[i].num,a[i].name,a[i].sex,a[i].age);

return i;

}

}

return 0;

}


int main() {

int i,num;

stu a[N];

for(i = 0;i < N; ++i) {

scanf("%d",&a[i].num,a[i]);

fflush(stdin);

scanf("%s",a[i].name);

fflush(stdin);

scanf("%c",&a[i].sex);

scanf("%d",&a[i].age);

}

show(a,N);

printf("請輸入待查學號:");

scanf("%d",&num);

if(!find(a,N,num)) printf(" 沒有找到學號為%d的學生! ",num);

return 0;

}

㈡ c語言:結構體:有3個學生,每個學生的數據包括學號、姓名、3門課的成

#include<stdio.h>
struct student
{
char number[20];//number學號
char name[20];//name姓名
float score[3];//成績
float aver;//平均分
};
int main()
{
struct student stu[3];
int i,max;
printf("請輸入三位學生的學號、姓名、3門課的成績(以空格分開輸入):\n");
for(i=0;i<3;i++)
{
printf("請輸入第%d個學生的信息:",i+1);
scanf("%s%s%f%f%f",stu[i].number,stu[i].name,&stu[i].score[0],&stu[i].score[1],&stu[i].score[2]);
stu[i].aver=(stu[i].score[0]+stu[i].score[1]+stu[i].score[2])/3;
}
printf("學號 姓名 c語言 高數 英語 平均\n");
for(i=0;i<3;i++)
{
printf("%-5s %-5s %-6.2f %-6.2f %-6.2f %-6.2f\n",stu[i].number,stu[i].name,stu[i].score[0],stu[i].score[1],stu[i].score[2],stu[i].aver);
}
return 0;
}

㈢ c語言結構體是什麼

C語言結構體(Struct)從本質上講是一種自定義的數據類型,只不過這種數據類型比較復雜,是由 int、char、float 等基本類型組成的。你可以認為結構體是一種聚合類型。

在實際開發中,我們可以將一組類型不同的、但是用來描述同一件事物的變數放到結構體中。例如,在校學生有姓名、年齡、身高、成績等屬性,學了結構體後,我們就不需要再定義多個變數了,將它們都放到結構體中即可。

簡介

關鍵字struct和結構體名組合成一種類型標識符,其地位如同通常的int、char等類型標識符,其用途就像 int 類型標識符標識整型變數一樣可以用來定義結構體變數。

定義變數以後,該變數就可以像定義的其他變數一樣使用了;成員又稱為成員變數,它是結構體所包含的若干個基本的結構類型,必須用「{}」括起來,並且要以分號結束,每個成員應表明具體的數據類型。

㈣ c語言中怎麼建立一個學生的結構體,包括名字學號性別

struct student
{
char name[10];
char sex[10];
int old;
}s[100];
main()
{
int n,k=5;char name[10];
for(i=0;i<k;i++)
{
printf("請輸入姓名:");scanf("%s",s[i].name);
printf("請輸入性別:");scanf("%s",s[i].sex);
printf("請輸入年齡:");scanf("%s",s[i].old);
}
printf("請輸入要查找的人名");scanf("%s",name);
for(i=0;i<k;i++)
{if(strcmp(th[i].name,name)==0)
printf("%s,性別%s,年齡%d",s[i].name,s[i].sex,s[i].old);
}
}

這個是簡單的,沒有添加和刪除

㈤ 求C語言答案.定義一個學生結構體就一個學生,包含學生姓名,學號,性別,年齡。輸入年齡學號顯示此學生的信息

typedef struct student //學生
{
char sno[max]; // 學號
char sname[max]; //姓名
char sex[max]; //性別
char age[max]; //年齡

struct student* next;
} student;

void regist()
{
char ch;
student *s,*ptr; //s用來建新結點,ptr用來暫存頭結點

do
{

s=(student*)malloc(sizeof(student)); // 新建一個學生結點

printf("\n開始注冊..."); //開始注冊
printf("\n請輸入該學生的學號:");
scanf("%s",s->sno);
printf("\n請輸入該學生的姓名:");
scanf("%s",s->sname);
printf("\n請輸入該學生的性別:");
scanf("%s",s->sex);
printf("\n請輸入該學生的年齡:");
scanf("%s",s->age);

ptr=head;
head=s;//將新結點插入隊頭
s->next=ptr;

return;
}
void print() //輸出全部學生信息
{
student *ptr=head;
printf("\n學號 姓名 年齡 性別 ");
while(ptr)
{
LinePrint(ptr);
ptr=ptr->next;
}
printf("\n");
return;
}

㈥ c語言定義一個學生結構

#include<stdio.h>
#include<string.h>

typedefstructStudent{
intID;
charName[32];
charSex;//M,代表男,F,代表女
floatMathScore;
floatChineseScore;
floatEnglishScore;
};

floatGetAverageScore(Student*ptr_stu)
{
intnAverageScore=(ptr_stu->MathScore+ptr_stu->ChineseScore+ptr_stu->EnglisgScore)/3;
returnnAverageScoer;
}

floatGetMaxScore(Student*ptr_stu)
{
floatmaxScore=ptr_stu->MathScore;
if(ptr_stu->ChineseScore>maxSocre)
{
maxScore=ptr_stu->ChineseScore;
}
if(ptr_stu->EnglishScore>maxScore)
{
maxScore=ptr_stu->EnglishScore;
}

returnmaxScore;
}

intmain()
{
Studentstu;
stu.ID=12138;
strcpy(stu.Name,"張三");
stu.Sex='M';
stu.MathScore=88;
stu.ChineseScore=92;
stu.EnglishScore=76;

floatmaxScore,averageScore;
maxScore=GetMaxScore(&stu);
averageSocre=GetAverageScore(&stu);

printf("MaxScoreis:%f AverageScoreis:%f",maxScore,averageScore);
return0;
}

㈦ c語言結構體是什麼

c語言結構體是:

C語言結構體Struct從本質上講是一種自定義的數據類型,只不過這種數據類型比較復雜,是由int、char、float等基本類型組成的。你可以認為結構體是一種聚合類型。

在實際開發中,我們可以將一組類型不同的、但是用來描述同一件事物的變數放到結構體中。例如,在校學生有姓名、年齡、身高、成績等屬性,學了結構體後,我們就不需要再定義多個變數了,將它們都放到結構體中即可。

c語言簡介

在C語言中,可以使用結構體Struct來存放一組不同類型的數據。結構體的定義形式為,struct結構體名(結構體所包含的變數或數組)。

結構體是一種集合,它裡麵包含了多個變數或數組,它們的類型可以相同,也可以不同,每個這樣的變數或數組都稱為結構體的成員Member。

㈧ c語言裡面的結構體是什麼意思

結構體(struct)是由一系列具有相同類型或不同類型的數據構成的數據集合,叫做結構。

在C語言中,結構體(struct)指的是一種數據結構,是C語言中聚合數據類型(aggregate data type)的一類。結構體可以被聲明為變數、指針或數組等,用以實現較復雜的數據結構。

結構體同時也是一些元素的集合,這些元素稱為結構體的成員(member),且這些成員可以為不同的類型,成員一般用名字訪問

(8)c語言學生結構體擴展閱讀

將一個結構體變數中的數據傳遞給另一個函數,有下列3種方法:

(1) 用結構體變數名作參數。一般較少用這種方法。

(2) 用指向結構體變數的指針作實參,將結構體變數的地址傳給形參。

(3) 用結構體變數的引用變數作函數參數。

在軟體開發過程中,常常需要動態地分配和撤銷內存空間,例如對動態鏈表中結點的插入與刪除。C語言中是利用庫函數malloc和free來分配和撤銷內存空間的。

㈨ 用C語言:定義一個學生結構體,包括6個成員:姓名,班級,英語成績,數學成績和總成績。

#include struct student { char name[20]; int idnum; float score[3]; //分別存三科成績 double total; // 總分};struct student * highscore(struct student *s, int n){ int i; struct student * high = s; for(i = 0; i n; i++) { (s+i)->total = (s+i)->score[0] + (s+i)->score[1] + (s+i)->score[2]; if(high->total (s+i)->total) high = s+i; } return high;}main(){ struct student *s, student[5]; // 錄入學生信息 for(s = student; s student+5; s++) { printf("輸入第%d個學生的信息:\n", s-student+1); printf("姓名:"); scanf("%s", s->name); printf("學號:"); scanf("%d", &s->idnum); printf("語文 數學 英語:\n"); scanf("%f %f %f", &(s->score[0]), &(s->score[1]), &(s->score[2])); } // 輸出學生信息 printf("\n學生信息\n姓名\t學號\t語文\t數學\t英語\n"); for(s = student; s student+5; s++) printf("%s\t%d\t%.1f\t%.1f\t%.1f\n", s->name, s->idnum, s->score[0], s->score[1],s->score[2]); // 計算學生總分病返回總分最高的學生信息 s = highscore(student, 5); printf("\n總分最高的學生是:%s,學號:%d\n成績:語文:%.1f數學:%.1f英語:%.1f總分:%.1f\n", s->name, s->idnum, s->score[0], s->score[1],s->score[2], s->total);}