标题:求高手指导指导,发现问题
取消只看楼主
qq267165295
Rank: 1
等 级:新手上路
帖 子:21
专家分:2
注 册:2012-1-6
 问题点数:0 回复次数:3 
求高手指导指导,发现问题
本人是今年刚学计算机专业的大一新生,期末考试C语言程序设计综合实验,网上好多类似的什么学籍管理系统,图书管理系统的都有,我们寝室几个人一起编了个图书管理系统。
本人编程环境是 VC ++ 6.0 组建的时候 程序执行不了  错误为 warning C4013: 'clrscr' undefined; assuming extern returning int
断点调试,逐步调试头都快炸了,求指教啊!
程序源代码如下:
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
struct BOOK
{
    int id,usr[10],total,store,days[10];
    char name[31],author[21];
}books[100];
/*上面是结构体的定义,用于存放书籍及借书的信息。*/

void page_title(char *menu_item)
{
    clrscr();
    printf(">>> 图 书 管 理 系 统 <<<\n\n- %s -\n\n",menu_item);
}
/*上面是打印页眉的函数,同时通过参数menu_item,可以显示当前的状态。*/
void return_confirm(void)
{
    printf("\n按任意键返回……\n");
    getch();
}
/*上面是返回前请求确认的函数,以便在返回前观察结果*/
int search_book(void)
{
    int n,i;
    printf("请输入图书序号:");
    scanf("%d",&i);
    for(n=0;n<100;n++)
    {
        if(books[n].id==i)
        {
            printf("书名:%s\n",books[n].name);
            printf("作者:%s\n",books[n].author);
            printf("存数:%d of ",books[n].store);
            printf("%d\n",books[n].total);
            return n;
        }
    }
    printf("\n输入错误或无效图书序号.\n");
    return -1;
}
/*上面的函数是在数组中找到图书号匹配的记录,显示其信息并返
 回数组下标,如果找不到相应记录则提示错误并返回-1。*/
void book_out(void)
{
    int n,s,l,d;
    page_title("借阅图书");
    if((n=search_book())!=-1&&books[n].store>0)
    {
        printf("请输入借书证序号:");
        scanf("%d",&s);
        printf("请输入可借天数:");
        scanf("%d",&d);
        for(l=0;l<10;l++)
        {
            if(books[n].usr[l]==0)
            {
                books[n].usr[l]=s;
                books[n].days[l]=d;
                break;
            }
        }
        books[n].store--;
    }
    if(n!=-1&&books[n].store==0) printf("此书已经全部借出.\n");
    return_confirm();
}
/*上面是借书的函数,首先调用找书函数*/
void book_in(void)
{
    int n,s,l;
    page_title("归还图书");
    if((n=search_book())!=-1&&books[n].store<books[n].total)
    {
        printf("借阅者图书证列表:\n");
        for(l=0;l<10;l++)  
            if (books[n].usr[l]!=0)  
                printf("[%d] - %d天\n",books[n].usr[l],books[n].days[l]);
            printf("请输入借书证序号:");
            scanf("%d",&s);
            for(l=0;l<10;l++)  
            {
                if(books[n].usr[l]==s)
                {
                    books[n].usr[l]=0;
                    books[n].days[l]=0;
                    break;  
                }
            }
            books[n].store++;
    }
    if(n!=-1&&books[n].store==books[n].total)  
        printf("全部入藏.\n");
    return_confirm();
}
void book_add(void)
{
    int n;
    page_title("注册新书");
    for(n=0;n<100;n++)  
    if(books[n].id==0) break;
    printf("序号:");
    scanf("%d",&books[n].id);
    printf("书名:");
    scanf("%s",&books[n].name);
    printf("作者:");
    scanf("%s",&books[n].author);
    printf("数量:");
    scanf("%d",&books[n].total);
    books[n].store=books[n].total;
    return_confirm();
}
void book_del(void)
{
    int n;
    page_title("注销旧书");
    if((n=search_book())!=-1) books[n].id=0;
    printf("该书已注销.\n");
    return_confirm();
}
void main(void)
{
    menu: page_title("操作选单");
    printf("请用数字键选择操作\n\n");
    printf("1 借阅图书\n2 归还图书\n\n");
    printf("3 注册新书\n4 注销旧书\n\n");
    printf("\n0 退出\n");
    switch(getch())
    {
    case '1' : book_out();break;
    case '2' : book_in();break;
    case '3' : book_add();break;
    case '4' : book_del();break;
    case '0' : exit(0);
    }
    goto menu;
}
搜索更多相关主题的帖子: 图书 程序设计 undefined 大一新生 include 
2012-01-06 15:22
qq267165295
Rank: 1
等 级:新手上路
帖 子:21
专家分:2
注 册:2012-1-6
得分:0 
回复 4楼 embed_xuel
说了是新手啦 学了一学期C 脑子糊糊的
2012-01-07 14:09
qq267165295
Rank: 1
等 级:新手上路
帖 子:21
专家分:2
注 册:2012-1-6
得分:0 
回复 楼主 qq267165295
谢谢了  可以诶
2012-01-07 14:15
qq267165295
Rank: 1
等 级:新手上路
帖 子:21
专家分:2
注 册:2012-1-6
得分:0 
回复 2楼 heroinearth
上面那一位已经告诉我解决办法了,谢谢了,好多东西实在是搞不清白,都是自己瞎掰
2012-01-07 14:16



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




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

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