为什么输入性别时如果定义为字符数组的话可以,但如果是单一字符则不行?
输入性别时如果定义为字符数组的话可以,但如果是%c则不行。。。 #include<stdio.h>
#include<string.h>
int count=0;
struct abc{
char sex;
int xuehao;
char name[20] ;
} stud[10];
int search()
{
int i,t;
char ch[10];
printf("please input name");
scanf("%s",&ch);
for(i=0;i<=count;i++)
{if(strcmp(ch,stud[i].name))t=1;
else {t=0;break;}}
if(t==0)printf("sex=%c\nxuehao=%d\nname=%s",stud[i].a,stud[i].xuehao,stud[i].name);
else printf("wrong");
}
int add(int e)
{
printf("\nplease input x:");
scanf("%c",&stud[e].a);
printf("\nplease input xuehao:");
scanf("%d",&stud[e].xuehao);
printf("\nplease input name:");
scanf("%s",&stud[e].name);
count++;
}
main()
{
char ch,name[10];
do
{printf("1.search a stu\n");
printf("2.add a stu\n");
printf("3.exit\n");
ch=getchar();
switch(ch)
{ case '1':search();break;
case '2':add(count);break;
case '3':break;
default:printf("error!\n");
}
}while((ch=getchar())!='\t');
}