1、图23 修改会议算法流程图图24 删除会议算法流程图N 图25 按不同字段(会议编号) 查询会议记录和浏览所3程序清单及注释#includefstream.hstdlib.hstring.hstruct Meetinglist /定义类 Meetinglist char name10 ; char number50 ; char department40 ; char address40 ; char time15 ; char moderator20 ; char recoder 15 ; char presentmembers 300 ; char digest500;void Add (
2、 fstream ) ; /添加会议记录void modification ( fstream ) ; /修改会议记录 void Delete ( fstream ) ;void Inquire( fstream ); /按不同字段(会议编号)查询会议记录和浏 览所有会议记录信息void main ( ) int choice ; fstream field ( F:aaa.dat , ios:in|ios:out|ios:binary ) ; if(!field) cerr文件不能打开endl; return; while ( choice ) cout *会议记录管理系统*n ; cout
3、 1.添加会议记录:n 2.修改会议记录:3.删除会议记录:4.按不同字段(会议编号)查询会议记录和浏览所有会议记录信息: choice ; while ( choice != 0 & choice != 1 &= 2 &= 3 &= 4 &=5 ) ; switch ( choice ) case 1 : Add ( field ) ; break ; case 2 : modification ( field ) ; case 3 : Delete ( field ) ; case 4 : Inquire ( field ) ; case 0 : cout 退出系统! return ; d
4、efault:cout list.name ;请输入会议编号(3位): list.number ;請输入部门名称: list.department ;请输入会议地点: list.address ;请输入会议日期: list.time ;请输入会议主持人: list.moderator ;请输入会议记录人: list.recoder ;请输入出席人员: list.presentmembers ;请输入会议摘要: list.digest ; f.write ( ( char* ) & list , sizeof ( Meetinglist ) ) ;void modification ( fstr
5、eam f ) Meetinglist List ; int a = 0 ; int m = 0 ; int choice ; char num50 ; char information50 ; f.seekg ( 0 , ios:end ) ; long posEnd = f.tellg ( ) ;beg ) ;*请输入要修改会议记录的编号:*n num ; do f.read ( ( char* ) & List , sizeof ( Meetinglist ) ) ; for ( int i = 0 ; i 50 ; i+ ) if ( numi = List.numberi ) m+
6、; if ( numi != List.numberi ) m = 0 ; break ; while ( m != 50 & posEnd != f.tellg ( ) ) ; if ( m = 50 ) *找到这个会议*n1.修改会议名称:2.修改会议编号:3.修改部门名称:4.修改会议地点:5.修改会议日期:6.修改会议主持人:7.修改会议记录人:8.修改出席人员:9.修改会议摘要:0.退出: if ( m !*没有这个会议*! while ( choice ) = 5 & choice != 6 &= 7 &= 8 &= 9 &= 0 ) ; switch ( choice ) inf
7、ormation ; for ( a = 0 ; a sizeof(List.name) ; a+ ) List.namea=informationa ; f.seekp(-long (sizeof(Meetinglist),ios:cur) ; f.write ( ( char* ) & List , sizeof ( List ) ) ; return ; for ( a = 0 ; sizeof(List.number) ; List.numbera=informationa ; sizeof(List.department) ; List.departmenta=information
8、a ; sizeof(List.address) ; List.addressa=informationa ; case 5 : sizeof(List.time) ; List.timea=informationa ; case 6 : sizeof(List.moderator) ; List.moderatora=informationa ; case 7 : sizeof(List.recoder) ; List.recodera=informationa ; case 8 : sizeof(List.presentmembers) ; List.presentmembersa=inf
9、ormationa ; f.seekp(-long (sizeof(Meetinglist),ios: case 9 : sizeof(List.digest) ; List.digesta=informationa ; case 0 :退出!void Delete ( fstream f ) char a ; char Fill80 = ;*请输入要删除的会议的编号Y/N:* a ; while ( a != Y & a !Nyn) ; if ( a = | a = ) sizeof(list.name) ; i+ ) list.namei = Filli ; for ( i = 0 ; s
10、izeof(list.number) ; list.numberi = Filli ; for ( i = 0 ; sizeof(list.department) ; list.departmenti = Filli ; sizeof(list.address) ; list.addressi = Filli ; sizeof(list.time) ; list.timei = Filli ; sizeof(list.moderator) ; list.moderatori = Filli ; sizeof(list.recoder) ; list.recoderi = Filli ; siz
11、eof(list.presentmembers) ; list.presentmembersi = Filli ; sizeof(list.digest) ; list.digesti = Filli ; f.seekp(-long (sizeof(Meetinglist),ios: f.write ( ( char* ) & list , sizeof ( list ) ) ; return ;void Inquire ( fstream f )int choice;Meetinglist list ;char num50;f.seekg( 0 , ios:end );long posEnd
12、 = f.tellg();*查询会议资料*nwhile (1)coutchoice; switch ( choice ) case 1: f.seekg( 0 , ios:beg ); coutnum; do f.read( (char*) & while (list.number !=num & f.tellg() != posEnd ); if (list.number = num) coutlist.numbertlist.namelist.departmentlist.addresslist.time list.moderatorlist.recoderlist.presentmemb
13、erslist.digest else cout*会议编号输入错误*n continue; break; case 2: f.seekg ( 0 , ios: cout while (list.number != num & 4运行结果与分析图41 运行结果图(添加会议)图42 运行结果图(按编号查询会议)通过会议编号查询编号为2的会议将编号为2的会议中 会议日期从2013.5.25改为2013.6.20通过编号查询编号为2的会议记录图43、4、5 运行结果图(修改会议记录)图46 运行结果图(浏览所有会议记录)图47 运行结果图(删除编号为2的会议记录)5总结(课程设计过程中出现的问题及其解决方案,可扩充的功能及设计等。)6参考文献1李爱华,程磊著. 面向对象程序设计(C+语言) .北京:清华大学出版社,20102刘振安,刘燕君著. C+程序设计课程设计. 北京: 机械工业出版社,20043谭浩强著. C+程序设计实践指导. 北京:清华大学出版社,2005
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1