當前位置:首頁 » 密碼管理 » 結構體數組訪問

結構體數組訪問

發布時間: 2024-12-08 13:02:24

1. c語言結構體數組的輸入輸出

C

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

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

定義與聲明

結構體的定義如下所示,struct為結構體關鍵字,tag為結構體的標志,member-list為結構體成員列表,其必須列出其所有成員;variable-list為此結構體聲明的變數。

在實際應用中,C語言結構體數組常被用來表示一個擁有相同數據結構的群體,比如一個班的學生、一個車間的職工等。

在C語言中,定義結構體數組和定義結構體變數的方式類似;

例:

struct stu{

char*name;//姓名

int num;//學號

int age;//年齡

char group;//所在小組

float score;//成績

}class[5];

表示一個班級有5個學生。

(1)結構體數組訪問擴展閱讀:

結構體數組的引用與引用一個結構體變數在原理上是一樣的。只不過結構體數組中有多個結構體變數,我們只需利用for循環一個一個地使用結構體數組中的元素。

下面編寫一個程序,編程要求:從鍵盤輸入5個學生的基本信息,如姓名、年齡、性別、學號,然後將學號最大的學生的基本信息輸出到屏幕。

#include<stdio.h>

#include<string.h>

struct STU

{

char name[20];

int age;

char sex;

char num[20];

};

void OutputSTU(struct STU stu[5]);

//函數聲明,該函數的功能是輸出學號最大的學生信息

int main(void)

{

int i;

struct STU stu[5];

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

{

printf("請輸入第%d個學生的信息:",i+1);

scanf("%s%d%c%s",

stu<i>.name,

&stu<i>

.age,&stu<i>

.sex,stu<

i>.num);/*%c

前面要加空格,不然輸入時會將空格賦給%c*/

}

OutputSTU(stu);

return 0;

}

void OutputSTU(struct STU stu[5])

{

struct STU stumax=stu[0];

int j;

for(j=1;j<5;++j)

{

if(strcmp(stumax.num,stu[j]

.num)<0)//strcmp函數的使用

{

stumax=stu[j];

}

}

printf("學生姓名:%s學生年齡:%d學生性別:%c學生學號:

%s ",stumax.name,

stumax.age,stumax.

sex,stumax.num);

}

輸出結果是:

請輸入第1個學生的信息:小紅22 F Z1207031

請輸入第2個學生的信息:小明21 M Z1207035

請輸入第3個學生的信息:小七23 F Z1207022

請輸入第4個學生的信息:小欣20 F Z1207015

請輸入第5個學生的信息:小天19 M Z1207024

學生姓名:小明學生年齡:21學生性別:M學生學號:Z1207035

熱點內容
linuxmysql源碼包 發布:2025-05-11 06:07:39 瀏覽:619
密碼提示默認是什麼意思 發布:2025-05-11 06:06:52 瀏覽:635
python語言編程入門 發布:2025-05-11 06:06:49 瀏覽:800
安卓855手機哪個性能最好 發布:2025-05-11 06:01:49 瀏覽:144
xrv哪些配置帶天窗 發布:2025-05-11 05:53:10 瀏覽:508
簡述ftp伺服器的功能 發布:2025-05-11 05:44:27 瀏覽:848
安卓手機攝像頭連接雲存儲 發布:2025-05-11 05:10:52 瀏覽:35
瑞虎三都有哪些配置 發布:2025-05-11 05:05:08 瀏覽:951
mc非正版伺服器怎麼做 發布:2025-05-11 05:04:54 瀏覽:309
安卓手機九宮格忘記密碼怎麼解 發布:2025-05-11 05:00:30 瀏覽:596