![]() |
#2
亚小南2010-04-22 11:18
|

#include<iostream>
using namespace std;
struct student{
int number;
char sex[4];
struct student *next;
};
void initial(struct student *stu)
{
int flag=1;
int i=1;
do{
printf("请输入第%d个学生的学号:\n",i);
printf("hello !!!\n");
scanf("%d",&stu->number);
printf("请输入第%d个学生的性别:\n",i);
scanf("%s",&stu->sex);
stu=stu->next;
printf("是否继续输入?:\n");
printf("1 是; 0 否\n");
scanf("%d",&flag);
i++;
}while(flag);
}
void out(struct student *stu)
{
int i=1;
for(;stu->next;stu=stu->next)
{
printf("第%d个学生的学号:%d\n",i,stu->number);
printf("第%d个学生的学号:%s\n",i,stu->sex);
i++;
}
}
int main()
{
struct student *stu;
stu=new student[3];
initial(stu);
out(stu);
return 0;
}
using namespace std;
struct student{
int number;
char sex[4];
struct student *next;
};
void initial(struct student *stu)
{
int flag=1;
int i=1;
do{
printf("请输入第%d个学生的学号:\n",i);
printf("hello !!!\n");
scanf("%d",&stu->number);
printf("请输入第%d个学生的性别:\n",i);
scanf("%s",&stu->sex);
stu=stu->next;
printf("是否继续输入?:\n");
printf("1 是; 0 否\n");
scanf("%d",&flag);
i++;
}while(flag);
}
void out(struct student *stu)
{
int i=1;
for(;stu->next;stu=stu->next)
{
printf("第%d个学生的学号:%d\n",i,stu->number);
printf("第%d个学生的学号:%s\n",i,stu->sex);
i++;
}
}
int main()
{
struct student *stu;
stu=new student[3];
initial(stu);
out(stu);
return 0;
}
这个程序能够通过编译
但在运行的时候出了问题
在输入第二个学生的信息的时候
出现了错误
我想知道问题是出在哪里,怎么解决
希望各位大虾指教
感激不尽