C语言课程设计学生选课系统.docx

合集下载

c语言课程设计学生选课系统

c语言课程设计学生选课系统

c语言课程设计学生选课系统一、教学目标本课程的目标是让学生掌握C语言编程基础,能够运用C语言设计学生选课系统。

具体目标如下:1.知识目标:学生需要掌握C语言的基本语法、数据类型、运算符、控制结构、函数等基础知识。

2.技能目标:学生能够运用C语言编写简单的程序,具备一定的编程能力,能够独立设计并实现学生选课系统的核心功能。

3.情感态度价值观目标:学生通过本课程的学习,能够培养对计算机编程的兴趣和热情,提高解决问题的能力,培养团队协作和自主学习的意识。

二、教学内容根据课程目标,教学内容主要包括以下几个部分:1.C语言基础知识:包括基本语法、数据类型、运算符、控制结构等。

2.函数:包括函数的定义、声明、调用等。

3.数组和字符串:包括一维数组、多维数组、字符串的基本操作等。

4.指针:包括指针的基本概念、指针与数组、指针与函数等。

5.结构体和文件:包括结构体的定义和使用、文件的读写操作等。

6.学生选课系统的设计与实现:包括系统需求分析、系统设计、核心功能实现等。

三、教学方法为了达到课程目标,我们将采用以下教学方法:1.讲授法:通过讲解C语言的基本语法、数据类型、运算符、控制结构等知识,让学生掌握C语言的基础知识。

2.案例分析法:通过分析实际的学生选课系统的案例,让学生了解并掌握系统的设计与实现方法。

3.实验法:让学生通过动手编写程序,巩固所学知识,提高编程能力。

4.小组讨论法:分组让学生讨论并解决问题,培养团队协作和自主学习的意识。

四、教学资源为了支持教学内容和教学方法的实施,我们将准备以下教学资源:1.教材:《C语言程序设计》等相关教材。

2.参考书:提供相关的C语言编程参考书籍,供学生自主学习。

3.多媒体资料:制作课件、教学视频等,丰富教学手段,提高学生的学习兴趣。

4.实验设备:提供计算机实验室,让学生能够进行上机实验,提高编程能力。

五、教学评估为了全面、客观、公正地评估学生的学习成果,我们将采用以下评估方式:1.平时表现:通过学生在课堂上的参与度、提问回答、小组讨论等表现,评估学生的学习态度和积极性。

学生选课系统c课程设计

学生选课系统c课程设计

学生选课系统c 课程设计一、教学目标本课程旨在让学生掌握学生选课系统C的基本原理和使用方法。

知识目标包括了解学生选课系统的功能、结构和常用技术,理解面向对象设计的基本概念和方法。

技能目标包括能够使用学生选课系统C进行课程选择和排课,能够进行简单的系统设计和优化。

情感态度价值观目标包括培养学生对编程和计算机科学的兴趣和热情,提高学生解决问题的能力和创新精神。

二、教学内容本课程的教学内容主要包括学生选课系统C的基本原理、系统结构和常用技术,面向对象设计的基本概念和方法,以及学生选课系统C的实践应用。

具体包括以下几个部分:1.学生选课系统C的基本原理:介绍学生选课系统C的定义、功能和特点,让学生了解学生选课系统C的基本概念。

2.学生选课系统C的系统结构:讲解学生选课系统C的组成部分,包括数据库、服务器和客户端等,让学生了解学生选课系统C的架构和运行机制。

3.学生选课系统C的常用技术:介绍学生选课系统C中常用的技术,如SQL、Java等,让学生掌握学生选课系统C的开发和实现方法。

4.面向对象设计的基本概念和方法:讲解面向对象设计的基本原则和方法,如封装、继承和多态等,让学生掌握面向对象设计的思维方式和实际应用。

5.学生选课系统C的实践应用:通过实际操作,让学生学会使用学生选课系统C进行课程选择和排课,培养学生的实际操作能力。

三、教学方法为了提高教学效果,本课程将采用多种教学方法相结合的方式进行教学。

包括:1.讲授法:通过讲解学生选课系统C的基本原理、系统结构和常用技术,让学生掌握基本概念和知识。

2.讨论法:通过学生进行小组讨论,引导学生思考和探讨学生选课系统C的实际应用问题和解决方案。

3.案例分析法:通过分析典型案例,让学生了解学生选课系统C的实际应用场景和设计方法。

4.实验法:通过实际操作,让学生学会使用学生选课系统C进行课程选择和排课,培养学生的实际操作能力。

四、教学资源为了支持本课程的教学,我们将准备以下教学资源:1.教材:选择合适的教材,为学生提供系统的学习资料。

C语言选课管理系统课程设计

C语言选课管理系统课程设计

C语言选课管理系统课程设计一、教学目标本课程旨在让学生掌握C语言选课管理系统的开发方法,培养其编程能力和问题解决能力。

具体目标如下:1.知识目标:学生能够理解C语言的基本语法、数据结构和常用算法;掌握面向对象编程思想。

2.技能目标:学生能够使用C语言进行程序设计,独立完成选课管理系统的开发;具备调试和优化程序的能力。

3.情感态度价值观目标:培养学生对计算机科学的兴趣,使其认识到编程在实际应用中的重要性,提高其创新精神和团队合作意识。

二、教学内容本课程的教学内容主要包括C语言基础知识、数据结构、算法、面向对象编程和选课管理系统的设计与实现。

具体安排如下:1.C语言基础知识:介绍C语言的基本语法、变量、运算符、控制结构等。

2.数据结构:讲解数组、链表、栈、队列、树等基本数据结构及其应用。

3.算法:学习常用排序算法、查找算法、递归算法等,培养学生的算法思维。

4.面向对象编程:介绍类、对象、封装、继承、多态等基本概念,并学会使用面向对象的方法解决问题。

5.选课管理系统设计与实现:分析系统需求,设计系统架构,编写功能模块,完成系统集成。

三、教学方法本课程采用讲授法、讨论法、案例分析法和实验法等多种教学方法,以激发学生的学习兴趣和主动性。

1.讲授法:用于讲解基本概念、语法和算法,使学生掌握理论知识。

2.讨论法:学生针对案例进行分析,培养其问题解决能力和团队合作精神。

3.案例分析法:分析实际项目案例,使学生学会将理论知识应用于实际问题。

4.实验法:让学生动手编写代码,培养其编程能力和实践能力。

四、教学资源本课程所需教学资源包括教材、参考书、多媒体资料和实验设备。

1.教材:选用权威、实用的教材,如《C程序设计原理与应用》、《C++ Primer》等。

2.参考书:提供相关领域的经典著作,如《算法导论》、《数据结构与算法分析》等。

3.多媒体资料:制作课件、教学视频等,丰富教学手段,提高教学质量。

4.实验设备:保证学生有足够的实践机会,提高其编程能力和实践能力。

原创c语言学生选课系统课程设计

原创c语言学生选课系统课程设计

原创C语言学生选课系统课程设计一、引言学生选课系统是高校管理系统中的重要组成部分,它通过网络为学生提供了方便快捷的选课服务。

本课程设计旨在设计一个基于C语言的学生选课系统,通过实现选课、查看选课结果、修改选课等功能,帮助学生更好地管理自己的选课信息。

二、功能设计1. 学生相关功能1.1 登录功能学生可以通过输入学号和密码登录系统,确保只有正式注册的学生才能使用该系统。

