标题:看一下这个程序
只看楼主
lionmusicyj
Rank: 1
等 级:新手上路
帖 子:98
专家分:0
注 册:2008-9-20
结帖率:100%
 问题点数:0 回复次数:6 
看一下这个程序
写的一个简单的用结构体的程序,目的是输入几个数据然后依次输出,运行的时候输入可以,但是要输出输入的数据的时候却会有个 系统丢失 错误,小弟想很久想不通,忘高手指点一下~!
#include <iostream>
#include <string>
using namespace std;
struct student
{
    int num;
    string name;      
};
int i=1;
int main()
{
   student stu[3];
   void in_put(student stu[]);
   in_put(stu);
   system("pause");
   return 0;
}
void in_put(student stu[])
{
   
   for(i=1;i<4;i++)          //输入数据,刚刚又试了一下,好象是输入数据后按下回车就会有系统错误了~!
   {
    cin>>stu[i].num;
    cin>>stu[i].name;
   };
   for(i=1;i<4;i++)          //输出数据

   {
    cout<<stu[i].num;
    cout<<stu[i].name;
   };
}
搜索更多相关主题的帖子: include system return 结构体 
2008-09-28 00:43
rivulettornado
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2008-9-28
得分:0 
回复 1# lionmusicyj 的帖子
for(i=1;i<4;i++)
C语言的下标是从0开始的,对于本程序中,就是应该是从0-2,不是从1-3.

西北望,射天狼。
2008-09-28 07:05
chaming321
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2008-2-28
得分:0 
回复
你也可以把student stu[3];改成student stu[4];
for后面的   };
去掉
2008-09-28 09:31
ml232528
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:5
帖 子:367
专家分:879
注 册:2007-7-23
得分:0 
下标越界
改为 for(i=0;i<3;i++)

-︻┻┳═一 ☆ 悲伤的代价就是让自己明白什么是最重要的和应该珍惜的
2008-09-28 09:40
hamatlfsj
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2008-9-28
得分:0 
#include <iostream>
#include <string>
using namespace std;
struct student
{
    int num;
    string name;      
};
int i;
int main()
{
   student stu[3];
   void in_put(student stu[]);
   in_put(stu);
   system("pause");
   return 0;
}
void in_put(student stu[])
{
   
   for(i=0;i<3;i++)          //输入数据,刚刚又试了一下,好象是输入数据后按下回车就会有系统错误了~!
   {

    cin>>stu[i].num;

    cin>>stu[i].name;

   };
   for(i=0;i<3;i++)          //输出数据

   {

    cout<<stu[i].num<<endl;

    cout<<stu[i].name<<endl;
   };
}
2008-09-28 15:53
lionmusicyj
Rank: 1
等 级:新手上路
帖 子:98
专家分:0
注 册:2008-9-20
得分:0 
谢谢哈~!
2008-09-29 01:53
henainio6517135
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2008-9-25
得分:0 
#include <iostream>
#include <string>
using namespace std;
struct student
{
    int num;
    string name;      
};
int i=1;
int main()
{
   student stu[3];
   void in_put(student stu[]);
   in_put(stu);
   system("pause");
   return 0;
}
void in_put(student stu[])
{
   
   for(i=0;i<3;i++)          //输入数据,刚刚又试了一下,好象是输入数据后按下回车就会有系统错误了~!
   {
    cin>>stu[i].num;
    cin>>stu[i].name;
   }
   for(i=0;i<3;i++)          //输出数据

   {
    cout<<stu[i].num;
    cout<<stu[i].name;
   }
}
2008-09-29 09:15



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-235591-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.205921 second(s), 7 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved