//首页菜单!!种类!!选择函数 int menu_main(int n) { int n; printf("1.课堂笔记\n"); printf("2.问题记录\n"); printf("3.我的日记\n"); printf("4.会议记录\n"); printf("5.实用技巧\n"); printf("6.网页收藏\n"); printf("7.分类记事的记录总数统计,并按降序排列显示\n"); printf("请输入数字1-7:\n"); n=getchar(); return n ; }
//首页!!操作!!菜单选择函数11 void deal_menu_main(int n) { char l; switch(l) //首页菜单选择函数 { case '1': menu_read(); //对分类记事本文件操作菜单函数 fen_deal_menu(); //分类记事本菜单处理 处理 函数 break; case '2': menu_read(); //对分类记事本文件操作菜单函数 fen_deal_menu(); //分类记事本菜单处理 处理 函数 break; case '3': menu_read(); //对分类记事本文件操作菜单函数 fen_deal_menu(); //分类记事本菜单处理 处理 函数 break; case '4': menu_read(); //对分类记事本文件操作菜单函数 fen_deal_menu(); //分类记事本菜单处理 处理 函数 break; case '5': menu_read(); //对分类记事本文件操作菜单 fen_deal_menu(); //分类记事本菜单处理 处理 函数 break; case '6': menu_read(); //对分类记事本文件操作菜单函数 fen_deal_menu(); //分类记事本菜单处理 处理 函数 // break; // case 7: //分类记事的记录总数统计,并按降序排列显示函数 // case 8: // printf("goodbye\n"); // break; }
}
//对分类记事本文件操作菜单函数11 int menu_read(e); { char e; printf("1.读取记事本文件\n"); printf("2.对各分类记事本的记录增加\n"); printf("3.对各分类记事本的记录删除\n"); printf("4.对各分类记事本的记录编辑\n"); printf("5.对各分类记事本的标题包含信息的查询,并将所找到记录列出!\n"); printf("6.请选择1-6:\n"); e=getchar; return e; } } //!!!!!分类!!!!!!!!记事本菜单处理 处理 函数 void fen_deal_menu(e) { switch(e) { case 1: file_read(); //读取文件函数 break; case 2: add_file(); //增加记事本分类文件函数
break; case 3: del_file(); //删除分类记事本文件记录函数
break; case 4: edit_file(); //编辑分类记事本文件记录函数
break; // case 5: // search(); //实现对各分类记事本的标题包含信息的查寻功能, //并将所找到记录列出示的函数 // break; f }
} //读取显示文件函数11 void file_read() { char ch; char filename[80]; FILE *fp;
printf("请输入要打开的文件名:(如果不行,请输入文件的绝对路径)\n"); scanf("%s",filename);
if ((fp=fopen(filename,"r"))==NULL) { printf ("不能打开所输入的文件\n"); exit (0); }
while((ch=fgetc(fp))!=EOF) { putchar(ch); } fclose(fp); printf("\n"); ch=getchar(); }
//增加记事本分类文件函数11 add_file() { struct time { int year; int month; int day; }; struct note { char no[20]; char title[40]; char nr[200]; struct time rq; char file[20]; char filename[20],n[20]; int i; FILE *fp; printf("输入增加的文件名字\n"); gets(filename); if ((fp=fopen(filename,"wb"))==NULL) { printf ("不能打开所输入的文件\n"); exit (0); } printf("\n请输入第几种类记录的信息:\n"); scanf("%d",&i); //fflush(stdin);空stdin即标准输入流的缓冲区,防止它影响后面的数据输入 printf("输入序号:\n"); scanf("%s",kind[i].no); fflush(stdin);
printf("输入标题:\n"); gets(kind[i].title); fflush(stdin);
printf("输入内容:\n"); gets(kind[i].nr); fflush(stdin);
printf("输入日期\n"); scanf("%d%d%d",&(kind[i].rq.year),&(kind[i].rq.month), &(kind[i].rq.day)); fflush(stdin);
printf("输入文件名字:\n"); scanf("%s",kind[i].file); fflush(stdin); fwrite(&kind[i],sizeof(struct note),1,fp); fclose(fp); } //删除分类记事本文件记录函数11 void del_file() { struct time { int year; int month; int day; }; struct note { char no[20]; char title[40]; char nr[200]; struct time rq; char file[20]; char n ,filename[20]; char i; FILE *fp; printf("输入删除的文件名字\n"); gets(filename); if ((fp=fopen(filename,"wb"))==NULL) { printf ("不能打开所输入的文件\n"); exit (0); } printf("要删除的第几类文件:\n"); scanf("%d",&n); printf("您已经成功删除!\n"); strcpy(kind[i].no," "); fflush(stdin);
strcpy(kind[i].title," "); fflush(stdin);
strcpy(kind[i].nr," "); fflush(stdin); strcpy(kind[i].rq.year," "); strcpy(kind[i].rq.month," "); strcpy(kind[i].rq.day," "); fflush(stdin); strcpy(kind[i].file," "); fflush(stdin); fwrite(&kind[i],sizeof(struct note),1,fp); fclose(fp); } main() { struct time { int year; int month; int day; }; struct note { char no[20]; char title[40]; char nr[200]; struct time rq; char file[20]; }kind[6]; char m,k; k=menu_main(m); //首页菜单!!种类!!选择函数 deal_menu_main(k); //首页!!操作!!菜单选择函数11 } 能帮我调通吗?
----------------解决方案--------------------------------------------------------
顶一下,我也不会。
楼上的是男的女的呀?
(千万不要删我帖哦,饶过我这一次吧,谢谢了)
----------------解决方案--------------------------------------------------------
int menu_main(int n)
{
int n;
printf("1.课堂笔记\n");
printf("2.问题记录\n");
printf("3.我的日记\n");
printf("4.会议记录\n");
printf("5.实用技巧\n");
printf("6.网页收藏\n");
printf("7.分类记事的记录总数统计,并按降序排列显示\n");
printf("请输入数字1-7:\n");
n=getchar();
return n ;
}
参数n起什么作用啊?
我看好象没有用不用不要!
----------------解决方案--------------------------------------------------------
int menu_main(int n) { int n; printf("1.课堂笔记\n"); printf("2.问题记录\n"); printf("3.我的日记\n"); printf("4.会议记录\n"); printf("5.实用技巧\n"); printf("6.网页收藏\n"); printf("7.分类记事的记录总数统计,并按降序排列显示\n"); printf("请输入数字1-7:\n"); n=getchar(); return n ; } 这样的地方太多了,怎么改啊, 我不知道你的参数是干什么用的? 为什么定义的变量名和参数名相同啊?
----------------解决方案--------------------------------------------------------
你的解释也不写好?
光是你的解释就够改半天的了
----------------解决方案--------------------------------------------------------
参数传递问题啊, 函数没有错
----------------解决方案--------------------------------------------------------
形参数中的N 不能与函数内部的变量重名
----------------解决方案--------------------------------------------------------
C是个模块化的语言,写程序时,一个模块一个模块写,调通一个模块再写下一个模块,不是象你一样都写好再来调试。
----------------解决方案--------------------------------------------------------
不会用tc啊,到底tc怎么生成exe文件,晕~~
----------------解决方案--------------------------------------------------------
knocker大哥, 我是一个个函数单独调试过的,都能用!!! 保证能用 就是偶不懂参数传递,参数多了头就大
----------------解决方案--------------------------------------------------------