欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    C语言课程设计说明书.doc

    • 资源ID:78786942       资源大小:349.50KB        全文页数:29页
    • 资源格式: DOC        下载积分:20金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要20金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    C语言课程设计说明书.doc

    面向过程程序设计(C语言)课程设计 设计说明书学生宿舍管理系统起止日期: 2010 年 01 月 10 日 至 2010 年 01 月 17 日学生姓名黄庆清班级计本091班学号成绩指导教师(签字)计算机与通信学院2010年 01 月 20 日学生宿舍管理系统一、 程序设计要求综合运用C语言程序设计课程的主要知识,设计一个用于学生宿舍管理的程序,设计指标由程序的功能要求和技术要求具体说明。1. 功能要求学生宿舍管理程序至少具有以下功能:1) 显示功能:能显示宿舍学生的全部记录,在显示时能提供下列5种显示方式: 按记录创建(学生入住)的顺序显示。 按姓名升序显示。将字符串(姓名)从小到大排列后输出。 按学号升序显示。将字符串(学号)从小到大排列后输出。 按房号升序显示。将字符串(房号)从小到大排列后输出。 班按级号升序显示。将字符串(班级号)从小到大排列后输出。注:“显示顺序”栏的信息不属于记录的信息,它是连续的自然数,若记录个数不变,则“显示顺序”栏的信息不变。2) 修改功能:能修改学生记录除创建顺序以外的信息。让用户输入需要修改的旧记录,再检查该记录是否存在,若存在则用户可对记录进行修改。3) 查询功能:能查询宿舍学生的记录。提供以下5种查询方式。 按姓名查询。用户输入学生姓名,系统则检索记录,找到含有该姓名的全部记录,显示到屏幕上,并计算、显示找到的记录个数。若找不到,则提醒用户:该记录不存在。 按学号查询。原理同上所述。 按房号查询。原理同上所述。 按班级号查询。原理同上所述。 综合查询。用户输入学生的姓名、学号、房号和班级号,系统自动检索,若找到和和用户输入的信息完全一致的记录,则显示到屏幕上。该记录若存在,则是唯一的,这是由入住(新建)功能决定的。4) 删除功能:能以某些方式删除宿舍学生的信息。删除时以记录为单位,既能一次删除一条记录,也能一次删除多条记录。该程序提供以下7种删除方式: 按姓名删除。用户输入学生姓名,系统将含有姓名的所有记录全部删除。 按学号删除。原理同上所述。 按班级号删除。原理同上所述。 按房号删除。原理同上所述。 按创建(入住)顺序删除。用户通过显示功能可获取全部记录对应的创建顺序(创建顺序是升序的连续的自然数)。创建顺序是唯一的。 综合删除。用户输入学生的姓名、班级号、学号和房号,系统检索全部记录,若找到和用户输入的信息吻合的记录,则将该记录删除。若该记录存在,则是唯一的,这是由入住(新建)功能决定的。 全部删除。注:某个或某几个记录被删除后,系统自动调整创建顺序,使创建顺序重新恢复为连续自然数(1,2,3,)。这种调整和学生的入住顺序是一致的。5) 新建(入住)功能:能够曾加学生的记录。在新的学生住到宿舍时,对学生的信息进行登记注册。6) 交换房号:能够交换记录中的任意两个学生的房号,其他信息保持不变。7) 退房功能:这项功能相当于删除学生的记录。用户输入学生的姓名、学号、房号和班级号,若该记录存在即退房。8) 保存功能:没有独立的函数实现此功能,上面的几个功能,例如,新建(入住)、修改功能、交换房号功能、删除功能、退房功能,包含保存功能。9) 退出系统:能很很方便地退出系统。 注:以上17种功能是可以连续实现的,例如新建(入住)功能可以实现连续建立记录直到住房满为止,交换房号功能可以连续进行无数次任意两个学生的房号交换。2. 技术要求一、 每个学生记录包含五项信息:房号、学号、姓名、班级号和创建顺序。二、 学生记录信息以磁盘文件的形式存储。三、 对于学生宿舍管理系统中新建记录、显示、查询、修改、删除、退房、交换房号等功能,要求编写独立的函数或主控函数予以实现,其所属的各项功能尽量由独立的函数实现。四、 以菜单方式实现功能选择控制。五、 本通学生宿舍管理系统能够实现16条记录的管理(当然可以扩充记录的数量的上限,如将16条记录扩充为100条)。二、 程序的功能设计设计学生宿舍管理系统的功能如下图所示:按创建顺序显示删除功能按姓名删除按班级删除询按房号删除按学号删除按创建顺序删除综合删除全部删除学生宿舍管理系统功能框图修改功能显示功能按姓班级号升序显示按姓名升序显示按学号升序显示按房号升序显示查询功能按姓名查询综合查询按班级号查询按房号查询按学号查询入住(新建)功能交换房号功能退房功能各项功能的具体说明如下:1) 显示功能: 按创建顺序显示。创建顺序是连续的自然数,表示记录的创建的先后顺序,也是记录存储在文件中的顺序。 按姓名升序显示。以字符串(姓名)大小为排序标准,将记录升序排列,然后输出到屏幕。 按学号升序显示。以字符串(学号)大小为排序标准,将记录升序排列,然后输出到屏幕。 按房号升序显示。以字符串(房号)大小为排序标准,将记录升序排列,然后输出到屏幕。 按班级号升序显示。以字符串(班级号)大小为排序标准,将记录升序排列,然后输出到屏幕。注:在显示之前,系统自动获取文件中的记录个数,如果记录个数为零,那么提示用户记录为空,并返回主菜单。每完成一次显示操作,系统就自动提供一个菜单,用户可以选择继续进行显示操作(重新选择显示方式)、后退到主菜单或者退出系统。2) 修改功能:要求输入需要修改的记录中的姓名、学号、房号和班级号,然后输入修改后的姓名、学号、房号和班级号。注: 在用户进入修改状态之前,系统自动获取文件中的记录个数,如果记录个数为零,那么提示用户记录为空,并返回主菜单。3) 查询功能: 按姓名查询。用户输入学生姓名,系统对所有记录进行搜索,找到包含该姓名的全部记录,然后输出到屏幕。 按学号查询。用户输入学生学号,系统对所有记录进行搜索,找到包含该学号的全部记录,然后输出到屏幕。 按房号查询。用户输入学生房号,系统对所有记录进行搜索,找到包含该房号的全部记录,然后输出到屏幕。 按班级号查询。用户输入学生班级号,系统对所有记录进行搜索,找到包含该班级号的全部记录,然后输出到屏幕。 综合查询。用户输入学生姓名、学号、房号和班级号,系统对所有记录进行搜索,找到和输入信息完全吻合的记录,然后输出到屏幕。注: 在用户进入查询状态之前,系统自动获取文件中的记录个数,如果记录个数为零,那么提示用户记录为空,并返回主菜单。在以上的五种查询方式中,都会计算找到的记录个数,然后在屏幕上显示。每完成一次查询,系统自动提供一个菜单,用户可以继续查询、返回主菜单或者退出系统。系统在理论上可以连续完成无限次查询。如果找不到符合条件的记录,系统就会给出相应的提示。4) 删除功能:按姓名删除。用户输入学生姓名,系统检索文件中的全部记录,找到包含该信息的全部记录。系统以询问的方式获得用户的确认命令,用户可以选择删除或取消删除。按学号删除。原理同上所述。按房号号删除。原理同上所述。按班级号删除。原理同上所述。按创建顺序删除。原理同上所述。不过,该删除方式与上述4种删除方式有所不同,由于每个记录的创建顺序是各不相同的,所以,只会删除一个记录(前提是符合条件的记录存在)。综合删除。要求用户输入学生的姓名、学号、房号和班级号,系统检索文件中的记录,找到与用户输入信息完全一致的记录(若存在,则只有一个)。系统以询问的方式获取用户的确认命令,以确定是否删除记录。全部删除。将保存在文件中的记录全部删除。注:在用户进入删除状态之前,系统自动获取文件中的记录个数,如果记录个数为零,那么提示用户记录为空,并返回主菜单。某个或某几个记录被删除后,系统自动调整创建顺序,使创建顺序重新恢复为连续自然数(1,2,3,)。这种调整和学生的入住顺序是一致的。该系统提供连续进行删除操作的功能,直至将全部记录删除完毕。所有的删除均为物理删除,即将指定的记录从文件中彻底清除。5) 新建功能:i. 在进入新建记录之前,系统自动获取文件中的记录个数,如果该数量已达到纪录个数的上限,则给出提示住房已满,并自动返回主菜单。ii. 在建立一个记录过程中,系统会逐项提示用户输入学生房号、学号、姓名和班级号。iii. 用户输入完了学生信息后系统会自动检索文件中的记录,如果文件中已经保存着与用户输入的信息完全吻合的记录,则不建立新的记录,并提示用户该记录已存在,然后返回主菜单。iv. 如果该记录不存在,那么给出选择取消或保存以供用户选择。v. 每完成一次新建记录,系统就以询问的方式让用户决定是否新建下一个记录。这样用户可以新建一个记录,也可以连续建立多个记录,直至记录个数达到上限。6) 交换房号:i. 在用户进入交换房号状态之前,系统自动获取文件中的记录个数,如果记录个数小于2,那么向用户给出记录个数,并返回主菜单。ii. 系统逐项提示用户输入学生甲的房号、学号、姓名和班级号,然后自动检索文件中的记录,如果不存在与用户输入信息完全吻合的记录,那么就给出询问。用户可以选择从新输入学生甲的信息,也可以选择退出交换房号的功能,即返回主菜单。iii. 如果与用户输入的学生甲的信息完全吻合的记录存在,那么系统逐项提示用户输入学生乙的房号、学号、姓名和班级号。系统自动检索文件中的记录,如果不存在与用户输入信息完全吻合的记录,那么就给出询问。用户可以选择从新输入学生乙的信息,也可以选择退出交换房号的功能,即返回主菜单。iv. 如果与用户输入的学生乙的信息完全吻合的记录存在,那么系统提示用户是否确实要交换房号。v. 每完成一次交换房号的操作后,系统以询问的方式决定是否进行下面两个学生的房号。因此,系统在理论上可以完成无数次交换房号的操作。7) 退房功能:i. 在用户进入退房房号状态之前,系统自动获取文件中的记录个数,如果记录个数为零,那么提示用户记录为空,并返回主菜单。ii. 如果记录不为空,那么系统逐项提示用户输入学生的姓名、学号、房号和班级号。接着系统检索文件中的记录,若不存在与用户输入的信息完全吻合的记录,则提示用户该记录不存在,并询问是否对下一个学生进行退房操作。若用户选择否,则返回主菜单。iii. 若与用户输入的信息完全吻合的记录存在,系统会提示是否退房。iv. 系统每完成一次退房操作就并询问用户是否对下一个学生进行退房操作。因此,可联系完成多次退房操作直至记录个数为零。若用户选择否,则返回主菜单。v. 某个或某几个记录被删除后,系统自动调整创建顺序,使创建顺序重新恢复为连续自然数(1,2,3,)。这种调整和学生的入住顺序是一致的。三、 程序的数据设计1) 每个学生记录由多个不同的数据项构成,是一个结构体数据,因此需要定义结构体数据类型。每个记录包括的数据项目为:房号、学号、姓名、班级号和创建顺序等。据此定义如下结构体数据类型:struct student/*学生信息结构定义*/ char room_noN,student_IDN,nameN,_classN; unsigned long creation;stuS;2) 使用文件s.db存储数据类型为struct student的学生记录数据。四、 程序的函数设计1. 函数功能描述1) main()函数 学生宿舍管理系统主函数,显示问候语,调用主菜单函数。2) main_menu()函数函数原型为void main_menu(),是实现显示主菜单功能的函数,它通过调研各个功能函数实现功能的空制。3) display()函数 函数原型为void display(),是显示学生记录信息的主控函数,它实现显示功能的子菜单显示,并进行不同显示功能的函数调用,以实现程序的显示功能。4) search()函数函数原型为void search (),是查询学生记录的主控函数,它显示查询功能的子菜单,并根据查询要求,进行相应的函数调用,以实现查询的查询功能。5) modify()函数函数原型为void modify(),修改学生记录信息的函数,它实现修改学生记录的功能,具有保存修改之后的数据的功能。6) delect()函数函数原型为void delect(),是删除学生记录的主控函数,它显示删除功能的子菜单,并根据删除要求,并进行相应的函数调用,以实现删除学生记录的功能。7) check_in函数函数原型为void check_in,实现新建学生记录的函数,该函数还具有保存学生记录的功能。8) exchange_room_number()函数函数原型为void exchange_room_number,是实现交换任意两个学生的房号的功能的函数,该函数具有保存交换房号之后的数据的功能。9) check_out函数函数的原型为void check_out,是实现学生退房功能的函数。相当于从文件中删除唯一一个确定的记录。它具有保存学生退房之后的数据的功能。10) sub_menu()函数函数的原型为void sub_menu(),功能是提供选择菜单,并根据用户的选择,实现继续执行、后退到主菜单和退出系统的功能。11) getLogCount(FILE *fp)函数函数原型为unsigned long getLogCount(FILE *fp),功能是获取储存在文件中的记录(结构数组元素)的个数。12) sortByName()函数函数的原型为void sortByName(),功能是实现对struct student型结构体数组按姓名升序排列操作。13) sortByID()函数函数原型为void sortByID(),功能是对struct student型结构体数组实现按学号升序排列操作。14) sortByRoom()函数函数原型为void sortByRoom(),功能是对sruct student型结构体数组实现按房号升序排列操作。15) sortByClass()函数函数原型为void sortByClass(),功能是对struct student型结构体数组实现按班级号升序排列操作。16) output()函数函数原型为void output(),它实现对结构体数组的输出功能(系统显示功能的一部分)。如果结构体数组未经排序函数排序,则输出函数output()将结构体数组按创建顺序输出。17) searchByName()函数函数原型为void searchByName(),功能是对结构体数组按姓名搜索。18) searchByStudent_ID()函数函数原型为void searchByStudent_ID(),功能是对结构体数组按学号搜索。19) searchByRoom_no()函数、函数原型为void searchByRoom_no(),功能是对结构体数组按房号搜索。20) searchByClass()函数函数原型为void searchByClass(),功能是对结构体数组按班级号搜索。21) searchComprehensive()函数函数原型为void searchComprehensive(),功能是对结构体数组进行综合搜索。它搜索与用户输入的姓名、学号房号和班级号完全一致的记录。22) delName()函数函数原型为void delName(),功能是对结构数组按姓名实现删除元素的操作。23) delStudent_ID()函数函数原型为void delStudent_ID(),功能是对结构数组按学号实现删除元素的操作。24) del_class()函数函数原型为void del_class(),功能是对结构体数组按班级号实现删除元素的操作。25) delRoom_no()函数函数原型为void delRoom_no(),功能是对结构体数组按房号实现删除元素的操作。26) delCreation()函数函数原型为void delCreation(),功能是对结构体数组按创建顺序实现删除元素的操作。27) delComprehensive()函数函数原型为void delComprehensive(),功能是对结构体数组实现综合删除元素的操作。要求用户输入学生的姓名、学号、房号和班级号,该函数搜索结构数组,找到与用户输入的信息吻合的数组元素,然后询问用户以决定是否删除该元素。28) delAll()函数函数原型为void delAll(),功能是删除储存在文件中的全部记录(结构数组数据)。2. 函数的直接调用关系a) main()函数直接调用的函数:main_menu()函数(主菜单函数)。b) main_menu()函数直接调用的函数:display()函数、modify()函数、search()函数、delect()函数、check_in()函数、exchange_room_number()函数、check_out()函数。c) display()函数直接调用的函数:getLogCount(FILE *fp) 函数、output()函数、sortByName()函数、sortByID()函数、sortByRoom()函数、sortByClass()函数、sub_menu()函数。d) search()函数直接调用的函数: LogCount(FILE *fp) 函数、searchByName()函数、searchByStudent_ID()函数、searchByRoom_no()函数、searchByClass()函数、searchComprehensive()函数、sub_menu()函数。e) delect()函数直接调用的函数:getLogCount(FILE *fp) 函数、delName()函数、delStudent_ID()函数、del_class()函数、delRoom_no()函数、delCreation()函数、delComprehensive()函数、delAll()函数、sub_menu()函数。f) check_in()函数直接调用的函数:getLogCount(FILE *fp) 函数。g) exchange_room_number()函数直接调用的函数:getLogCount(FILE *fp) 函数。h) check_out()函数直接调用的函数:getLogCount(FILE *fp) 函数。i) sortByName()函数直接调用的函数:output()函数。j) sortByID()函数直接调用的函数:output()函数。k) sortByRoom()函数直接调用的函数:output()函数。l) sortByClass()函数直接调用的函数:output()函数。五、 函数编码及调试a) main()函数的设计及调试main()函数是学生宿舍管理系统的主控函数,每次调试函数都会用到它。由于main()函数只调用一个函数(主菜单函数main_menu()),而且它的语句少,所以设计及调试都比较容易。调试时将它调用的函数暂时设计为输出字符串的函数。如果能按预期预期输出字符串,则调试成功。每次编写新函数或修改函数都会涉及main()函数的调试。i. main()函数代码void main()void main_menu();puts("tt ¤¤¤¤¤¤¤¤¤¤¤¤");puts("tWelcome to the Dormitory Management System !");main_menu();ii. main_menu()函数代码void main_menu()/*主菜单*/puts("ntPlease selectnt(Input one of the following figures).n");iii. main()函数调试调试main()函数,如果屏幕上显示字符串"tt ¤¤¤¤¤¤¤¤¤¤¤¤""tWelcome to the Dormitory Management System !""ntPlease selectnt(Input one of the following figures).n",则函数设计及调试成功。b) main_menu()函数的设计及调试main_menu()函数是学生宿舍管理系统的功能主菜单,它调用多个功能函数,它的设计调试需要反复多次。在开始时,将它的所有被调用函数都设计为简单的字符串输出函数。,以设计调试main_menu()函数的菜单控制功能。然后,每实现一个主功能(输入、显示、查询、修改、删除、新建)函数,都对main_menu()函数的调用和菜单控制功能进程调试。i. main_menu()函数代码void main_menu()/*主菜单*/void display();void modify();void search();void delect();void check_in();void exchange_room_number();void check_out();while(1) int short selection;puts("ntPlease selectnt(Input one of the following figures).n");puts("tt1.Displayntt2.Modifyntt3.Searchntt4.Delect");puts("tt5.Check-inntt6.Exchange Room Numberntt7.Check-outntt8.Exitn"); scanf("%d",&selection);switch(selection) case 1:display();break; case 2:modify();break; case 3:search();break; case 4:delect();break; case 5:check_in();break; case 6:exchange_room_number();break; case 7:check_out();break;case 8:exit(0);default :puts("ntUnknown directive.");break;ii.01. display()函数代码void display()/显示功能的上层函数puts("1. display()");02. modify()函数代码void modify()/修改记录 puts("2. modify()");03. search()函数代码void search()/实现查询功能的上层函数 puts("3. search()");04. delect()函数代码void delect()/*删除 上层函数*/puts("4. delect()");05. check_in()函数代码void check_in()/入住(新建) puts("5. check_in()");06. exchange_room_number()函数代码void exchange_room_number()/换房号 puts("6. exchange_room_number()");07. check_out()函数代码void check_out()/退房 puts("7. check_out()check_in()");iii. main_menu()函数调试调试main_menu()函数,如果屏幕上输出以下字符串,则函数设计及调试成功了大概20%。字符串:"ntPlease selectnt(Input one of the following figures).n""tt1.Displayntt2.Modifyntt3.Searchntt4.Delect""tt5.Check-inntt6.Exchange Room Numberntt7.Check-outntt8.Exitn"继续调试函数,使main_menu()函数依次调用它可以直接调用的函数。如果屏幕上显示相应的字符串,则main_menu()函数的设计及调试基本成功。c) display()函数的设计及调试i. display()函数代码void display()/显示功能的上层函数unsigned long getLogCount(FILE *fp);unsigned long i;unsigned short selection;void output();void sortByName();void sortByID();void sortByRoom();void sortByClass();logcount=getLogCount(fp);if(logcount=0)puts("nttRecord empty!");return;if(fp=fopen(p,"rb")=NULL) /打开文件puts("ntFile open error!");exit(0);i=0;while(!feof(fp)/将全部记录读入全局结构数组fread(&stui,size_struct,1,fp);i+;if(fclose(fp) /关闭文件puts("ntThe file can not be closed!");exit(0);while(1)puts("ntPlease select ordertype.n"); puts("t1.Creation timent2.Nament3.Student ID"); puts("t4.Room numbernt5.Class numbern"); puts("tPlease input one digit to chooce.n"); scanf("%u",&selection); switch(selection) case 1:output();break; case 2:sortByName();break; case 3:sortByID();break; case 4:sortByRoom();break; case 5:sortByClass();break; default :puts("ntUnknow directive!");break; if(sub_menu() return;ii.01 output()函数代码void output()/输出结构体数组的数据,按下标升序排列 puts("1");02 sortByName()函数代码void sortByName()/按姓名升序排序 puts("2");03 sortByID()函数代码void sortByID()/按学号升序排序 puts("3");04 sortByRoom()函数代码void sortByRoom()/按房号升序排序 puts("4");05 sortByClass()函数代码void sortByClass()/按班级号升序排序 puts("5");iii. 函数调试第一步,调试函数,观察屏幕是否显示字符串:"ntPlease select ordertype.n""t1.Creation timent2.Nament3.Student ID""t4.Room numbernt5.Class numbern""tPlease input one digit to chooce.n"第二步,如果在第一步中得到预期结果,那么依次调试display()函数调用的函数。如果都得到预期结果(在屏幕上显示对应数字),再在特殊情况(记录为空)下调试,那么函数display()基本成功。d) modify()函数的设计及调试i. modify()函数代码void modify()/修改记录char room_noN,student_IDN,nameN,_classN;unsigned short flag=0;unsigned long i,index;unsigned short selection;unsigned int byteOfFread;logcount=getLogCount(fp); /获取记录数if(logcount=0)puts("nttRecord empty.n");return;if(fp=fopen(p,"rb")=NULL) /打开文件puts("ntFile open error!");exit(0);i=0;while(!feof(fp)/将全部记录读入全局结构数组byteOfFread=fread(&stui,size_struct,1,fp);i+;if(fclose(fp) /关闭文件puts("ntThe file can not be closed!");exit(0);/输入旧信息,不必输入创建顺序puts("ntInput OLD information.");puts("tPlease input ROOM NUMBER.");scanf("%s",room_no);puts("tPlease input STUDENT ID.");scanf("%s",student_ID);puts("ntPlease input NAME.");scanf("%s",name);puts("tPlease input CLASS NUMBER.");scanf("%s",_class);for(i=0;i<logcount;i+)/检查旧记录是否存在,不核对创建顺序 int a=strcmp(name,stui.name),b=strcmp(room_no,stui.room_no); int c=strcmp(student_ID,stui.student_ID),d=strcmp(_class,stui._class); if(!(a|b|c|d) flag=1; /找到记录,则做标记 index=i; /获取旧记录对应的结构数组元素的下标 break; if(flag)/输入新信息,不必输入创建顺序puts("ntInput NEW information."); puts("tPlease input ROOM NUMBER."); scanf("%s",stuindex.room_no); puts("tPlease input STUDENT ID."); scanf("%s",stuindex.student_ID); puts("ntPlease input NAME."); scanf("%s",stuindex.name); puts("tPlease input CLASS NUMBER."); scanf("%s",stuindex._class);/确认是否修改puts("ntAre you sure to modify the record?n");puts("tt1.Certaintt2.Canceln");puts("tType in the digit to make sure.n");scanf("%u",&selection);if(selection=1)if(fp=fopen(p,"wb")=NULL) /打开文件 puts("ntFile open error!"); exit(0);for(i=0;i<logcount;i+) fwrite(&stui,size_struct,1,fp); if(fclose(fp) /关闭文件 puts("ntThe file can not be closed!"); exit(0);

    注意事项

    本文(C语言课程设计说明书.doc)为本站会员(飞****2)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开