これが私がやろうとしていることです。ユーザーから 3 つのユーザー入力 (名前、年齢、性別) を取得していますが、これらの入力はすべて 1 つのレコードです。たとえば、 name=John、age= 15、gender= M の場合、これは John という人物のレコードです。
上記の例のように 5 つのレコードを作成しようとしていて、それを配列に格納しようとしています。問題は、私がそれを行う方法を知らないことです。
これが私がこれまでに行ったことです:
#include<stdio.h>
#include<conio.h>
#define Max 40
struct person{
char name[Max];
int age;
char gender;
};
void inputdetails(struct person *,struct person []);
main()
{
struct person students[5]; //created an array type person to store the records
struct person k;
inputdetails(&k,students); //passed the array in to the input details function
}
void inputdetails(struct person *q,struct person hello[])
{
int i=0;
for(;i<5;i++)
{
printf("Enter name\n");
gets(q->name);
printf("Enter age\n");
scanf("%d",&(q->age));
fflush(stdin);
printf("Enter gender\n");
scanf("%c",&(q->gender));
}
}
これを行うにはどうすればよいですか? 1つのレコード全体を配列に格納するにはどうすればよいですか?レコードを表示する関数を作成するときに、インデックス番号を指定するだけで、そのインデックスに格納されているレコードが表示されますか?
お時間をいただきありがとうございます。