c语言,为什么没办法输出我输入的姓名啊?

请忽略我一堆的头文件还有结构体。我输入是这样的格式:

1 张三 2 李四 3 王五 4 赵六 5 李白

输出date.name的时候总是输出奇怪的东西,和我输入的名字关系不大

既然是五人的,date必须是数组,修改如下,供参考:

#include<stdio.h>

struct Date {
       char num[20];
       char name[20];
}date[5];


int main()
{
    int i;
    printf("请输入五位参赛者:编号  姓名\n");
    for(i=0;i<5;i++)
    {
        scanf("%s",date[i].num);
        getchar();
        scanf("%s",date[i].name);
        getchar();
    }
    for(i=0;i<5;i++){ puts(date[i].num);puts(date[i].name);}
    
    return 0;
}

 

date.num[i]只是num数组的第i个元素,

应该声明数组date[5]

输入用date[i].num,date[i].name

输出也要用循环puts(date[i].num)