/* 通過函數完成對結構體變量的輸入輸出 */ #include <stdio.h> #include <string.h> void InputStudent(struct Student *); void OutputStudent(struct Student stu); struct Student { int age; char sex; char name[100]; } ;//分號不能省略 int main(void) { struct Student st; InputStudent(&st);//對結構體變量輸入 ,必須發送st的地址 // printf("%d %c %s\n", st.age, st.sex, st.name); OutputStudent(st);//對結構體變量輸出 ,可以發送st的地址,也可以發送st內容 return 0; } void InputStudent(struct Student * pstu)//pstu只占4個字節 { pstu->age = 10; strcpy(pstu->name, "張三");//不能寫成 stu.name = "張三" (* pstu).sex = 'F'; } void OutputStudent(struct Student stu) { printf("%d %c %s\n", stu.age, stu.sex, stu.name); } /* //本函數無法修改主函數st的值 void InputStudent(struct Student stu) { stu.age = 10; strcpy(stu.name, "張三");//不能寫成 stu.name = "張三" stu.sex = 'F'; } */