qq_33316199 2017-04-15 05:18 采纳率: 0%
浏览 1723

图书管理系统的统计功能

运行后就跳出这个

改几个代码会出现死循环,绝望+10086

这是统计功能的代码。

#include "record.h"
BOOK *stastic(BOOK *top)
{
BOOK *p;

int num=0,cnum=0,znum=0,i;
char str[2];
int cn=0;
char cname[][10]={"北京出版社","上海出版社","青海出版社","武汉出版社","广州出版社","长春出版社"};
char zname[][6]={"韩寒","陈新宏","马健会","郭涛","刘艺","冰心"};
p=top;
for(;; )
{
    if(count==0)
    {
         printf("现在系统还没有书籍信息!\n");
         return(top);
    }   
     printf("请输入统计的方式:\n");
     printf("1.按出版社\n");
     printf("2.按主编\n");

gets(str);

while(1)
    {
        cn = atoi(str);
       if(cn<1|| cn>2 )
       {
           printf("\n输入错误,重选1-2:");
           gets(str);
       }
       else    break;
        }


while(p)
{
    if(cn==1){
            num++;
            for(i=0;i<7;i++){
                if(strcmp(p->Publisher,cname[i]))
                    cnum++;
                    p=p->next;
            }               
            printf("系统共有");
            printf("%d",num);
            printf("本书。\n");
            printf("%c",p->Publisher);
            printf("共出版");
            printf("%d",cnum);
            printf("本书。");
            }

/* capart[10]; //用于统计的数组

p=head;
while(p!=NULL){
for(i=0;i //在现有数组节点中能找到,则数量+1
}
//如果找不到,数组节点增+1,数量=1
p=p->next;
}
*/
else
{
num++;
for(i=0;i {
if(strcmp(p->Editor,zname[i]))
znum++;
p=p->next;

}
printf("系统共有");
printf("%d",num);
printf("本书。\n");
printf("%c",p->Editor);
printf("共主编");
printf("%d",znum);
printf("本书。");
}
break;
}
return top;
}}

麻烦各位大神了!!

  • 写回答

1条回答 默认 最新

  • threenewbee 2017-04-15 06:11
    关注
    评论

报告相同问题?

悬赏问题

  • ¥15 解决一个加好友限制问题 或者有好的方案
  • ¥15 关于#java#的问题,请各位专家解答!
  • ¥15 急matlab编程仿真二阶震荡系统
  • ¥20 TEC-9的数据通路实验
  • ¥15 ue5 .3之前好好的现在只要是激活关卡就会崩溃
  • ¥50 MATLAB实现圆柱体容器内球形颗粒堆积
  • ¥15 python如何将动态的多个子列表,拼接后进行集合的交集
  • ¥20 vitis-ai量化基于pytorch框架下的yolov5模型
  • ¥15 如何实现H5在QQ平台上的二次分享卡片效果?
  • ¥30 求解达问题(有红包)