1.2 查看选课信息功能学生登录后可以查看所有可选课程的信息,包括课程名称、授课教师、上课时间等。

1.3 选课功能学生可以根据自己的兴趣和需求选择课程进行选课操作,并将选课结果保存到系统中。

1.4 查看选课结果功能学生可以查看自己已选课程的详细信息,包括课程名称、授课教师、上课时间等。

1.5 修改选课功能学生可以对已选课程进行修改操作,包括添加新课程、删除已选课程等。

2. 管理员相关功能2.1 管理员登录功能管理员可以通过输入管理员账号和密码登录系统,以获得管理员权限。

2.2 添加课程功能管理员登录后可以添加新的课程信息,包括课程编号、课程名称、授课教师、上课时间等。

2.3 删除课程功能管理员可以删除已存在的课程信息,以便及时更新课程列表。

2.4 查看选课情况功能管理员可以查看学生的选课情况,包括学生姓名、所选课程、选课时间等。

2.5 修改选课情况功能管理员可以对学生的选课结果进行修改操作,包括添加课程、删除课程等。

三、系统设计1. 学生数据结构设计在系统中,每个学生可以用一个数据结构来表示,包括学号、姓名、密码等信息。

struct Student {int stuId;char stuName[20];char password[20];};2. 课程数据结构设计每门课程可以用一个数据结构来表示,包括课程编号、课程名称、授课教师、上课时间等信息。

struct Course {int courseId;char courseName[30];char teacher[20];char classTime[20];};3. 数据存储设计使用文件来存储学生和课程信息,其中学生信息存储在一个文件中,课程信息存储在另一个文件中。

课程设计学生选课系统c语言

课程设计学生选课系统c语言

课程设计学生选课系统c语言一、课程目标知识目标:1. 理解C语言的基本语法和结构,掌握学生选课系统相关的数据类型、运算符、控制语句等知识;2. 学会使用C语言设计学生选课系统的功能模块,包括学生信息管理、课程信息管理、选课操作等;3. 了解C语言在学生选课系统中的应用场景,掌握一定的软件设计方法和技巧。

技能目标:1. 能够运用C语言编写简单的学生选课系统程序,具备基本的编程能力;2. 学会分析学生选课系统的需求,设计合理的程序结构,培养解决问题的能力;3. 能够使用调试工具对程序进行调试和优化,提高程序的执行效率。

情感态度价值观目标:1. 培养学生对C语言的兴趣,激发学习编程的热情,提高自主学习的积极性;2. 培养学生的团队协作意识,学会与他人合作完成项目任务;3. 通过实际操作,让学生认识到编程在解决实际问题中的价值,增强社会责任感。

课程性质:本课程为实践性较强的学科,结合实际应用场景,培养学生的编程能力和解决问题的能力。

学生特点:学生在本年级已具备一定的C语言基础,对编程有一定的兴趣和热情,但缺乏实际项目经验。

教学要求:教师需结合学生特点和课程性质,注重理论与实践相结合,引导学生主动参与,提高学生的实践操作能力。

在教学过程中,将课程目标分解为具体的学习成果,便于教学设计和评估。

二、教学内容1. C语言基础回顾:数据类型、变量、运算符、控制语句(选择、循环)、函数等基本概念和用法。

2. 学生选课系统需求分析:介绍学生选课系统的功能模块,分析各模块的需求,明确编程目标和任务。

3. 系统设计:- 数据结构设计:学生、课程等实体的属性和关系,以及数据存储方式;- 界面设计:系统菜单、功能界面等;- 功能模块设计:学生信息管理、课程信息管理、选课操作、查询等模块。

4. 编程实践:- 搭建开发环境,熟悉编程工具;- 编写各功能模块的代码,实现学生选课系统的基本功能;- 调试和优化程序,确保系统的稳定性和性能。

c学生选课管理系统课程设计

c学生选课管理系统课程设计

c 学生选课管理系统课程设计一、教学目标本课程旨在让学生了解和掌握学生选课管理系统的基本原理和实现方法。

通过本课程的学习,学生将能够:1.理解学生选课管理系统的需求和功能。

2.掌握学生选课管理系统的基本架构和模块设计。

3.学会使用相关技术和工具实现学生选课管理系统的各个功能。

4.培养学生的团队合作能力和问题解决能力。

二、教学内容本课程的教学内容主要包括以下几个部分:1.学生选课管理系统概述:介绍学生选课管理系统的定义、需求和功能。

2.系统设计:讲解学生选课管理系统的基本架构和模块设计。

3.技术实现:介绍实现学生选课管理系统各个功能所需要使用的技术和工具。

4.系统测试与优化:讲解如何对 student course selection managementsystem 进行测试和优化。

三、教学方法为了提高学生的学习兴趣和主动性,本课程将采用多种教学方法,包括:1.讲授法:讲解基本概念、原理和关键技术。

2.案例分析法:分析实际案例,让学生更好地理解学生选课管理系统的应用。

3.实验法:让学生通过动手实践,加深对课程内容的理解和掌握。

四、教学资源为了支持教学内容和教学方法的实施,本课程将准备以下教学资源:1.教材:为学生提供全面、系统的理论知识。

2.参考书:提供更多的背景知识和实际案例。

3.多媒体资料:通过视频、图片等形式,丰富学生的学习体验。

4.实验设备:为学生提供实践操作的机会,加深对课程内容的理解和掌握。

五、教学评估本课程的评估方式包括平时表现、作业和考试三个部分。

平时表现主要评估学生的课堂参与度和团队合作能力,占总评的30%。

作业主要包括课后练习和项目任务,占总评的40%。

考试为闭卷考试,评估学生对课程知识的掌握程度,占总评的30%。

六、教学安排本课程共32课时,安排在第8至第16周的每周二、四下午2:00-4:00进行。

教学地点为计算机实验室,以确保学生有足够的实践操作机会。

教学进度安排合理紧凑,确保在有限的时间内完成教学任务。

学生选课系统c课程设计

学生选课系统c课程设计

学生选课系统c 课程设计一、课程目标知识目标:1. 让学生理解学生选课系统的基本概念,掌握其功能模块和使用方法;2. 使学生掌握数据库查询、数据传递和界面设计的相关知识;3. 帮助学生了解编程规范,提高代码质量。

技能目标:1. 培养学生运用所学知识设计并实现一个简单的学生选课系统的能力;2. 培养学生分析问题、解决问题的能力;3. 提高学生的团队协作能力和沟通能力。

情感态度价值观目标:1. 激发学生对计算机科学的兴趣,培养其探索精神;2. 引导学生树立正确的价值观,认识到编程在解决实际问题中的作用;3. 培养学生面对挑战保持积极态度,勇于克服困难。

课程性质:本课程为实践性较强的课程,结合课本知识,通过设计一个学生选课系统,使学生将所学理论知识运用到实际项目中。

学生特点:学生处于高年级阶段,已具备一定的编程基础,对数据库和编程有初步了解,但实际项目经验较少。

教学要求:注重理论与实践相结合,以学生为主体,充分调动学生的积极性和主动性,培养其创新精神和实践能力。

通过课程学习,使学生在掌握知识的同时,提高自身技能和情感态度价值观。

教学过程中,将课程目标分解为具体的学习成果,便于教学设计和评估。

二、教学内容1. 学生选课系统概述:介绍学生选课系统的基本概念、功能模块及其在实际中的应用。

