这个错误在那

IT-学徒 2012-06-12 06:44:38
#include<string.h>
#include<stdlib.h>
#include<conio.h>
#include<stdio.h>
#include<graphics.h>
#define MAX sizeof(struct peo)
#define NULL 0



struct peo
{
long id;
char name[20];
char sex[20];
float borth;
char type[20];
int money;
char from[20];
char sit[20];
struct peo *next;
};

int n;

struct peo *creat(void) /* 录入职工信息 */
{
struct peo *head;
struct peo *p1,*p2;
n=0;
p1=p2=(struct peo *)malloc(MAX);

cleardevice(); /* 清理屏幕 */

printf("输入ID为0时停止输入!\n");




printf("\n请输入id:\n");
scanf("%ld",&p1->id);
printf("请输入姓名:\n");
scanf("%s",&p1->name);
printf("请输入性别:\n");
scanf("%s",&p1->sex);
printf("请输入出生日期:\n");
scanf("%f",&p1->borth);
printf("请输入职称:\n");
scanf("%s",&p1->type);
printf("请输入工资:\n");
scanf("%ld",&p1->money);
printf("请输入所在单位:\n");
scanf("%s",&p1->from);
printf("请输入在岗情况:\n");
scanf("%s",&p1->sit);
head=NULL;
while(1)
{
n++;
if(n==1)head=p1;
else p2->next=p1;
p2=p1;
p1=(struct peo *)malloc(MAX);

printf("\n请输入id:\n");
scanf("%ld",&p1->id);
if(p1->id==0) break;
printf("请输入姓名:\n");
scanf("%s",&p1->name);
printf("请输入性别:\n");
scanf("%s",&p1->sex);
printf("请输入出生日期:\n");
scanf("%f",&p1->borth);
printf("请输入职称:\n");
scanf("%s",&p1->type);
printf("请输入工资:\n");
scanf("%ld",&p1->money);
printf("请输入单位:\n");
scanf("%s",&p1->from);
printf("请输入状态:\n");
scanf("%s",&p1->sit);


}
p2->next=NULL;

return(head);
}



main()
{
struct peo *head;
char i;
int drive=DETECT,mode;
initgraph(&drive,&mode," "); /*初始化显示器为图形方式 */
cleardevice(); /*清屏幕*/
setbkcolor(9); /*设置屏幕背景颜色*/
printf("\16[co4st8e320,170,0,360,300,70,2,4]");
printf("\16[{-10|20@48,24=2(14)9中南大学}]");
printf("\16[{-90|140@55,55=11(13)9职工档案管理系统}]");
printf("\16[{-246|280@20,20=8(12)9设计者: 电气信息113201 XXX }]");
printf("\16[{-250|360@20,20=8(4)9请按Enter键进入}]");
getch(); /*等待击键*/
for( ; ;) /*循环执行功能菜单*/
{
cleardevice();
setbkcolor(9);
printf("\16[{-5|30@40,40=30(2)9* * * * * * 菜 单 * * * * * *}]");
printf("\16[{-130|100@35,35=30(7)9a 输入}]");
printf("\16[{-400|100@35,35=30(7)9b 显示}]");
printf("\16[{-130|145@35,35=30(7)9c 修改}]");
printf("\16[{-400|145@35,35=30(7)9d 查找}]");
printf("\16[{-130|205@35,35=30(7)9e 删除}]");
printf("\16[{-400|205@35,35=30(7)9f 恢复}]");
printf("\16[{-130|260@35,35=30(7)9g 添加}]");
printf("\16[{-400|260@35,35=30(7)9h 统计}]");
printf("\16[{-130|315@35,35=30(7)9i 保存}]");
printf("\16[{-400|315@35,35=30(7)9j 打开}]");
printf("\16[{-130|360@35,35=30(7)9k 退出}]");
printf("\16[{-400|380@24,24=11(7)4请选择a至j}]");
i=getch();
if(i=='k') break;
else switch(i)
{
case'a': head=creat()/* 调用记录输入函数 */;break;
case'b': /* 调用记录显示函数 */;break;
case'c': /* 调用记录修改函数 */;break;
case'd': /* 调用记录查找函数 */;break;
case'e': /* 调用记录删除函数 */;break;
case'f': /* 调用记录恢复函数 */;break;
case'g': /* 调用记录添加函数 */; break;
case'h': /* 调用记录统计函数 */;break;
case'i': /* 调用数据保存函数 */;break;
case'j': /* 调用数据文件打开函数 */; break;
}
}

}
...全文
96 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
IT-学徒 2012-06-13
  • 打赏
  • 举报
回复
图形不能加载
孤独小剑 2012-06-12
  • 打赏
  • 举报
回复
楼主对自己太不负责任了,起码描述下不对的现象吧,现在不是每个人都有TC编译器环境的。
W170532934 2012-06-12
  • 打赏
  • 举报
回复
楼主还是自己在TC下调试下吧,刚才把你的代码复制下来,结果发现是TC下的,帮不了你了,你还是自己加断点进行调试吧

69,373

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