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

結構體數組訪問

發布時間: 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

熱點內容
網站在文件夾 發布:2025-03-06 20:51:46 瀏覽:112
阿瑪尼行李箱密碼鎖如何換密碼 發布:2025-03-06 20:46:02 瀏覽:102
xp共享文件夾win7無法訪問 發布:2025-03-06 20:35:40 瀏覽:585
oracle存儲過程excel 發布:2025-03-06 20:35:10 瀏覽:888
lay源碼 發布:2025-03-06 20:25:29 瀏覽:751
專家系統原理與編程 發布:2025-03-06 20:21:05 瀏覽:641
腳本召喚暴龍 發布:2025-03-06 20:19:29 瀏覽:81
訪問學者邀請函英文 發布:2025-03-06 20:18:06 瀏覽:381
安卓對方已振鈴是什麼意思 發布:2025-03-06 20:14:59 瀏覽:395
迅雷怎麼設置存儲卡 發布:2025-03-06 20:14:47 瀏覽:294