|  | 
 
| 
#include <stdio.h>
x
马上注册,结交更多好友,享用更多功能^_^您需要 登录 才可以下载或查看,没有账号?立即注册  #include <windows.h>
 #include <string.h>
 #define LEN 10 //保存学生的名字
 #define STU_LEN 3//5个学生
 struct birday{
 int year;
 int munth;
 int day;
 };
 struct student{
 char name[LEN];
 double value;
 char xh[5];
 struct birday happy;
 };
 void cc(const struct student money[],int n);
 void mm(const struct student money[],int n);
 int main (void)
 {
 struct student pt[STU_LEN];
 int i;
 char arr[10];
 char ch;
 printf("下面请依次输入本班同学的成绩\n");
 for (i = 0;i < STU_LEN;i++)//向结构数组输入内容
 {
 printf("input 学号:");
 gets(pt[i].xh);
 printf("input 姓名:");
 gets(pt[i].name);
 printf("input 成绩:");
 scanf("%lf",&pt[i].value);
 printf("input 生日 :(year-month-day)");
 scanf("%d%d%d",&pt[i].happy.year,&pt[i].happy.munth,&pt[i].happy.day);
 while (getchar() != '\n')
 continue;
 system("cls");
 
 }
 printf("if you want find witcha student score,please enter the number");
 printf("\nyou can enter 1 and 2");
 printf("\n1:输入姓名查找");
 printf("\n2:输入学号查找\n");
 while (ch = getchar())//判断输入,调用函数,
 {
 if (ch == '1')
 cc(pt,STU_LEN);
 else if (ch =='2')
 mm(pt,STU_LEN);
 else
 printf("input again!");
 }
 
 return 0;
 
 }
 void cc(const struct student money[],int n)
 {
 char a[10];
 int i;
 printf("请输入姓名:");
 gets(a);
 for (i = 0;i < n;i++)
 {
 if (strcmp(a,money[i].name) == 0)
 {
 printf("name is %s",money[i].name);
 printf("\nvalue is %f",money[i].value);
 printf("\nxh is %s",money[i].xh);
 printf("\nbirday is %d-%d-%d",money[i].happy.year,money[i].happy.munth,money[i].happy.day);
 }
 }
 
 }
 void mm(const struct student mon[],int n)
 {
 char b[10];
 int i;
 printf("请输入学号:");
 gets(b);
 for (i = 0;i < n;i++)
 if (strcmp(b,mon[i].xh) == 0)
 {
 printf("name is %s",mon[i].name);
 printf("\nvalue is %f",mon[i].value);
 printf("\nxh is %s",mon[i].xh);
 printf("\nbirday is %d-%d-%d",mon[i].happy.year,mon[i].happy.munth,mon.happy.day);
 }
 }
 
 
 
 //编译可以通过,内容输入完,在输入1或者2的时候不执行函数。。试了好多次,不知道哪里出了问题,求解决。。[/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i]
 
1. 函数cc  mm 里加 fflush(stdin);2. 使用struct student pt[STU_LEN];  这是数组存放, 用下标, 几个for里面加[i]
 | 
 |