大神们,麻烦帮忙看看这个程序
程序代码:
#include<stdio.h> #include<stdlib.h> #include<string.h> struct student { char name[10]; long id; int cn; int match; }stu[3]={{"liang",1273,80,86},{"zhang",1277,86,79},{"pang",1269,82,86}}; void main() { char ch; printf("A. 请输入你要查询的学生的信息的学号\n"); printf("B. 请输入你要查询的学生的信息的名字\n"); switch(ch=getchar()) { case 'A': { int i; long number; printf("请输入学生的学号:\n"); scanf("%d",&number); for(i=0;i<3;i++) { if(number==stu[i].id) { printf("该学生的信息为:\n"); printf("%-10s%5d%7d%7d\n",stu[i].name,stu[i].id,stu[i].cn,stu[i].match); } } };break; case 'B': { int i; char names[10]; printf("请输入学生的姓名:\n"); for(i=0;i<3;i++) { if(strcmp(gets(names),stu[i].name)==0)//运行程序时,里面要打印的内容没办法输出,不知道怎么回事 { printf("该学生的信息为:\n"); printf("%-10s%5d%7d%7d\n",stu[i].name,stu[i].id,stu[i].cn,stu[i].match); } } };break; default:printf("error!\n"); } } 本来是要实现按姓名查找功能,但是输入姓名后,却没办法显示要输出的内容,多谢大神们了!@