- 教材章节:第1章 数据库系统概述2. 数据库设计与实现:讲解如何设计学生选课系统的数据库,包括表结构设计、数据关系等。

- 教材章节:第2章 数据库设计基础3. 编程语言与开发环境:介绍使用C语言或C++进行学生选课系统开发,讲解开发环境的配置和使用。

- 教材章节:第3章 C/C++编程基础4. 界面设计与实现:教授如何设计和实现用户界面,包括界面布局、功能模块划分等。

- 教材章节:第4章 界面设计与实现5. 系统功能实现:分析学生选课系统各功能模块的实现方法,包括选课、退课、查询课程等。

- 教材章节:第5章 数据库应用开发6. 测试与优化:讲解如何对系统进行测试、调试和优化,保证系统稳定性和性能。

c课程设计学生选课系统

c课程设计学生选课系统

c课程设计学生选课系统一、教学目标本课程的目标是让学生掌握学生选课系统的开发和应用,包括对其原理和实现的理解,以及如何使用该系统进行选课。

•理解学生选课系统的基本原理和架构。

•掌握常用的选课算法和策略。

•熟悉学生选课系统的开发工具和技术。

•能够独立设计和实现一个简单的学生选课系统。

•能够对现有的学生选课系统进行评估和改进。

•能够使用相关的开发工具和技术进行学生选课系统的开发。

情感态度价值观目标:•培养学生的创新意识和团队合作精神,使他们能够在团队中发挥自己的专长,共同完成一个学生选课系统的设计和实现。

•培养学生对技术的热爱和敬业精神,使他们能够持续学习和跟进最新的技术动态,不断提高自己的技能水平。

二、教学内容本课程的教学内容主要包括学生选课系统的原理、选课算法、系统设计、开发工具和技术。

1.学生选课系统的原理:介绍学生选课系统的基本概念、架构和运作机制,包括选课流程、课程分类、学生选课策略等。

2.选课算法:讲解常用的选课算法,如先到先得、最大匹配、最小匹配等,并通过实例进行讲解和分析。

3.系统设计:介绍学生选课系统的系统设计,包括需求分析、模块设计、数据库设计等,并通过实际案例进行讲解和分析。

4.开发工具和技术:介绍学生选课系统的开发工具和技术,如编程语言、数据库管理系统、前端技术等,并通过实际操作进行讲解和演示。

三、教学方法本课程将采用讲授法、讨论法、案例分析法和实验法等多种教学方法进行教学。

1.讲授法:通过讲解和演示,使学生了解学生选课系统的原理、算法、设计和开发工具等技术内容。

2.讨论法:通过学生进行小组讨论,培养他们的团队合作意识和解决问题的能力。

3.案例分析法:通过分析实际案例,使学生更好地理解和掌握学生选课系统的原理和设计方法。

4.实验法:通过实际操作和实验,使学生掌握学生选课系统的开发工具和技术,并培养他们的动手能力。

四、教学资源本课程将使用教材、参考书、多媒体资料和实验设备等教学资源。

学生选课课程设计c语言

学生选课课程设计c语言

学生选课课程设计c语言一、教学目标本课程旨在通过C语言的学习,让学生掌握C语言基本语法、数据结构、函数等基本知识,培养学生编程思维和实际编程能力。

1.掌握C语言基本语法。

2.理解数据结构、函数等基本概念。

3.熟悉C语言编程环境和常用开发工具。

4.能够使用C语言编写简单的程序。

5.具备基本的程序调试和优化能力。

6.能够运用C语言解决实际问题。

情感态度价值观目标:1.培养学生的编程兴趣,提高学生信息素养。

2.培养学生团队合作意识和自主学习能力。

3.培养学生面对挑战、解决问题的勇气和信心。

二、教学内容本课程的教学内容主要包括C语言基本语法、数据结构、函数等。

1.C语言基本语法:变量、数据类型、运算符、表达式、控制结构等。

2.数据结构:数组、链表、栈、队列、树等。

3.函数:函数的定义、调用、参数传递、返回值等。

4.编程实践:通过实际项目让学生运用所学知识解决实际问题。

三、教学方法本课程采用讲授法、讨论法、案例分析法和实验法等多种教学方法。

1.讲授法:用于讲解C语言基本语法、数据结构和函数等理论知识。

2.讨论法:引导学生分组讨论实际编程问题,培养团队合作意识。

3.案例分析法:分析经典案例,让学生了解C语言在实际项目中的应用。

4.实验法:让学生动手编写代码,提高实际编程能力。

四、教学资源1.教材:《C语言程序设计》。

2.参考书:《C语言编程思想》、《C语言实战》。

3.多媒体资料:教学PPT、视频教程。

4.实验设备:计算机、网络环境。

教学资源的选择和准备应充分支持教学内容和教学方法的实施,为学生提供丰富的学习体验。

五、教学评估本课程的评估方式包括平时表现、作业、考试等,以全面、客观、公正地评价学生的学习成果。

1.平时表现:包括课堂参与度、提问回答、小组讨论等,占总评的30%。

2.作业:布置适量作业,让学生巩固所学知识,占总评的30%。

3.考试:包括期中和期末考试,测试学生对C语言知识的掌握程度,占总评的40%。

原创c语言学生选课管理系统课程设计

原创c语言学生选课管理系统课程设计

原创C语言学生选课管理系统课程设计一、引言本文档旨在设计一个基于C语言的学生选课管理系统。

该系统旨在帮助学校管理学生的选课,并提供了学生选课、课程管理、成绩管理等功能。

通过该系统,学生和教师可以方便地进行选课和管理各项学业活动。

本文档将详细介绍该系统的设计与实现。

二、系统需求分析1. 用户角色该系统主要包括以下用户角色:•学生:能够进行选课、查看成绩等操作。

•教师:能够进行课程管理、成绩管理等操作。

•管理员:能够对学生和教师信息进行管理。

2. 功能需求根据用户角色的不同,该系统有以下几个主要功能需求:•学生选课:学生可以选择感兴趣的课程进行选课。

•课程管理:教师可以添加、修改和删除课程信息。

•成绩管理:教师可以录入学生成绩,并提供查询功能。

•用户信息管理:管理员可以管理学生和教师的信息,包括添加、修改和删除操作。

3. 非功能需求以下是该系统的一些非功能性需求:•用户友好性:系统界面简洁美观,操作简单易懂。

•数据安全性:用户数据应进行加密存储,保证数据的安全性。

•性能要求:系统可以同时处理多个用户的请求,响应时间不超过1秒。

三、系统设计与实现1. 系统架构本系统采用客户端-服务器模式,使用C语言编写。

2. 数据库设计系统使用文件存储学生和课程信息,以实现数据持久化。

每个学生和课程信息以一行字符串的形式存储,不同字段之间使用逗号分隔。

管理员可以通过对文件的读写操作来实现对学生和课程信息的管理。

3. 用户界面设计系统的用户界面使用文本方式呈现,通过文字菜单来进行操作选择。

使用者可以根据菜单提示进行相应的操作。

4. 功能模块设计本系统主要包括以下几个功能模块:学生选课模块、课程管理模块、成绩管理模块和用户信息管理模块。

•学生选课模块:学生可以浏览可选课程列表,并选择感兴趣的课程进行选课。

•课程管理模块:教师可以添加、修改和删除课程信息,并提供课程列表查询功能。

