学生选课系统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语言课程设计 学生选课系统一、课程目标知识目标:1. 学生能理解C语言在开发学生选课系统中的应用,掌握基本的数据结构(如结构体、数组、链表)和文件操作相关知识。
2. 学生能运用C语言实现学生选课系统的基本功能,如学生信息管理、课程信息管理、选课操作等。
3. 学生能理解并掌握C语言中的模块化编程思想,将学生选课系统分解为多个函数,提高代码的可读性和可维护性。
技能目标:1. 学生能运用C语言编写、调试和运行学生选课系统,具备一定的编程实践能力。
2. 学生能通过团队协作,共同完成一个完整的学生选课系统项目,提高沟通与协作能力。
3. 学生能运用所学知识,对现有学生选课系统进行优化和改进,提高系统性能。
情感态度价值观目标:1. 学生通过本课程的学习,培养对计算机编程的兴趣和热情,树立学习C语言的自信心。
2. 学生在团队协作中,学会尊重他人意见,培养合作精神和团队意识。
3. 学生能够认识到编程在解决实际问题中的价值,提高将所学知识应用于实际生活的意识。
课程性质:本课程为C语言编程实践课程,旨在让学生通过动手实践,掌握C 语言编程技能,并运用所学知识解决实际问题。
学生特点:学生已具备一定的C语言基础,具备基本编程能力,但缺乏实际项目经验。
教学要求:注重理论与实践相结合,强调编程实践,培养学生解决实际问题的能力。
通过团队协作,提高学生的沟通与协作能力。
在教学过程中,关注学生的个体差异,因材施教,使每位学生都能在原有基础上得到提高。
二、教学内容1. 数据结构基础:回顾结构体、数组、链表等基本数据结构,讲解其在学生选课系统中的应用。
相关教材章节:第3章 数据类型与表达式,第4章 控制结构,第5章 函数,第6章 数组与字符串,第7章 指针与结构体。
2. 文件操作:介绍文件读写、文件管理等基本操作,为学生选课系统提供数据持久化支持。
相关教材章节:第10章 文件操作。
3. 模块化编程:讲解模块化编程思想,引导学生将学生选课系统分解为多个函数,提高代码的可读性和可维护性。
C语言课程设计学生选修课系统设计

汇报人:
目录
添加目录标题
系统概述
系统需求分析
系统设计
系统实现
系统部署与维护
添加章节标题
系统概述
提高学生编程能力
方便教师管理课程设计项目
添加标题
添加标题
提供课程设计实践平台
添加标题
添加标题
促进学生之间的交流与合作
学生选课:查看课程信息,选择感兴趣的课程 教师管理:发布课程信息,管理学生选课情况 教务管理:查看学生选课情况,统计课程报名人数 系统维护:更新课程信息,维护系统正常运行
系统评估与总结
功能完整性:系统是否具备所有必需的 功能
性能稳定性:系统在运行过程中是否稳 定,是否会出现崩溃或错误
用户体验:系统的界面设计、操作流程 是否符合用户习惯,是否易于使用
安全性:系统是否具备足够的安全措施, 如数据加密、用户认证等
可扩展性:系统是否具备良好的可扩展 性,能够适应未来的需求变化
硬件要求:服务器、网络设备、存储设备等 软件要求:操作系统、数据库管理系统、Web服务器等
部署步骤:安装操作系统、安装数据库管理系统、安装Web服务器、部署应用程序等
维护方案:定期备份数据、定期检查系统运行状况、定期更新软件等
定期备份数据:确保数据安全, 防止数据丢失
定期更新软件:确保系统安全, 防止病毒和恶意软件攻击
管理员模块:用户管理、课程管理、选 课管理、成绩管理等操作
系统实现
数据库类型:MySQL
数据库操作:增删改查、事务处理、 备份恢复
添加标题
添加标题
添加标题
添加标题
数据库设计:表结构设计、字段设 计、索引设计
数据库优化:查询优化、索引优化、 存储优化
c课程设计学生选课系统

