DJYLSY 2016-03-30 13:55 采纳率: 50%
浏览 1366

像这样没有错误却莫名的死程序该咋办啊?求教大神们

#include
#include
#define N 4
struct binode{
char num;
char name;
int score;
struct binode llink,*rlink;
};
struct binode binode;
struct binode *list=0;
struct binode *p=0;
struct binode *r=0;
struct binode *q=0;
struct binode *u=0;
void build()
{
int i;
for(i=0;i<N;i++)
{
p=(struct binode
)malloc(sizeof(struct binode));
printf("input the information of %d",i+1);
printf("\n");
printf("请输入学生学号:");
scanf("%s",p->num);
printf("请输入学生姓名:");
scanf("%s",p->name);
printf("请输入学生计算机成绩:");
scanf("%d",&p->score);
if(list==NULL)
{
p=list->rlink;
list=p->llink;
}
else
{
p->llink=r;
r->rlink=p;

        }
        r=p;
        }

}
int delete()
{
int ch;
printf("请输入所删除学生的学号:");
q=list;
scanf("%s",ch);
while(strcmp(ch,q->num)!=0)
{
if(q->rlink==NULL)
{
printf("cannot find the node");
return -1;
}
q=q->rlink;
}
(q->rlink)->llink=q->llink;
(q->llink)->rlink=q->rlink;
free(q);
return 1;
}
void grade()
{
int excellent=0;
int good=0;
int ordinary=0;
int pass=0;
int fail=0;
int ah;
int i;
u=list->rlink;
ah=u->score/10;
while(u->rlink!=NULL)
{
switch(ah)
{
case 10:
case 9:excellent++;break;
case 8:good++;break;
case 7:ordinary++;break;
case 6:pass++;break;
default:fail++;break;
}

q=list->llink;
i=1;
while(q->rlink!=NULL)
{
printf("the score of %d",i);
printf("%d",q->score);
}
printf("计算机基础成绩分数段统计");
printf("优秀(>90):%d\n良好(80-90):%d\n一般(70-80):%d\n及格(60-70):%d\n不及格(<60):%d\n",excellent,good,ordinary,pass,fail);
}
}
int main()
{
void build();
int delete();
void grade();
int l;
while(1)
{
printf("************************欢迎光临!");
printf("\n");
printf("1.输入数据\n2.删除数据\n3.分数段统计\n");
printf("请选择:");
scanf("%d",&l);
switch(l)
{
case 1:build();break;
case 2:delete();break;
case 3:grade();break;
default:printf("wrong!");
}

}
}

  • 写回答

4条回答 默认 最新

  • xSeeker~ 2016-03-30 13:59
    关注

    解决运行时错误,最好的办法就是debug!

    评论

报告相同问题?

悬赏问题

  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 保护模式-系统加载-段寄存器