•成绩管理模块:教师可以录入学生成绩,并提供成绩查询功能。

c语言课程设计学生选课系统设计

c语言课程设计学生选课系统设计

c语言课程设计学生选课系统设计一、课程目标知识目标:1. 理解C语言的基本语法和结构,掌握数组、指针、函数等基本概念;2. 学会使用结构体、文件操作等C语言特性进行数据组织和存储;3. 掌握面向过程编程思想,能够运用C语言设计简单的学生选课系统。

技能目标:1. 能够运用结构化编程方法,编写模块化的C语言代码;2. 学会使用C语言进行简单的数据输入、处理和输出;3. 能够运用调试工具,分析并解决程序中的错误。

情感态度价值观目标:1. 培养学生对计算机编程的兴趣,激发自主学习编程的积极性;2. 培养学生的团队合作意识,学会在团队中发挥个人优势,共同解决问题;3. 培养学生严谨、细心的编程习惯,认识到编程对培养逻辑思维能力和解决问题能力的重要性。

课程性质:本课程为C语言程序设计课程的实践环节,以学生选课系统设计为主题,结合C语言编程知识,培养学生的实际编程能力和解决问题的能力。

学生特点:学生已具备一定的C语言基础,对编程有一定了解,但实际操作能力有待提高。

教学要求:结合学生特点和课程性质,将课程目标分解为具体的学习成果,注重实践操作,强化编程能力和团队协作能力的培养。

在教学过程中,关注学生个体差异,提供个性化指导,确保课程目标的达成。

二、教学内容1. C语言基础知识复习:数组、指针、函数、结构体、文件操作等基本概念和用法。

教材章节:第三章数组和第四章函数。

2. 面向过程编程思想:顺序结构、分支结构、循环结构等控制结构在实际编程中的应用。

教材章节:第五章控制结构。

3. 学生选课系统需求分析:了解系统功能、模块划分,明确编程目标和任务。

教材章节:项目实训部分。

4. 学生选课系统设计:模块化设计、数据结构设计、界面设计等。

教材章节:项目实训部分。

5. 编程实践:根据设计文档,编写C语言代码实现学生选课系统。

教材章节:项目实训部分。

6. 调试与测试:使用调试工具,对程序进行调试和测试,确保系统功能的正确性和稳定性。

c课程设计学生选课系统设计

c课程设计学生选课系统设计

c 课程设计学生选课系统设计一、教学目标本课程的目标是让学生掌握学生选课系统的设计和实现。

知识目标包括:了解学生选课系统的需求分析、系统设计、实现和测试的基本知识;掌握常用的数据结构和算法在学生选课系统中的应用。

技能目标包括:能够使用相关工具进行学生选课系统的开发;具备学生选课系统的设计和实现能力。

情感态度价值观目标包括:培养学生对计算机科学的兴趣和热情;培养学生团队协作和自主学习的意识。

二、教学内容本课程的教学内容主要包括:学生选课系统的需求分析、系统设计、实现和测试。

首先,介绍学生选课系统的需求分析,包括功能需求和非功能需求;然后,讲解学生选课系统的系统设计,包括模块划分、数据结构和算法设计;接着,介绍学生选课系统的实现,包括编程语言和开发工具的选择;最后,讲解学生选课系统的测试,包括测试用例的设计和测试结果的分析。

三、教学方法为了达到本课程的教学目标,将采用多种教学方法,包括讲授法、案例分析法、实验法等。

首先,通过讲授法向学生传授学生选课系统的相关理论知识;然后,通过案例分析法让学生了解实际的学生选课系统设计和实现过程;接着,通过实验法让学生亲手实践,加深对理论知识的理解;最后,通过小组讨论和报告,培养学生的团队协作和沟通能力。

四、教学资源为了支持本课程的教学内容和方法,将准备多种教学资源,包括教材、参考书、多媒体资料和实验设备。

教材和参考书将用于提供理论知识的讲解和示例;多媒体资料将用于辅助讲解和展示;实验设备将用于让学生亲手实践。

这些教学资源将帮助学生更好地理解和掌握学生选课系统的设计和实现。

五、教学评估本课程的评估方式包括平时表现、作业和考试三个部分。

平时表现主要评估学生的课堂参与和团队协作能力,包括课堂提问、小组讨论和报告等;作业主要评估学生的理解和应用能力,包括练习题和项目任务等;考试主要评估学生的综合运用能力,包括理论知识和实践技能的考核。

评估方式应客观、公正,能够全面反映学生的学习成果。

学生选课系统课程设计c语言

学生选课系统课程设计c语言

学生选课系统课程设计c语言一、教学目标本课程的学习目标包括以下三个方面:1.知识目标:学生需要掌握C语言的基本语法、数据类型、运算符、控制结构、函数等基础知识,理解面向对象编程的基本概念,并能够运用C语言进行简单的程序设计。

2.技能目标:学生能够熟练使用C语言进行程序设计,具备良好的编码习惯和调试能力,能够独立解决程序中的问题,并能够阅读和理解他人的代码。

3.情感态度价值观目标:学生应该培养对计算机科学的兴趣和热情,认识编程对个人和社会的意义,遵守编程规范和道德准则,培养团队合作精神和创新思维。

二、教学内容本课程的教学内容主要包括以下几个部分:1.C语言基础知识:数据类型、变量、运算符、控制结构、函数等。

2.面向对象编程:类和对象、继承和多态、封装和抽象等。

3.程序设计:数组、字符串、指针、文件操作等。

4.算法和数据结构:基本算法、排序算法、树结构等。

5.编程实践:综合运用所学知识进行实际项目的开发和实现。

三、教学方法本课程的教学方法包括以下几种:1.讲授法:教师通过讲解和示例,向学生传授C语言的基本知识和编程技巧。

2.讨论法:学生通过小组讨论,共同解决问题,加深对知识的理解和应用。

3.案例分析法:分析实际的编程案例,让学生了解编程在实际中的应用和解决方法。

4.实验法:学生通过编写和调试程序,巩固所学知识,提高编程能力。

四、教学资源本课程的教学资源包括以下几种:1.教材:《C程序设计语言》或《C Primer Plus》等。

2.参考书:《C和指针》、《C专家编程》等。

3.多媒体资料:教学PPT、视频教程、在线编程练习等。

4.实验设备:计算机、编程环境、调试工具等。

五、教学评估本课程的评估方式包括以下几个方面:1.平时表现:通过学生的课堂参与、提问、讨论等表现来评估学生的学习态度和积极性。

2.作业:布置适量的作业,要求学生按时完成,并根据作业的质量和完成情况给予评分。

3.考试:进行定期考试,包括期中考试和期末考试,以评估学生对课程知识的掌握程度和应用能力。

c语言学生选课系统课程设计

c语言学生选课系统课程设计

c语言学生选课系统课程设计一、教学目标本课程的目标是让学生掌握C语言编程的基本技能,通过设计和实现一个学生选课系统,培养学生的实际编程能力和问题解决能力。

具体目标如下:知识目标:使学生掌握C语言的基本语法、数据类型、运算符、控制结构、函数等基本知识。

技能目标:培养学生使用C语言进行程序设计的能力,包括变量定义、输入输出、条件判断、循环控制等。

情感态度价值观目标:培养学生对计算机科学的兴趣,增强学生的创新意识和团队协作精神。

