| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 432 人关注过本帖
标题:[求助] 大家来看看~我的程序出了什么问题呀~`
取消只看楼主 加入收藏
luyihuaa5201
Rank: 2
等 级:论坛游民
帖 子:254
专家分:10
注 册:2007-3-25
结帖率:66.67%
收藏
 问题点数:0 回复次数:1 
[求助] 大家来看看~我的程序出了什么问题呀~`

循环两次就是死循环了

#include <stdio.h>

struct Student
{
int nId ;
char cName[50] ;
int nCpp ;
Student *pNext ;
};

Student *pHeader = NULL ;

void main()
{
Student *pNew = new Student ;


int nKey = 0 ;
while(0 == nKey)
{

printf("输入学生的信息:");
scanf("%d %s %d",&pNew->nId,pNew->cName,&pNew->nCpp);

pNew->pNext = NULL ;

if(pHeader == NULL)
{
pHeader = pNew ;
}
else
{
Student *pNode = pHeader ;
for( ;pNode->pNext != NULL ; pNode = pNode->pNext);
pNode->pNext = pNew ;
}

printf("请继续输:");
scanf("%d",&nKey);
}
//显示
Student *pNode = pHeader ;
printf("Id\tName\tCpp\n");
for ( ;pNode != NULL ; pNode = pNode->pNext)
{
printf("%d\t%s\t%d\n",pNode->nId,pNode->cName,pNode->nCpp);
}
pNode = pHeader ;

//释放空间

Student *pTemp = NULL ;
for(pNode=pHeader ; pNode != NULL ; pNode = pTemp )
{
pTemp = pNode->pNext ;
delete pNode ;
}
pHeader = NULL ;


}

搜索更多相关主题的帖子: include 信息 
2007-04-13 19:47
luyihuaa5201
Rank: 2
等 级:论坛游民
帖 子:254
专家分:10
注 册:2007-3-25
收藏
得分:0 

我犹豫发帖以后机子坏了,所以没有再讨论这个问题了,今天又有时间再研究了
我上次报错的原因是 我没有循环一次再在堆里申请一个空间,就造成了上叙错误
正确的代码是


#include <stdio.h>

struct Student
{
int nId ;
char cName[50] ;
int nCpp ;
Student *pNext ;
};

Student *pHeader = NULL ;

void main()
{



int nKey = 0 ;
while(0 == nKey)
{
Student *pNew = new Student ;

printf("输入学生的信息:");
scanf("%d %s %d",&pNew->nId,pNew->cName,&pNew->nCpp);

pNew->pNext = NULL ;

if(pHeader == NULL)
{
pHeader = pNew ;
}
else
{
Student *pNode = pHeader ;
for( ;pNode->pNext != NULL ; pNode = pNode->pNext);
pNode->pNext = pNew ;
}

printf("请继续输(0是继续,非0 是退出):");
scanf("%d",&nKey);
}
//显示
Student *pNode = pHeader ;
printf("Id\tName\tCpp\n");
for ( ;pNode != NULL ; pNode = pNode->pNext)
{
printf("%d\t%s\t%d\n",pNode->nId,pNode->cName,pNode->nCpp);
}
pNode = pHeader ;

//释放空间

Student *pTemp = NULL ;
for(pNode=pHeader ; pNode != NULL ; pNode = pTemp )
{
pTemp = pNode->pNext ;
delete pNode ;
}
pHeader = NULL ;


}

2007-04-25 21:34
快速回复:[求助] 大家来看看~我的程序出了什么问题呀~`
数据加载中...
 
   



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

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