資料型別——基本資料型別&構造資料型別
構造資料型別:e.g.陣列——儲存多個同種型別資料,結構——儲存多個不同型別資料。
定義結構:
struct 結構名——————————struct student
————————————————}
定義變數:
struct student alice, bob;定義了結構體變數alice, bob。
(or使用巨集定義用乙個符號常量代替結構型別,例如用stu代替所有的struct student,但需要先定義乙個#define stu struct student)
呼叫:alice.num = *** ,alice.name, alice.score
初始化:struct student alice;
注意vs2017中結構初始化時只能用{},不可以用()
注意vs2017中未定義長度的char輸入都要定義為const char,否則會報「const char 無法用於初始化char型別的資料」的錯誤。
定義:struct student *p;
變數:p = &alice;
呼叫:alice.name——(*p).name——p->name等價
陣列:p = needs;——等價於——p = &needs[0];
示例**如下:
#include #include #define n 3
struct subject
;struct student
bob = ;
struct minneed
; int main()
,, };
//定義指標
struct minneed *pneed;
pneed = needs;
struct student *p;
p = &bob;
int i, m = 0;
for (i = 0; i < n; i++)
for (i = 1; i < n; i++)
if (needs[m].age < needs[i].age)
m = i;
printf("年齡最大的人的個人資料:\n");
printf("姓名:%s\n性別%s\n年齡%d\n位址%.2f\n", needs[m].name, (needs[m].***==1)?"男":"女", needs[m].age, needs[m].amount);
//結構變數一般初始化
printf("%s %d %d %s %f %f %f",bob.name,bob.num,(*p).age,p->***,bob.score.chinese,bob.score.english,bob.score.math);
system("pause");
return 0;
}
C語言學習之結構體等
結 構 體 1.結構體的定義 struct 結構體名 2.結構體的初始化 1.有名結構體初始化 1.全部初始化 struct student struct student a 2.部分初始化 struct student a 3.定義結構體時初始化定義變數 struct student a 2.無名...
C語言學習 結構體
include include include 宣告結構體 struct student student結構體名 int age char int main 初始化結構體變數 bbbb strcpy s1.name,bbbb s1.age 22 s1.m 列印結構體變數,逐個列印 printf s ...
C語言學習 結構體
題目要求 學生的記錄由學號 姓名 專業組成,根據班級人數,將學生記錄存放在結構體陣列中,由於部分同學轉專業,學生記錄發生了變化,請程式設計實現根據學號查詢查詢學生並修改專業,分別輸出轉專業和未轉專業的學生記錄。要求 班級人數 學生記錄均由鍵盤輸入 include define m 100 要求 1....