我编写了一个程序,它从用户那里获取一个数字,然后从用户那里获取每个数字的名称……例如,如果用户输入数字 10,它将采用 10 个名称并将其放入一个数组中结构......一切都很好,除了当我打印名字时,它跳过了第一个字母......就像我输入名字“Amit”一样,它打印“mit”......我输入的最后一个字符串根本没有保存。这是我写的:
const number_candidates; // Getting the number of candidates
#define MAX 256
#define min_candidate 10
#define max_candidate 60000
typedef struct candidate // Getting details for each candidate
{
char name[MAX];
int sing_grade;
int per_grade;
int cam_grade;
int sharmanti_grade;
}candidate;
void get_details_candidates(candidate candidate[MAX])
{
int i = 0;
printf ("\n");
for (i = 0 ; i < number_candidates ; i++)
{
printf ("Please enter the %d name: ", i + 1);
fgets (candidate[i].name, MAX, stdin);
getchar();
}
}
这里是印刷:
for (i = 0 ; i < number_candidates ; i++)
{
printf ("%s\n", candidates[i].name);
}
谢谢你的帮助!