#include<stdio.h> #include<string.h> struct student{ char name[20]; char sex[8]; int y; int m; int d; }s[30]; int main(){ int j,i=0; char str[20]; char name[20],sex[20]; while(1) { scanf("%s",str); if(strcmp(str,"add")==0) { scanf("%s%s%d%d%d",&s[i].name,&s[i].sex,&s[i].y,&s[i].m,&s[i].d); i++; } else if(strcmp(str,"name")==0) scanf("%s",name); else if(strcmp(str,"sex")==0) scanf("%s",sex); else if(strcmp(str,"quit")==0) break;//结束之后才输出吗 }//每次只能查询一个? for(j=0;j<i;j++) if(strcmp(s[j].name,name)==0) printf("%s %s %d-%d-%d\n",s[j].name,s[j].sex,s[j].y,s[j].m,s[j].d); for(j=0;j<i;j++) if(strcmp(s[j].sex,sex)==0) printf("%s %s %d-%d-%d\n",s[j].name,s[j].sex,s[j].y,s[j].m,s[j].d); return 0; } |
Double click to view unformatted code.