输入字符串遇到的问题
以下是我的一个未编完的程序,我想检验一下自己编写的正确性,所以在主函数调用链表函数#include<iostream.h>
#include<string.h>
class Student
{
public:
Student()
{
setID();
setname();
setchin();
setmath();
seteng();
}
void setID()
{
int a;
cout<<"输入所要建立的学生学号:";
cin>>a;
ID=a;
}
void setname()
{
cout<<"输入学生的姓名:";
cin.get(name,20);
}
void setchin()
{
int b;
cout<<"输入A课程的成绩:";
cin>>b;
chinese=b;
}
void setmath()
{
int c;
cout<<"输入B课程的成绩:";
cin>>c;
math=c;
}
void seteng()
{
int d;
cout<<"输入C课程的成绩:";
cin>>d;
english=d;
}
protected:
int ID;
char name[20];
int chinese;
int math;
int english;
}; //类定义
struct Date
{
Student student;
Date *next;
}; //结构定义
Date *List()
{
Date *head;
head=NULL;
Date *ps;
ps=new Date;
Date *end;
end=ps;
for(int i=0;i<3;i++)
{
if(head==NULL)
{
head=ps;
}
cout<<endl;
ps=new Date;
end->next=ps;
end=end->next;
}
end->next=NULL;
return head;
} //建立数据链表
void main()
{
List();
}
结果可通过编译,不过不能输入字符串,会自动调到下一个函数。不解为何会这样的情况!
菜鸟问题,正在学类,望各位大大解答一下!