二、教学内容教学内容以教材《C程序设计》为主线,结合学生选课系统的实际需求,安排如下:1.C语言基础知识:数据类型、变量、运算符、表达式等。

2.控制结构:顺序结构、分支结构、循环结构等。

3.函数:函数的定义、调用、参数传递、返回值等。

4.数组和字符串:一维数组、多维数组、字符串的基本操作等。

5.指针:指针的概念、指针的运算、指针与数组、指针与函数等。

6.结构体和文件:结构体的定义和使用、文件的打开、读写、关闭等。

7.学生选课系统的设计与实现:系统需求分析、系统设计、功能模块划分、编程实现等。

三、教学方法本课程采用讲授法、案例分析法、实验法等多种教学方法相结合,以激发学生的学习兴趣和主动性。

1.讲授法:用于讲解C语言的基本语法、数据类型、运算符、控制结构等知识。

2.案例分析法:通过分析学生选课系统的实际案例,使学生掌握函数的定义、调用等。

3.实验法:让学生亲自动手编写代码,实现学生选课系统的各个功能模块。

四、教学资源教学资源包括教材、实验设备、多媒体资料等,以支持教学内容和教学方法的实施,丰富学生的学习体验。

1.教材:《C程序设计》。

2.实验设备:计算机、网络等。

3.多媒体资料:教学PPT、视频教程、在线编程练习等。

五、教学评估为了全面、客观地评估学生的学习成果,本课程采用以下评估方式:1.平时表现:评估学生在课堂上的参与度、提问回答、小组讨论等,以考察学生的学习态度和积极性。

2.作业:布置适量的课后作业,让学生巩固所学知识,并通过作业批改了解学生的掌握情况。

c语言学生选课系统课程设计

c语言学生选课系统课程设计

c语言 学生选课系统课程设计一、课程目标知识目标:1. 掌握C语言基础语法,包括数据类型、变量、运算符、控制结构等;2. 学会使用数组、函数、指针等C语言高级特性;3. 理解结构体、文件操作等在C语言中的应用;4. 了解C语言在开发学生选课系统中的实际应用。

技能目标:1. 能独立编写C语言程序,实现学生选课系统的基本功能;2. 学会使用C语言进行数据存储、处理和展示;3. 培养良好的编程习惯,注重代码规范和注释;4. 学会分析问题,设计合理的算法和程序结构。

情感态度价值观目标:1. 培养学生对计算机编程的兴趣,激发学习热情;2. 培养学生团队合作意识,学会与他人共同解决问题;3. 增强学生的自信心,敢于面对编程挑战;4. 培养学生的创新思维,敢于尝试新方法解决问题。

课程性质:本课程为实践性较强的课程,旨在让学生在实际操作中掌握C语言编程技能,培养学生解决实际问题的能力。

学生特点:学生具备一定的C语言基础,对编程有一定了解,但对实际项目的开发尚无经验。

教学要求:注重理论与实践相结合,强调动手实践,引导学生通过团队协作完成课程设计任务。

在教学过程中,关注学生个体差异,提供个性化指导,确保学生达到课程目标。

将课程目标分解为具体的学习成果,便于教学设计和评估。

二、教学内容1. C语言基础语法复习:数据类型、变量、常量、运算符、表达式、控制结构(顺序、选择、循环)。

教材章节:第一章至第三章。

2. 数组与字符串:一维数组、二维数组、字符串操作。

教材章节:第四章。

3. 函数与指针:函数定义、调用、递归;指针的概念、使用。

教材章节:第五章、第六章。

4. 结构体与文件操作:结构体的定义和使用;文件读写操作。

教材章节:第七章、第十章。

5. 学生选课系统需求分析:功能模块划分、数据结构设计。

教材章节:项目实战部分。

6. 编程实现学生选课系统:根据需求分析,编写程序代码,实现选课、退课、查询课程、显示选课结果等功能。

教材章节:项目实战部分。

c语言选课系统课程设计

c语言选课系统课程设计

c语言选课系统课程设计一、教学目标本课程的目标是让学生掌握C语言编程的基本知识,学会使用C语言进行程序设计,培养学生的编程思维和解决问题的能力。

具体的学习目标包括:1.知识目标:•掌握C语言的基本语法和数据结构;•了解C语言的编程思想和程序设计的基本方法;•熟悉C语言的编译和调试工具。

2.技能目标:•能够使用C语言编写简单的程序;•能够运用C语言解决实际问题;•具备基本的编程调试能力。

3.情感态度价值观目标:•培养学生的团队合作意识和沟通能力;•培养学生对编程的兴趣和热情;•培养学生解决问题的自信心和坚持不懈的精神。

二、教学内容根据课程目标,教学内容主要包括以下几个部分:1.C语言的基本语法和数据结构;2.C语言的编程思想和程序设计的基本方法;3.C语言的编译和调试工具的使用;4.编程实践和问题解决。

具体的教学大纲如下:第1-2周:C语言的基本语法和数据结构;第3-4周:C语言的编程思想和程序设计的基本方法;第5-6周:C语言的编译和调试工具的使用;第7-8周:编程实践和问题解决。

为了激发学生的学习兴趣和主动性,本课程将采用多种教学方法,包括:1.讲授法:通过讲解和示例,让学生掌握C语言的基本语法和编程方法;2.讨论法:通过小组讨论和问题解答,培养学生的团队合作意识和沟通能力;3.案例分析法:通过分析实际案例,让学生学会运用C语言解决实际问题;4.实验法:通过编程实践和实验操作,提高学生的编程能力和问题解决能力。

四、教学资源为了支持教学内容和教学方法的实施,丰富学生的学习体验,我们将选择和准备以下教学资源:1.教材:《C程序设计语言》或《C Primer Plus》;2.参考书:《C语言程序设计实例教程》或《C语言编程之美》;3.多媒体资料:教学PPT、视频教程、在线编程练习平台;4.实验设备:计算机、编程环境、调试工具。

五、教学评估为了全面、客观地评估学生的学习成果,本课程将采用多种评估方式,包括:1.平时表现:通过课堂参与、提问、小组讨论等环节,评估学生的学习态度和参与程度;2.作业:通过布置练习题、编程任务等,评估学生的知识掌握和编程能力;3.考试:通过期中和期末考试,评估学生的综合运用能力和学习成果。

C语言选课管理系统课程设计

C语言选课管理系统课程设计

C语言选课管理系统课程设计一、课程目标知识目标:1. 理解C语言编程基本概念,掌握基本语法和数据类型;2. 学习使用C语言实现一个简单的选课管理系统,理解系统设计的基本流程;3. 掌握利用数组、结构体等数据结构进行信息存储和管理;4. 了解文件操作在C语言中的应用,实现对选课信息的持久化存储。

技能目标:1. 能够运用C语言编写程序,实现选课管理系统的基本功能,如学生信息的添加、删除、修改和查询;2. 能够通过编写代码解决实际问题,培养编程思维和逻辑思维能力;3. 能够对程序进行调试和优化,提高程序性能和稳定性;4. 学会使用集成开发环境(IDE)进行C语言程序的开发和调试。

情感态度价值观目标:1. 培养学生主动探索、积极思考的学习态度,增强解决问题的自信心;2. 培养学生的团队协作精神,学会与他人共同完成任务;3. 增强学生的信息意识,认识到编程在现代社会中的重要作用;4. 培养学生的创新意识,激发对计算机科学的兴趣。

