C++问题。。高手进来。。。
#include<iostream>//#include<string>
#include "student_h.h"
using namespace std;
int student::input(int a)
{
for(int i=0; i<a; i++)
{
cout<<"请输入第"<<i+1<<"个同学的信息:"<<endl;
cout<<"\t\t\t学 号:";
cin>>Num[i];
cout<<"\t\t\t名 字:";
cin>>name[i];
cout<<"\t\t\t性 别:";
cin>>易做图[i];
cout<<"\t\t\t出生年月:";
cin>>year[i];
cout<<"\t\t\t班 级:";
cin>>banji[i];
cout<<"\t\t\t联系方式:";
cin>>call[i];
}
check(a, Num, name);
return 0;
}
int student::check(int a, int Num[], string name[])
{
int check_i;
int check_num;
string check_name;
cout<<"************你选择的功能是查询************"<<endl;
cout<<"\t\t\t1、按学号查询"<<endl;
cout<<"\t\t\t2、按名字查询"<<endl;
cout<<"请选择:";
cin>>check_i;
switch(check_i)
{
case 1:
{
cout<<"请输入要查询的学号:";
cin>>check_num;
for(int i=0; i<a; i++)
{
if(check_num == Num[i])
{
cout<<"该学生的信息如下:"<<endl<<endl;
cout<<"\t\t\t学 号:"<<Num[i]<<endl;
cout<<"\t\t\t名 字:"<<name[i]<<endl;
cout<<"\t\t\t名 字:"<<易做图[i]<<endl;
cout<<"\t\t\t出生年月:"<<year[i]<<endl;
cout<<"\t\t\t班 级:"<<banji[i]<<endl;
cout<<"\t\t\t联系方式:"<<call[i];
break;
}
else
{
cout<<"没找到该生信息,请检查是否输入错误!!!\n\n";
break;
}
}
break;
}
case 2:
{
cout<<"请输入要查询的姓名:";
cin>>check_name;
for(int i=0; i<a; i++)
{
if(check_name == name[i])
{
cout<<"该学生的信息如下:"<<endl<<endl;
cout<<"\t\t\t学 号:"<<Num[i]<<endl;
cout<<"\t\t\t名 字:"<<name[i]<<endl;
cout<<"\t\t\t名 字:"<<易做图[i]<<endl;
cout<<"\t\t\t出生年月:"<<year[i]<<endl;
cout<<"\t\t\t班 级:"<<banji[i]<<endl;
cout<<"\t\t\t联系方式:"<<call[i];
break;
}
else
{
cout<<"没找到该生信息,请检查是否输入错误!!!\n\n";
break;
}
}
}
default:
cout<<"输入错误!!!"<<endl<<endl;
break;
}
return 0;
}
为什么我输入的学生信息,想按条件查询,都只能查询到第一个,想查询第一个之后的就结束了,帮我看看。。哪里错了。。。谢谢。。
追问:那如果查完之后没有呢,我想输出“没有找到该生信息”怎么办??应该那里修改好呢??