c课程设计学生选课系统一、课程目标知识目标:1. 让学生理解并掌握学生选课系统的基本概念、功能及操作流程;2. 让学生掌握运用编程语言(如Python)实现学生选课系统的基本功能;3. 让学生了解数据库管理的基本原理,并学会运用SQL语句进行数据查询和操作。
技能目标:1. 培养学生运用所学知识,独立设计并实现一个简单的学生选课系统;2. 培养学生分析问题、解决问题的能力,能够针对具体需求提出合理的解决方案;3. 提高学生的团队协作能力,学会与他人共同完成项目任务。
情感态度价值观目标:1. 培养学生对计算机科学技术的兴趣和爱好,激发学习积极性;2. 培养学生勇于尝试、敢于创新的精神,增强自信心;3. 培养学生遵守纪律、诚信学习的品质,树立正确的价值观。
课程性质:本课程为实践性较强的课程,旨在让学生通过动手实践,掌握学生选课系统的设计与实现。
学生特点:学生已具备一定的计算机基础知识,对编程语言和数据库有一定的了解,具备初步的编程能力。
教学要求:结合学生特点,注重理论与实践相结合,以项目为导向,培养学生的实际操作能力和团队协作能力。
通过本课程的学习,使学生能够独立完成一个简单的学生选课系统项目,并在实践中不断提高自身的技术水平和综合素质。
二、教学内容1. 学生选课系统基本概念:介绍学生选课系统的定义、功能及作用,让学生对课程内容有一个全面的了解。
2. 编程语言基础:回顾Python编程语言的基本语法、数据类型、控制结构等,为后续的系统开发奠定基础。
3. 数据库管理:讲解数据库的基本概念、关系型数据库的设计方法以及SQL 语句的使用,让学生掌握数据存储和管理的方法。
4. 系统设计:分析学生选课系统的需求,引导学生进行系统设计,包括模块划分、界面设计、数据表设计等。
5. 编程实现:指导学生运用Python编程语言和数据库技术,逐步实现学生选课系统的各个功能模块。
6. 系统测试与优化:教授学生如何对系统进行测试、调优,确保系统的稳定性和可靠性。
课程设计学生选课系统c语言