本课程针对高中年级学生,结合C语言学科特点,注重理论与实践相结合,以选课管理系统为实际案例,培养学生编程兴趣,提高实际编程能力。

课程目标具体、可衡量,旨在让学生在掌握C语言知识的同时,培养解决问题的能力和团队协作精神。

二、教学内容1. C语言基础知识回顾:变量、数据类型、运算符、表达式、控制语句(条件语句、循环语句);2. 函数:函数定义、调用、参数传递、返回值、库函数使用;3. 数组和字符串:一维数组、二维数组、字符串处理;4. 结构体和文件操作:结构体定义、结构体数组、文件读写;5. 选课管理系统功能模块设计:- 学生信息管理:添加、删除、修改、查询;- 选课信息管理:选课、退课、查询选课结果;- 系统界面设计:用户登录、菜单显示、功能选择;6. 程序调试与优化:调试技巧、性能优化、代码规范;7. 综合案例分析与实践:根据教材案例,结合实际需求,设计并实现选课管理系统。

教学内容按照教材章节进行安排,结合课程目标,确保学生掌握C语言基础知识,并能运用所学知识完成选课管理系统的设计与实现。

c课程设计选课系统

c课程设计选课系统

c 课程设计选课系统一、教学目标本课程的教学目标是使学生掌握C语言的基本语法、编程技巧和相关概念,培养学生具备运用C语言进行程序设计的能力。

具体目标如下:1.知识目标:(1)掌握C语言的基本语法和数据类型;(2)了解C语言的运算符和表达式;(3)学会使用C语言进行流程控制、函数调用和数组操作;(4)理解C语言的指针、引用和内存管理。

2.技能目标:(1)能够运用C语言编写简单的程序;(2)具备阅读和理解C语言程序的能力;(3)掌握C语言的调试技巧和编程规范;(4)能够运用C语言解决实际问题。

3.情感态度价值观目标:(1)培养学生对计算机科学的兴趣和热情;(2)培养学生勇于探索、创新的精神;(3)培养学生团队合作和沟通交流的能力;(4)培养学生具有良好的编程习惯和职业道德。

二、教学内容根据课程目标,本课程的教学内容主要包括以下几个方面:1.C语言的基本语法和数据类型;2.C语言的运算符和表达式;3.C语言的流程控制、函数调用和数组操作;4.C语言的指针、引用和内存管理;5.C语言的编程技巧和实例分析。

教学大纲安排如下:第1-2周:C语言的基本语法和数据类型;第3-4周:C语言的运算符和表达式;第5-6周:C语言的流程控制、函数调用和数组操作;第7-8周:C语言的指针、引用和内存管理;第9-10周:C语言的编程技巧和实例分析。

三、教学方法本课程采用多种教学方法,以激发学生的学习兴趣和主动性:1.讲授法:教师讲解C语言的基本语法、概念和编程技巧;2.案例分析法:分析实际编程案例,让学生了解C语言在实际应用中的作用;3.实验法:学生动手编写程序,巩固所学知识;4.讨论法:分组讨论编程问题,培养学生的团队协作能力。

四、教学资源本课程所需教学资源包括:1.教材:《C程序设计语言》(K&R);2.参考书:《C Primer Plus》、《C语言程序设计》;3.多媒体资料:PPT课件、编程实例及视频教程;4.实验设备:计算机、编程环境(如Code::Blocks、Visual Studio等)。

c语言课程设计—学生选课系统-doc

c语言课程设计—学生选课系统-doc

武汉理工大学华夏学院课程设计报告书课程名称:C课程设计学生选课系统能提供学生选课,以及学生和课程信息管理等一系列功能。

要求完成的主要任务:(包括课程设计工作量及其技术要求,以及说明书撰写等具体要求)1、任务描述假定有n门课程,每门课程有课程编号,课程名称,课程性质,学时,授课学时,实验或上机学时,学分,开课学期等信息,学生可按要求(如总学分不得少于15)自由选课。

试设计一个选修课程系统,使之能提供以下功能:(1)系统以菜单方式工作(2)课程信息和学生选课信息录入功能(课程信息用文件保存)(3)课程信息浏览功能(4)查询功能(5)按学分查询(6)某门课程学生选修情况(可选项)2、本课程涉及的知识点变量的定义、输入和输出函数、结构体类型的定义、结构体数组、循环语句、选择语句,文件的操作等。

【参考文献】罗列在设计过程中查阅的文献名称注意:参考文献罗列的格式为资料编号•作者姓名•文献或期刊名称•出版社名称,文献的出版时间或期刊的期号例如:文献[1]谭浩强.,C程序设计(第二版)[M],北京:清华大学出版社,2001年期刊[2]于振海.officeXP网上数据存取.计算机应用文摘[J],2003,24;69(页)二、课程设计说明书(或报告书)正文的书写格式简介一、正文标题层次正文题序层次是文章结构的框架,一般采用社会通用的论文书写形式。

即章条序码统一用阿拉伯数字表示,题序层次可以分为若干级,各级号码之间加小圆点,末尾一级的后面不加小圆点,层次分级一般不超过四级为宜,示例如下:1设计题目学生选课系统2开发环境2.1硬件环境微机系列,内存在1G以上2.2软件环境Win7系统3开发工具MicrosoftVisualC++6.04完成时间2016年2月29日—2016年3月4日5需求分析用户需求如下:假定有n门课程,每门课程有课程编号,课程名称,课程性质,学时,授课学时,实验或上机学时,学分,开课学期等信息,学生可按要求(如总学分不得少于15)自由选课。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

题目一、学生选课管理系统目录第一部分:课程设计名称、目的、要求第二部分:程序总体设计思路第三部分:程序功能划分、图示及流程图第四部分:程序设计数据、运行结果第五部分:程序的优缺点第六部分:心得体会第七部分:附录(源程序)第八部分:附录(参考文献)第一部分:课程设计名称、目的、要求名称:学生选修课程系统设计目的:运用 C 语言提高解决实际问题的能力实验环境: Microsoft Visual C++内容:假定有 n 门课程,每门课程有课程编号,课程名称,课程性质,总学时,授课学时,实验或上机学时,学分,开课学期等信息,学生可按要求(如总学分不得少于 60)自由选课。

【功能】系统以菜单方式工作课程信息录入功能 (课程信息用文件保存 )--输入课程信息浏览功能--输出查询功能: (至少一种查询方式 )--算法按学分查询按课程性质查询学生选修课程 (可选项 )第二部分:程序总体设计思路由于 C语言是面对过程的语言,故我的设计思路是根据目标程序运行的过程来编写的。

具体的设计思路如下:程序的要求是设计学生选修课管理系统,对选修课程能够进行录入和修改操作等,要求有菜单界面和退出功能。

首先,考虑到程序的数据输入,可以设置一个管理员登陆选项,通过该选项进入管理员界面,进行选修课的录入和修改操作,最后将录入的课程保存到相应的文件中。

然后定义各种函数的功能包括查看,查询,删除等。

另一个为学生登陆界面,该界面学生可以进行课程选择和浏览查询等操作。

在进行该操作之前需要对管理员保存的文件进行读取,然后对其中的内容进行查询等,在学生选好课程以后,可以将其选好的课程保存于相应的文件中,以便下次进行修改。

通过函数的层层调用来实现程序的逻辑结构。

中间通过文件的打开和关闭实现对文件内部所包含的数据的操作。

