c语言开发题库管理系统,c语言程序设计_题库管理系统.doc

2023-11-19

c语言程序设计_题库管理系统

程序设计基础课程设计报告

班 级: 计算机科学与技术1103班

姓 名: 杨广宇

指导教师: 胡宏涛

完成日期: 2012年9月6日 (题目)

1. 设计题目与要求

(简要介绍课程设计题目内容与要求。)

1设计内容

要求输入试题(仅限选择题和填空题)基本信息,实现试题浏览.,查询,修改功能,并将数据保存至文本文件。

2要求

功能完善,界面友好。

2. 算法设计与描述(要求有相关流程图)

2.1 算法设计与描述

(描述算法设计、实现过程。)

1.提供可操作的主菜单:输出主菜单,用户可根据菜单来选择操作。根据客户输入的选项来运行不同的功能,运行不同的函数。

2.。试题信息的录入函数:按照提示输入题的题号,题目内容,并提示用户是否继续录入,每输入一个记录,全局变量n就自增,最后最为函数的返回值返回。

3.保存试题信息函数:将文件的所有数据通过fprintf来写入指定文本文档,完成后关闭文件,没有返回值

4. 载入试题信息函数:通过fopen函数打开指定文件,通过fscanf来读取文件里的数据,最后返回记录数,避免了每次打开时都要输入数据的麻烦。

5. 查询记录函数:细分为按题号,题目两种方式来进行查询记录,并能对查询记录不存在进行提示。遍历所有结构体找出符合的输出。

6. 修改记录函数:首先判断用户要修改的试题序号是否存在,进行相应的系统提示,然后遍历所有记录找出符合的,按照提示依次进行修改项目,返回记录值不变(没增加也没减少)。

7. 删除记录函数:首先判断用户要删除的试题序号是否存在,进行相应的系统提示,然后遍历所有记录找出符合的删除,冰讲后面的所有数据向前移动一个位置,记录数减一并返回。

2.2 主要流程图

(用N—S图描述。)

1,、输入函数

2、保存函数

3、载入函数

4、查询函数

5、修改函数

6、删除函数

3. 设计软硬件环境

硬件设备 系统:Microsoft Windows XP Professional 版本 2002

机型:Inter ? Core?2 Duo CPU E8400 @ 3.00GHz 2.99GHz, 2.00 GB内存

软件设备 Microsoft Visual C++ 6.0应用程序调试

4. 源程序代码清单

#include

#include

#include

typedef struct

{

char tihao[10]; //题号

char timu[15]; //题目

}Data;

Data da[80];

int menu_select()

{

char c;

do{

system("cls");

printf("\t\t\t ========题库管理系统======== \n");

printf("\t\t\t ┌───────────┐ \n");

printf("\t\t\t │ 1. 题目的输入 │ \n");

printf("\t\t\t │ 2. 题目的浏览 │ \n");

printf("\t\t\t │ 3. 题目信息更改 │ \n"); //包括删除,插入和更改

printf("\t\t\t │ 4. 题目信息查询 │ \n");

printf("\t\t\t │ 5. 题目文件操作 │ \n"); //包括保存,读取和复制

printf("\t\t\t │ 0. 退出管理系统 │ \n");

printf("\t\t\t └───────────┘ \n");

printf("\t\t\t ============================ \n");

printf("\n\t\t请您选择(0-5):");

c=getchar();

}while(c'5');

return(c-'0');

}

void tihaosort(Data dat[],int n) //题号排序