课程设计学生选课系统c语言一、课程目标知识目标:1. 理解C语言的基本语法和结构,掌握学生选课系统相关的数据类型、运算符、控制语句等知识;2. 学会使用C语言设计学生选课系统的功能模块,包括学生信息管理、课程信息管理、选课操作等;3. 了解C语言在学生选课系统中的应用场景,掌握一定的软件设计方法和技巧。
技能目标:1. 能够运用C语言编写简单的学生选课系统程序,具备基本的编程能力;2. 学会分析学生选课系统的需求,设计合理的程序结构,培养解决问题的能力;3. 能够使用调试工具对程序进行调试和优化,提高程序的执行效率。
情感态度价值观目标:1. 培养学生对C语言的兴趣,激发学习编程的热情,提高自主学习的积极性;2. 培养学生的团队协作意识,学会与他人合作完成项目任务;3. 通过实际操作,让学生认识到编程在解决实际问题中的价值,增强社会责任感。
课程性质:本课程为实践性较强的学科,结合实际应用场景,培养学生的编程能力和解决问题的能力。
学生特点:学生在本年级已具备一定的C语言基础,对编程有一定的兴趣和热情,但缺乏实际项目经验。
教学要求:教师需结合学生特点和课程性质,注重理论与实践相结合,引导学生主动参与,提高学生的实践操作能力。
在教学过程中,将课程目标分解为具体的学习成果,便于教学设计和评估。
二、教学内容1. C语言基础回顾:数据类型、变量、运算符、控制语句(选择、循环)、函数等基本概念和用法。
2. 学生选课系统需求分析:介绍学生选课系统的功能模块,分析各模块的需求,明确编程目标和任务。
3. 系统设计:- 数据结构设计:学生、课程等实体的属性和关系,以及数据存储方式;- 界面设计:系统菜单、功能界面等;- 功能模块设计:学生信息管理、课程信息管理、选课操作、查询等模块。
4. 编程实践:- 搭建开发环境,熟悉编程工具;- 编写各功能模块的代码,实现学生选课系统的基本功能;- 调试和优化程序,确保系统的稳定性和性能。
学生选课系统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课程设计学生选课系统一、教学目标本课程的目标是让学生掌握学生选课系统的开发和应用,包括对其原理和实现的理解,以及如何使用该系统进行选课。
•理解学生选课系统的基本原理和架构。
•掌握常用的选课算法和策略。
•熟悉学生选课系统的开发工具和技术。
•能够独立设计和实现一个简单的学生选课系统。
•能够对现有的学生选课系统进行评估和改进。
•能够使用相关的开发工具和技术进行学生选课系统的开发。
情感态度价值观目标:•培养学生的创新意识和团队合作精神,使他们能够在团队中发挥自己的专长,共同完成一个学生选课系统的设计和实现。
•培养学生对技术的热爱和敬业精神,使他们能够持续学习和跟进最新的技术动态,不断提高自己的技能水平。
二、教学内容本课程的教学内容主要包括学生选课系统的原理、选课算法、系统设计、开发工具和技术。
1.学生选课系统的原理:介绍学生选课系统的基本概念、架构和运作机制,包括选课流程、课程分类、学生选课策略等。
2.选课算法:讲解常用的选课算法,如先到先得、最大匹配、最小匹配等,并通过实例进行讲解和分析。
3.系统设计:介绍学生选课系统的系统设计,包括需求分析、模块设计、数据库设计等,并通过实际案例进行讲解和分析。
4.开发工具和技术:介绍学生选课系统的开发工具和技术,如编程语言、数据库管理系统、前端技术等,并通过实际操作进行讲解和演示。
三、教学方法本课程将采用讲授法、讨论法、案例分析法和实验法等多种教学方法进行教学。
1.讲授法:通过讲解和演示,使学生了解学生选课系统的原理、算法、设计和开发工具等技术内容。
2.讨论法:通过学生进行小组讨论,培养他们的团队合作意识和解决问题的能力。
3.案例分析法:通过分析实际案例,使学生更好地理解和掌握学生选课系统的原理和设计方法。
4.实验法:通过实际操作和实验,使学生掌握学生选课系统的开发工具和技术,并培养他们的动手能力。
四、教学资源本课程将使用教材、参考书、多媒体资料和实验设备等教学资源。
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. 调试与测试:使用调试工具,对程序进行调试和测试,确保系统功能的正确性和稳定性。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
西安理工大学C语言课程设计任务:题目:学生选修课程系统设计功能:假定有n门课程,每门课程有课程编号,课程名称,课程性质,总学时,授课学时,实验或上机学时,学分,开课学期等信息。
试设计一选修课程系统。
分步实施:1、初步完成总体设计,搭好框架,确定人机对话界面,确定函数个数;2、建立一个文件,将每条记录信息写入文件中并能显示于屏幕上3、完成上述添加、查找(课程编号、课程名称、课程性质等)、修改等功能。
4、进一步要求:学生选修课程(可选项)要求:1、用C语言实现程序设计;2、利用结构体数组实现信息的数据结构设计;3、系统的各个功能模块要求用函数的形式实现;4、界面友好(良好的人机交互),程序加必要的注释。
课程设计实验报告要求:1、预习报告:题目、课程设计任务、数据结构、程序的总体设计(算法)、模块划分。
2、实验总结报告:流程图、主要源程序代码(需打印)、测试情况及调试中问题与解决方案、小结等。
源程序代码:#define N 20 /*宏定义最多课程数,即结构体数组长度*/#include<stdio.h>#include<stdlib.h>#include<string.h>struct xkxt{int num; /*课程编号*/char name[20]; /*课程名称*/char kind[10]; /*课程性质*/int stime; /*总学时*/int ttime; /*授课学学时*/int etime; /*实验或上机学时*/float score; /*学分*/int term; /*开课学时*/}x[N];int size1,size2;void newbuild() /*新建课程信息函数*/{FILE *fp;int i;fp=fopen("xk.txt","wb"); /*打开文件并判断是否打开*/for(i=0;i<size1;i++) /*写入文件并判断是否写入*/if(fwrite(&x[i],sizeof(struct xkxt),1,fp)!=1){printf("\n文件写入错误\n");exit(0);}else{if(i==0){printf("\n你输入的内容为:\n");printf("\n*课程编号*课程名称*课程性质*总学时*授课学学时*实验或上机学时*学分*开课学时*\n");}printf("%5d%10s%8s%8d%10d%14d%9.1f%8d\n",x[i].num,x[i].name,x[i].kind,x[i].stime,x[i].ttime,x[i].etime,x[i].score,x[i].term);}fclose(fp);}void add() /*添加课程信息函数*/{FILE *fp;int i;if((fp=fopen("xk.txt","ab"))==NULL) /*打开文件并判断是否打开*/{printf("\n不能打开此文件\n");exit(0);}for(i=0;i<size2;i++) /*写入文件并判断是否写入*/if(fwrite(&x[i],sizeof(struct xkxt),1,fp)!=1){printf("\n文件写入错误\n");exit(0);}else{if(i==0){printf("\n你输入的内容为:\n");printf("\n*课程编号*课程名称*课程性质*总学时*授课学学时*实验或上机学时*学分*开课学时*\n");}printf("%5d%10s%8s%8d%10d%14d%9.1f%8d\n",x[i].num,x[i].name,x[i].kind,x[i].stime,x[i].ttime,x[i].etime,x[i].score,x[i].term);}fclose(fp);}void search() /*查找课程信息函数*/{FILE *fp;int i,n;int num;char name[20];char kind[10];if((fp=fopen("xk.txt","rb"))==NULL) /*打开文件并判断是否打开*/{printf("\n不能打开此文件\n");exit(0);}printf("\n全部内容为:\n");printf("\n*课程编号*课程名称*课程性质*总学时*授课学学时*实验或上机学时*学分*开课学时*\n");for(i=0;fread(&x[i],sizeof(struct xkxt),1,fp)!=0;i++) /*写入文件并在屏幕输出*/{printf("%5d%10s%8s%8d%10d%14d%9.1f%8d\n",x[i].num,x[i].name,x[i].kind,x[i].stime,x[i].ttime,x[i].etime,x[i].score,x[i].term);}printf("\n请输入你要按哪个类型查找:1,课程编号;2,课程名称;3,课程性质。
\n");do /*根据类型查找课程*/{ scanf("%d",&n);switch(n){case 1:printf("\n请输入课程编号:\n");scanf("%d",&num);for(i=0;i<20;i++)if(num==x[i].num){printf("\n你要查找的课程信息为:\n");printf("\n*课程编号*课程名称*课程性质*总学时*授课学学时*实验或上机学时*学分*开课学时*\n");printf("%5d%10s%8s%8d%10d%14d%9.1f%8d\n",x[i].num, x[i].name,x[i].kind,x[i].stime,x[i].ttime,x[i].etime,x[i].score,x[i].term);break;}break;case 2:printf("\n请输入课程名称:\n");scanf("%s",name);for(i=0;i<20;i++)if(strcmp(name,x[i].name)==0){printf("\n你要查找的课程信息为:\n");printf("\n*课程编号*课程名称*课程性质*总学时*授课学学时*实验或上机学时*学分*开课学时*\n");printf("%5d%10s%8s%8d%10d%14d%9.1f%8d\n",x[i].num, x[i].name,x[i].kind,x[i].stime,x[i].ttime,x[i].etime,x[i].score,x[i].term);break;}break;case 3:printf("\n请输入课程性质:\n");scanf("%s",kind);for(i=0;i<20;i++)if(strcmp(kind,x[i].kind)==0){printf("\n你要查找的课程信息为:\n");printf("\n*课程编号*课程名称*课程性质*总学时*授课学学时*实验或上机学时*学分*开课学时*\n");printf("%5d%10s%8s%8d%10d%14d%9.1f%8d\n",x[i].num, x[i].name,x[i].kind,x[i].stime,x[i].ttime,x[i].etime,x[i].score,x[i].term);break;}break;default:printf("\n输入错误,请重新输入:\n");}}while(n<1||n>3); /*实现重新输入的功能*/if(i==20)printf("\n无法找到所对应的课程,请重新查找。
\n");fclose(fp);}void modify()/*修改课程信息函数*/{FILE *fp;int flag=0,size=0,n,i;int num[2],num1;char name[2][20],name1[20];char kind[2][10],kind1[10];int stime[2];int ttime[2];int etime[2];float score[2];int term[2];if((fp=fopen("xk.txt","rb"))==NULL)/*打开文件并判断是否打开*/{printf("\n不能打开此文件\n");exit(0);}printf("\n原来内容为:\n");printf("\n*课程编号*课程名称*课程性质*总学时*授课学学时*实验或上机学时*学分*开课学时*\n");for(i=0;fread(&x[i],sizeof(struct xkxt),1,fp)!=0;i++) /*写入文件并在屏幕输出*/{printf("%5d%10s%8s%8d%10d%14d%9.1f%8d\n",x[i].num,x[i].name,x[i].kind,x[i].stime,x[i].ttime,x[i].etime,x[i].score,x[i].term);}fclose(fp);printf("\n请先按以下三种方式确定你要修改的课程:1,课程编号;2,课程名称;3,课程性质。
\n");do /*根据类型查找课程*/{ scanf("%d",&n);switch(n){case 1:printf("\n请输入课程编号:\n");scanf("%d",&num1);for(i=0;i<20;i++)if(num1==x[i].num){printf("\n你要查找的课程信息为:\n");printf("\n*课程编号*课程名称*课程性质*总学时*授课学学时*实验或上机学时*学分*开课学时*\n");printf("%5d%10s%8s%8d%10d%14d%9.1f%8d\n",x[i].num,x[i].name,x[i].kind,x[i].stime,x[i].ttime,x[i].etime,x[i].score,x[i].term);break;}break;case 2:printf("\n请输入课程名称:\n");scanf("%s",name1);for(i=0;i<20;i++)if(strcmp(name1,x[i].name)==0){printf("\n你要查找的课程信息为:\n");printf("\n*课程编号*课程名称*课程性质*总学时*授课学学时*实验或上机学时*学分*开课学时*\n");printf("%5d%10s%8s%8d%10d%14d%9.1f%8d\n",x[i].num,x[i].name,x[i].kind,x[i].stime,x[i].ttime,x[i].etime,x[i].score,x[i].term);break;}break;case 3:printf("\n请输入课程性质:\n");scanf("%s",kind1);for(i=0;i<20;i++)if(strcmp(kind1,x[i].kind)==0){printf("\n你要查找的课程信息为:\n");printf("\n*课程编号*课程名称*课程性质*总学时*授课学学时*实验或上机学时*学分*开课学时*\n");printf("%5d%10s%8s%8d%10d%14d%9.1f%8d\n",x[i].num,x[i].name,x[i].kind,x[i].stime,x[i].ttime,x[i].etime,x[i].score,x[i].term);break;}break;default:printf("\n输入错误,请重新输入:\n");}}while(n<1||n>3); /*实现重新输入的功能*/if(i==20){printf("\n无法找到所对应的课程,请重新修改。