整个程序的设计思路到此结束。

第三部分:程序功能划分、图示及流程图【功能模块划分及其流程图】本程序功能模块根据程序设计的需求,综合程序的实用性、人性化、智能化的考虑,将程序划分为 6 个部分分别编写,程序主体功能将由这9 个部分来完成。

这9 个部分依次是:登录界面函数; void login()学生登录界面据函数:void stu_login()管理员登录界面函数:void man_login()退出界面函数: void bye_sys()课程选择函数: void c_select()课程浏览函数: void c_view()课程查询函数: void c_search()课程增加函数: void c_add()课程删除函数: void c_delete()菜单函数: void index()主函数部分;main()总体设计:学生选课系统管理员登录学生登录新增课程删除课程课程浏览查询课程学生选课课程浏览课程查询c_add函数c_delete函数 c_view函数c_search函数 c_select函数c_view函数c_search函数系统功能模块图部分函数流程图:课程选择函数:开始输入要选择的课程的编号j=0;j<i;( i初始化为 0)courses[j].c_num==nYflag++j++flag==0YN N没有找到对应课程选课成功结束课程查询函数开始输入要查询的课程的编号j=0;j<i-1;( i初始化为 0)courses[j].c_num==nNYflag++j++Nflag==0Y没有找到对应课程打印相应的课程结束课程增加函数开始输入要增加的课程的编号j=0;j<i-1;( i初始化为 0)courses[j].c_num==nYprintf (“编号已使用过”)j++Nfrwrite 写入课程信息到文件结束4、课程删除函数开始输入要删除的课程的编号 nj=0;j<i-1;( i初始化为 0)courses[j].c_num==nY Nk=0;k<j;frwrite 写入课程信息到文件k++k=j+1;k<i-1;k++j++不存在相应课程结束第四部分:程序设计数据、运行结果本程序是一款应用软件,故数据设计、程序运行结果应在程序的运用中得以体现,现在通过一个程序的运用事例来对程序运行结果进行演示与实现。

【软件运用举例】1、程序开始界面如下:选择某个选项,如进行管理员登录,进行课程的增加进入管理员界面:2、再选择所要进行的操作,如进行课程增加,结果如下:下面可以进行继续增加课程或者退出:3、选择课程浏览,可以分页查看相应的课程信息:第一页:第二页:4、课程查询查找结果:管理员课程删除操作:删除后可以进行浏览,观察删除后的结果:可见删除后只有一条记录。

删除操作完成正确。

下面进行学生操作的使用方法:1、学生登陆界面:2、选择学生选课选项:3、学生登陆也可进行课程浏览和查询函数,其结果与管理员登陆相同,不再演示。

第五部分:程序的优缺点【程序的优点】算法是程序的灵魂,程序的优点首先表现在算法上的优点,其次才是功能上的。

[算法上的优点]主要体现在以下三点:程序采用 main 主函数方式设计,程序的主体的功能大都由该功能完成。

程序如此设计有利于程序的进一步改进及有助于程序执行效率的提高。

程序对文件数据的读写采用了 fread 和 fwrite 块读写函数,能够将文件中的数据完全读出,然后赋到定义的数组中,再在相应的数组中进行一系列操作,最终再写入文件。

插入操作在本程序中将课程信息直接插入数组最后一个节点,从而减少了数据的相互移动,节省了时间。

[功能上的优点]主要体现在以下两点:简洁明了的程序菜单。

程序主要采用了层次不同的菜单,相互独立又相互联系,巧妙相接,符合用户的使用习惯与思维。

人性化的程序提示语言,程序提示语言较人性化,不仅大多为祈使语句、疑问句,而且提示明确,具有较强的明确的指导作用。

程序提示不仅层次分明,提示方式多样,而且提示信息井然有序,更加有利于用户顺利、准确地看懂程序并进行操作。

【程序的缺点】主要表现在以下两点:本程序没有进行相应的密码操作,所以对于使用者来说可能存在比较大的不保密性。

需要改善。

本程序没有使用文本读写函数fscanf 和 fprintf ,所以的到的课程文件和选课文件都是二进制形式。

第六部分:心得体会选课系统程序比起通讯录程序来讲好写一些,由于本程序用到了数组,对于数组的操作掌握的比较熟练,所以在编写程序的时候困难没有那么多。

本程序在编写的过程中用到了许多通讯录中的模块化设计和函数互相调用的思想,使得编写比较方便和好用。

通过该系统的课程设计分析,我掌握了模块化设计的方法,理解和运用了结构化程序设计的思想和方法,掌握和提高了运用C 语言进行程序设计的能力。

程序设计的过程,实际上是确定解决问题的详细步骤,而这个步骤通常叫做流程,在程序设计过程中理清楚整个问题的流程很重要,然后采取逐步细化的方法实现整个程序。

对于一个较大的应用程序,一般不可能一次就设计出一个很完善的系统。

通常要先设计满足基本要求的系统,然后再测试或者在使用的过程中不断完善,慢慢地做成一个功能很完善选修课程管理系统。

所以在进行调试的时候需要对许多变量理解和掌握其变化规律等,这对于我更好的掌握 visual C 中调试的工具有很大的帮助。

总之经过这次课程设计,我对c 语言的使用和理解都有了很大的加深,对于编程的思想也有了很多新的理解和感受。

