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

c語言結構體變數如何輸入

發布時間: 2023-05-28 13:41:31

c語言結構體數組 的輸入方式

1、如果從標准輸入中輸入,只有挨個輸入每個結野者構體對象的成員。如果從文件輸入,則埋汪可以用fread函數直接讀入整個對象。
2、常式:
#include <stdio.h>
struct student
{
int num;
char name;
int score[3];
};
void main()
{
void print(struct student);
struct student stu[5];
int i;
for(i=0;i<5;i++) //問題在%c前要一個彎脊仔空格,還有少了&
{
scanf("%d %c%d%d%d",&stu[i].num,&stu[i].name,&stu[i].score[0],&stu[i].score[1],&stu[i].score[2]);
}
printf("輸入完成\n");
for(i=0;i<5;i++)
print(stu[i]);
}
void print(struct student stu)
{
printf("%d%c%d%d%d\n",stu.num,stu.name,stu.score[0],stu.score[1],stu.score[2]);
}

Ⅱ c語言結構體變數怎麼使用

結構體變數簡稱為結構變數,它由結構類型定義,有三種定義方法。下面以定義結構類型 book 和結構變數mybook 、 storybook 為例說明之。
1. 先定義結構類型,再定義結構變數。
struct book /* 定義結構體類型 */
{
char bookname[20];
float price;
char publisher[20];
char author[10];
} ;
struct book mybook, storybook;
用這種方法定義結構變數,是最常用的方法,但須注意不能省略關鍵字「 struct 」。還可以在定義結構變數的同時給它的成員賦初值。如:
struct book /* 定義結構體類型 */
{
char bookname[20];
float price;
char publisher[20];
char author[10];
} ;
struct book mybook = { 「maths」, 24.7, 「 電子社 」, 「zhao」 }, storybook;
則, mybook 變數的 price = 24.7 。
2. 定義結構類型的同時定義結構變數。
struct book /* 定義結構體類型 */
{
char bookname[20];
float price;
char publisher[20];
char author[10];
} struct book mybook, storybook;
3. 不定義結構類型,直接定義結構變數。
struct /* 不定義結構類型名 */
{
char bookname[20];
float price;
char publisher[20];
char author[10];
} struct book mybook, storybook;
需要說明的是,當某結構類型的成員又是另外一個結構類型時,稱嵌套定義,其定義方法如下:
struct brith_date
{
int month ;
int day ;
int year ;
} ;
struct
{
char name[10] ;
char address[30];
char tel[12];
int age;
struct data birthday;
char sex[3];
} student_01 , employee ;
此例直接定義了 student_01 和 employee 兩個變數,但是沒有定義此結構體的名字,因此不能再定義與student_01 和 employee 同類的其它結構變數了!如下行定義是錯誤的:
truct boy, girl;

Ⅲ c語言中如何用子函數調用結構體中的變數實現數據的輸入與輸出。

用子函數實現結構體數據的輸入與輸出:對於多數子函數的輸入與輸出,有一定規律性可言。
方法1:void型不傳值傳址調用與聲明。main中聲明void date_in(),void date_pout()。函數定義前一定在main()前先定義結構體變數(全局變數),然後定義輸入或輸出程序段。此時再main()調用即可。
如下:
struct student
{
char name[20];
int old;
char sex;
}stu;
void date_in();
void main()
{ date_in();
}
void date_in()
{ scanf("%s%d/c,"stu.name,stu.old,stu.sex);
}時間問題程序有點簡潔,有問題請追問,很樂意與你分享。