{

int i,j;

Data temp;

for(i=0;i

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

c语言开发题库管理系统,c语言程序设计_题库管理系统.doc 的相关文章

  • python变量的作用域及生命周期_Python——变量的作用域

    原创声明 本文系博主原创文章 转载及引用请注明出处 1 在编程语言中 变量都有一定的作用域 用来限定其生命周期 且不同类型的变量作用域不同 在Python中解释器引用变量的顺序 优先级 为 当前作用域局部变量 gt 外层作用域变量 gt 当
  • python frame用法_Pandas Series.to_frame()用法介绍

    系列被定义为可以容纳整数 字符串 双精度值等的列表类型 它以列表的形式返回对象 该列表的索引从0到n开始 其中n表示系列中值的长度 系列和数据框架之间的主要区别在于 系列只能包含具有特定索引的单个列表 而数据框架是可以分析数据的多个系列的组
  • CentOS8基础篇11:CentOS8挂载本地ISO,配置本地yum源

    1 创建ISO镜像挂在目录 第一种方法 VMware用户可以直接用镜像挂载 2 挂载镜像 第一种方法测试成功 第二种方法 采用ISO镜像文件方式挂载 把ISO文件复制到 opt目录下 这也是最好的方式 将Centos8的ISO镜像上传到IS
  • Linux大文件查看利器:掌握Less命令的使用和技巧

    文章目录 简介 1 1 less命令的作用和功能 1 2 less命令与more命令的对比 安装和基本用法 2 1 Linux系统中less命令的安装方法 2 2 使用less命令打开文件 2 3 基本导航和浏览文件 2 4 在文件中搜索关
  • 三层交换机实现不同vlan间通信

    1 器材 二层交换机为神州数码DCS 3950 路由交换机为神州数码DCRS 5650 路由器为神州数码DCR 2600 2 原理 2 1交换机的带外管理和带内管理 交换机的管理方式可以分为带内管理和带外管理两种管理模式 所谓带内管理 是指
  • 输出整数m中删除n位之后的最大(小)数(保持各位顺序不变)

    这个题不知道ac没有 因为是随便看到的一个题 没办法测 如果有错误请帮我指出来 看到很多复杂度很高的暴力破解方法 有三层循环的那种 我这个复杂度应该会低一点 思路 先将结果初始化最后m n个字符 放在res中 从res的第一位开始 在它前面
  • C# ADSL自动拨号实现代码

  • docker安装mysql8

    docker 默认mysql版本为8 0 docker pull mysql 启动mysql8 首先需要新建目录及文件 文件 F mydocker mysql8 config my cnf 目录 F mydocker mysql8 data
  • java数组专题

    下文笔者讲述求数组并集的方法分享 如下所示 实现思路 1 定义一个set集合 2 将数组中的元素都放入set中 则可实现数组并集 例 package com java265 other import java util HashSet im
  • QT 切换界面时候布局错乱

    偶然发现 在win下 全屏显示 showFullScreen 时候 label 如果开启 自动换行功能会出现 布局错乱QLabelt gt setWordWrap true
  • 机器学习里的 kernel 是指什么?

    转自我的知乎回答 机器学习里的 kernel 是指什么 我换个角度来解释这个问题 机器学习在做回归或者分类时有一个很朴实的想法 预测 x 的值 那就在训练集 X 中寻找那些与 x 相似的样本 再把这些样本的值加权作为预测值 这里有两个问题
  • Unity 导出XCode工程运行报错: ‘UnityFramework/UnityFramework.h‘ file not found

    简介 近期项目升级到2019 4 10f1版本 在用自动化打包的时候 遇到了一些问题 其中一个是 在导出XCode工程之后 运行工程的时候 编译报错 UnityFramework UnityFramework h file not foun
  • ​CVPR 2023

    论文链接 https arxiv org pdf 2306 02763 pdf 代码链接 https github com ZhenglinZhou STAR 要解决的问题 人脸关键点检测标注中存在语义歧义问题 语义歧义是指不同的标注者对同
  • x86 32位机的特权保护

    优先级划分 指令的权限检查和超出权限访问的异常处理等是构成特权保护的基础 本文将试图讲解为大家解决两大问题 win32汇编中为什么找不到中断指令的应用 比如int 7ch windows错误的 蓝屏 是从哪里来的 保护模式下 中断或异常往往
  • idea2021如何开启RunDashboard

    一般来说如果你的微服务项目中拥有多个子模块 idea会自动识别 不需要进行以下操作 只要你一运行多个子模块就会自动出现 如果没有出现 那就只有手动添加了 1 找到workspace xml项目所在的磁盘路径 idea gt workspac
  • CTF图片隐写题

    1 隐藏在图片属性里的信息或者以文本形式打开能直接获取的信息 例如实验吧里的一道题 这个背影我给满分 就是将信息隐藏在属性里 又或者文本形式能直接看到的 分别是黑客榜中榜游戏和南邮平台的两道题
  • 按键控制数码管0-99显示,十位不跳,用定时器T0中断

    如果直接在主函数中写按键控制数码管0 99显示 不管怎么延时数码管十位上的数都会闪 原因就是单片机的机器周器太快 人的按键速度是ms级的 所以等你人操作完了 单片机早就执行了不知道多少遍 解决方法就是用中断 这里采用定时器T0溢出中断 工作

随机推荐

  • 单目标应用:基于蛇群优化算法(SO)的无人机(UAV)三维路径规划(提供MATLAB代码)

    一 蛇群优化算法SO 蛇群优化算法 Snake Optimizer SO 由Fatma A Hashim和Abdelazim G Hussien于2022年提出 该算法思路新颖 快速高效 模拟了蛇的觅食和繁殖行为 SO具体原理参考如下链接
  • PyQt5 组件之QMenuBar

    QMenuBar简介 在QMainWindow对象的标题栏下方 水平的QMenuBar被保留显示QMenu对象 QMenuBar类提供了一个可以包含一个或多个QAction对象或 级联的QMenu对象 要创建一个弹出菜单 Pyqt提供了cr
  • FM33G0X之上电过程引脚配置

    八 FM33G0X之上电过程引脚配置 使用官方例程的代码初始化 在实际测试中会出现 配置成输出的引脚在上电过程中会将电平拉高 12v的输入电压 引脚可能会拉到3v 并持续一段时间 这对于实际应用中 是不应该出现的 比如一开始在io口配置中配
  • Visual C++ Redistributable 一键安装All In One Runtimes

    老版本的程序需要在客户端安装低版本的VC运行库Visual Studio 但网上第三方找到的软件要么无法下载 要么版本低 或者要求付费 而且常常有病毒 或者根本就是垃圾广告 因此从微软厂商下载 并编写了一个非常简单的脚本一键安装 右键以管理
  • webpack

    一 背景 随着我们的项目涉及到页面越来越多 功能和业务代码也会随着越多 相应的 webpack 的构建时间也会越来越久 构建时间与我们日常开发效率密切相关 当我们本地开发启动 devServer 或者 build 的时候 如果时间过长 会大
  • simcse模型

    一个对比学习的框架 作者在这里通过将一句话分两次过同一个模型 但使用两种不同的dropout 这样得到的两个sentence embedding就作为模型的正例 而同一个batch中的其他embedding就变为了负例 第二个代理任务就更加
  • linux虚拟机BIOS禁用Intel VT-x,电脑重启开启CPU虚拟化

    安装虚拟机centOS64的时候出现下面这个问题 通过 任务管理器 查看性能 CPU 发现是 已禁用 解决办法 重启电脑 修改BIOS中CPU 的配置 重点是 重启电脑 重点是 重启电脑 重点是 重启电脑 重启的过程中才能修改 重启的时候
  • vue3中使用pinia(大菠萝)状态管理仓库

    在Vue 3中 状态管理是非常重要的一部分 而Pinia 大菠萝 作为一个全新的状态管理库 在Vue 3中提供了更好的状态管理方案 可以方便地实现任意组件之间数据共享 与VueX不同的是 Pinia并不依赖于Vue 3的响应式系统 而是通过
  • scikit-learn学习笔记

    数据划分 from sklearn model selection import train test split 数据预处理 数据标准化 归一化 from sklearn preprocessing import StandardScal
  • 浅谈HTTP

    HTTP Hyper Text Transfer Protocol 超文本传输协议 完成从客户端到服务器的一系列运作流程 是用于从万维网 WWW World Wide Web 服务器传输超文本到本地浏览器的传送协议 HTTP的发展历程 HT
  • python学习笔记(1)-爬取小说

    小说网站上某个小说的爬取 Python版本 3 9 6 ide PyCharm 2021 1 3 基于HTML和Python基础语法知识 涉及内容如下 1 使用requests获取网页资源 2 使用BeautifulSoup拆解网页html
  • Python Socket(二) Socket异常处理方法及Socket错误码一览表

    Python Socket操作的异常处理范例 http blog chinaunix net uid 270894 id 2452366 html socket常见错误码详解 Socket error 10048 Address alrea
  • docker学习:CMD 和 ENTRYPOINT区别

    CMD 指定这个容器启动的时候要运行的命令 只有最后一个会生效 可被替代 ENTRYPOINT 指定这个容器启动的时候要运行的命令 可以追加命令 cmd 测试 ls a的命令 实际上只有 a起作用了 ls没有 测试CMD 编写dockerf
  • 8. UE4的盒体触发器和时间轴(制作感应门)

    一 盒体触发器 Box Trigger 1 创建一个盒体触发器 Box Trigger 拖动到地面上空 按End键 贴近地面 2 选中盒体触发器 在关卡蓝图中添加 On Actor Begin Overlap 事件 进入盒体触发器事件 a
  • Linux系统下查看mysql版本的四种方法分享

    这篇文章主要介绍了Linux系统下查看mysql版本的四种方法 本文讲解了在终端下用mysql V 使用mysql gt status 在help里面查找 使用mysql的函数等4种方法 需要的朋友可以参考下 1 在终端下 mysql V
  • Java进程僵尸进程问题定位

    在Linux服务器上 使用top命令查看CPU使用情况 发现大量僵尸进程 解决办法 1 通过 ps aux grep Z 定位到僵尸进程 最后有defunct的标记 就表明是僵尸进程 USER PID CPU MEM VSZ RSS TTY
  • (linux系统下)MMCV及MMClassification教程及安装问题解决

    说一下依托关系 MMCV是面向计算机视觉的一个基础库 它支持OpenMMLab的各个模块包括MMClassification图像分类 MMDetectionm目标检测 MMOCR文字检测识别等等 本文主要详细介绍一下mmcv和mmcls的安
  • Java分页(支持多种数据库)

    最近研究了下分页 做个总结 1 数据库操作类 做简单封装 DB java package Test import java sql public class DB 加载驱动 static try Class forName com mysq
  • 高速电路设计与仿真之PCB篇(一)

    在电子系统中 信号线的传输需要一定的时间 已经证实 电信号在分布良好的导线中传输速度为3 10 8m s 假设布线长度为5米 则信号的传输需要17ns 这种延时在低速系统中可以被忽略 但在高速电路中就不能忽略了 因此在设计高速PCB时 信号
  • c语言开发题库管理系统,c语言程序设计_题库管理系统.doc

    c语言程序设计 题库管理系统 程序设计基础课程设计报告 班 级 计算机科学与技术1103班 姓 名 杨广宇 指导教师 胡宏涛 完成日期 2012年9月6日 题目 1 设计题目与要求 简要介绍课程设计题目内容与要求 1设计内容 要求输入试题