第七部分:附录一、参考文献:1、李丽娟主编,C语言程序设计教程(第二版),人民邮电出版社2、严蔚敏主编,数据结构( C 语言),清华大学出版社3、崔单主编, C 语言程序设计案例精粹,电子工业出版社4、谭浩强主编,程序设计(第三版),清华大学出版社二、源程序#include""#include""#include""#include""void index(); 生登录 \n");printf("\t2.管理员登陆\n");printf("\t3.退出本系统\n");printf("\t 请选择服务类别:");scanf("%d",&input);if (input!=1&&input!=2&&input!=3)增课程\n");printf("\t2.删除课程\n");printf("\t3.课程浏览\n");printf("\t4.课程查询\n");printf("\t5.退出\n");printf("\n\n\t 请选择服务种类:");scanf("%d",&in);if(in!=1&&in!=2&&in!=3&&in!=4&&in!=5){printf("\n\t 没有这项服务\t 按任意重新选择");getchar();getchar();}}while(in!=1&&in!=2&&in!=3&&in!=4&&in!=5);switch(in){case 1:c_add();break;case 2:c_delete();break;case 3:c_viewm();break;case 4:c_searchm();break;case 5:login();break;}}void stu_login() 生选课 \n");printf("\t2.课程浏览\n");printf("\t3.课程查询\n");printf("\t4.退出\n");scanf("%d",&input);if(input!=1&&input!=2&&input!=3&&input!=4){printf("\n\t 没有这项服务~\n");printf("\t 按任意键重新选择");getchar();getchar();}}while(input!=1&&input!=2&&input!=3&&input!=4);switch(input){case 1:c_select();break;case 2:c_views();break;case 3:c_searchs();break;case 4:login();break;}}void c_select(){int n,in,i=0,j;int flag=0;FILE *fp;FILE *fp1;char input;struct course courses[10];if((fp=fopen("","rb"))==NULL) _num==n)flag++;if(flag==0){printf("\n\n\t\t不存在对应课程\n");printf("\n\n\t\t继续选课请按1,退出请按2:\n");scanf("%d",&in);switch(in){case 1:c_select();break;case 2:stu_login();break;default:printf(" 输入错误,将返回登录界面!\n");login();break;}}else{fwrite(&courses[j],sizeof(struct course),1,fp1);fclose(fp1);printf("\n\n\t\t选课成功\t请选择:");printf("\n\n\t\t1.继续选课");printf("\n\n\t\t2.退出,返回登录界面!");scanf("%d",&in);switch(in){case 1:c_select();break;case 2:stu_login();break;default:break;}}}void c_viewm()_num);printf("\n\n\t 课程名字:%s\n",courseview[n].c_name);printf("\n\n\t 课程学分:%d\n",courseview[n].c_score);printf("\n\n\t 课程已选人数:%d\n",courseview[n].c_nelepeo);printf("\n\n\t 课程人数上限:%d\n",courseview[n].c_melepeo);printf("\n\n\t1. 上一页 \t2. 下一页 \t3. 回目录 ");printf("\n 请选择: ");scanf ("%d",&inp);switch(inp){case 1:{if(n==0){printf("\n\t 已到达首页\t 按任意键返回");input=getchar();input=getchar();}else{n=n-1;}break;}case 2:{if(n==i-2){printf("\n\t 已到达尾页 \t 按人意见返回");input=getchar();input=getchar();}else{n=n+1;}break;}case 3:{man_login();break;}default:{printf("\n\t 操作错误 \t 按任意键返回");getchar();getchar();break;}}}}while(inp!=3);}}void c_views()_num);printf("\n\n\t 课程名字:%s\n",courseview[n].c_name);printf("\n\n\t 课程学分:%d\n",courseview[n].c_score);printf("\n\n\t 课程已选人数:%d\n",courseview[n].c_nelepeo);printf("\n\n\t 课程人数上限:%d\n",courseview[n].c_melepeo);printf("\n\n\t1. 上一页 \t2. 下一页 \t3. 回目录 ");printf("\n请选择:");scanf ("%d",&inp);switch(inp){case 1:{if(n==0){printf("\n\t 已到达首页\t 按任意键返回");input=getchar();input=getchar();}else{n=n-1;}break;}case 2:{if(n==i-2){printf("\n\t 已到达尾页 \t 按人意见返回");input=getchar();input=getchar();}else{n=n+1;}break;}case 3:{stu_login();break;}default:{printf("\n\t 操作错误 \t 按任意键返回");getchar();getchar();break;}}}}while(inp!=3);}}void c_searchs(){void stu_login();void c_searchs();int id,i=0,j,inp,k;int flag=0;FILE *fp;struct course coursesear[10];if ((fp=fopen("","rb"))==NULL){_num)flag++;k=j;}}if(flag==1){system("cls");printf("\n\n\t printf("\n\n\t printf("\n\n\t printf("\n\n\t printf("\n\n\t 课程编号 :%d\n",coursesear[k].c_num);课程名字 :%s\n",coursesear[k].c_name);课程学分 :%d\n",coursesear[k].c_score);课程已选人数:%d\n",coursesear[k].c_nelepeo);课程人数上限:%d\n",coursesear[k].c_melepeo);getchar();getchar();printf("\n\n\t1. 回目录继续查询\t2. 退出查询系统\n");printf(" 请选择: ");scanf("%d",&inp);switch(inp){case 1:c_searchs();case 2:stu_login();default:{printf("\n\t 没有这项服务\t 请按任意键重新输入");getchar();getchar();}}}else{system("cls");printf("\n\n\t 不存在对应记录\n");printf("\n\n\t1. 回目录继续查询\t2. 退出查询系统\n");printf(" 请选择: ");scanf("%d",&inp);switch(inp){case 1:c_searchs();case 2:stu_login();default:{printf("\n\t 没有这项服务\t 请按任意键重新输入");getchar();getchar();}}}}while(inp!=1);}void c_searchm(){void stu_login();void c_searchm();int id,i=0,j,inp,k;int flag=0;FILE *fp;struct course coursesear[10];if ((fp=fopen("","rb"))==NULL){_num)flag++;k=j;}}if(flag==1){system("cls");printf("\n\n\t printf("\n\n\t printf("\n\n\t printf("\n\n\t printf("\n\n\t 课程编号 :%d\n",coursesear[k].c_num);课程名字 :%s\n",coursesear[k].c_name);课程学分 :%d\n",coursesear[k].c_score);课程已选人数:%d\n",coursesear[k].c_nelepeo);课程人数上限:%d\n",coursesear[k].c_melepeo);getchar();getchar();printf("\n\n\t1. 回目录继续查询\t2. 退出查询系统\n");printf(" 请选择: ");scanf("%d",&inp);switch(inp){case 1:c_searchm();case 2:man_login();default:{printf("\n\t 没有这项服务\t 请按任意键重新输入");getchar();getchar();}}}else{system("cls");printf("\n\n\t 不存在对应记录\n");printf("\n\n\t1. 回目录继续查询\t2. 退出查询系统\n");printf(" 请选择: ");scanf("%d",&inp);switch(inp){case 1:c_searchm();case 2:man_login();default:{printf("\n\t 没有这项服务\t 请按任意键重新输入");getchar();getchar();}}}}while(inp!=1);}void c_add() 程编号 :");scanf("%d",&;printf("\n\n\t\t2.课程名字 :");scanf("%s",;printf("\n\n\t\t3.课程学分 :");scanf("%d",&;printf("\n\n\t\t4.课程已选人数:");scanf("%d",&;printf("\n\n\t\t5.课程人数上限:");scanf("%d",&;if((fp=fopen("","rb"))!=NULL){do{fread(&courses[i],sizeof(struct course),1,fp);i=i+1;}while(!feof(fp));fclose(fp);for(j=0;j<=i-1;j++)if==courses[j].c_num){system("cls");printf("\n\n\t\t\t 对不起,这个编号已经使用过 \n\n\t\t 按任意键返回管理菜单 ");getchar();getchar();man_login();break;}}if((fp=fopen("","rb"))==NULL){fp=fopen("","wb");}else{fclose(fp);fp=fopen("","ab");}fwrite(&course_new,sizeof(struct course),1,fp);fclose(fp);printf("\n\n\t\t信息输入完毕\t 按任意键继续");getchar();getchar();do{system("cls");printf("\n\n\t\t1.继续输入 ");printf("\n\n\t\t2.返回管理菜单");printf("\n\n\t\t请选择 ");scanf("%d",&inp);if(inp!=1&&inp!=2){printf(" 输入不符合要求\t 按任意键重新选择");getchar();getchar();}}while(inp!=1&&inp!=2);switch(inp){case 1:c_add();break;case 2:man_login();break;}}void c_delete()_num==n){flag=1;fp=fopen("","wb");for(k=0;k<j;k++)fwrite(&courses[k],sizeof(struct course),1,fp);fclose(fp);fp=fopen("","ab");for(k=j+1;k<i-1;k++){fwrite(&courses[k],sizeof(struct course),1,fp);}printf("\n\n\t\t记录已删除!\t 按任意键返回\n\t\t");getchar();getchar();man_login();fclose(fp);}}if(flag==0){printf("\n\n\t\t不存在对应的课程\t 按任意键返回");getchar();getchar();man_login();}// printf("\n\n\t\t记录已删除!\t 按任意键返回\n\t\t");}int main(){index();login();return 0; }。

相关文档
最新文档