我需要一个用户输入一个字符串,并且所说的字符串应该存储在C中的一个结构变量中



我必须创建一个运动员管理系统。我对C还很陌生,所以请原谅我是个笨蛋,问了一些愚蠢的问题。因此,当我接受运动员的所有输入时,它会将字符串组件打印为心形表情符号。因此将其更改为使用strcpy((,但当我这样做时,程序在我输入名称后崩溃。所以idk如何存储用户输入的名称。

typedef struct athlete
{
char name[100];
int id;
int age;
}ath;

这是我的结构

do
{
printf("Please enter the participant's name:n");
scanf("%s",aname);
for ( i = 0; i < strlen(aname); i++ ){
if(isalpha(aname[i]) == 0){
printf("here");
printf("Name is invalid! Please re-enter the namen");
j = 1;
}
else{
printf("Here");
a.name = strdup(aname);
j = 0;
}
}

} while(j==1);

这是我的验证和用户输入部分

所以在输入名称后,它崩溃了(这里的打印语句都没有执行,所以我真的不知道该怎么办,或者如果我错过了一步,任何帮助都将不胜感激

尝试以下操作:做{printf("请输入参与者的姓名:"(;scanf("%99s",aname(;如果(aname[0]!=0(j=0;strcpy(ath.name,aname(;}而(j==1(;

相关内容

最新更新