1.本章学习总结#

1.1思维导图##

1.2.本章学习体会##

结构体突破了数组的局限,把不同类型有内在联系的数据汇聚成一个整体,这种新的构造数据类型,提供了更便利的手段,更好的实现代码功能。通过代码建立文件,输入的数据先在内存中保存后,再被写入磁盘文件中,该做法,避免了直接用记事本编辑文件时不保存,数据消失,这种前功尽弃的失误。

2.大作业

2.1.文件介绍##

1.头文件

头文件有四个函数,分别是形成运算式、计算运算、用户输入并判断回答是否正确、登录,注册
结构体USER 存放用户信息:用户名、密码,结构体STU存放用户名和用户分数

2.其他文件介绍

文件1:main.c



该函数调用上诉函数

文件2:Login.c





旧用户登录和新用户注册后登录
登录函数为Login(),注册函数Regist(),在Regist函数重继续调用Login函数,实现注册后登录进入系统

文件3:ComputeExp.c







形成运算式,计算运算结果,用户输入答案,判断用户回答是否正确
CreateExp形成三种不同运算式,Calculate计算运算式的值,Judge用户输入答案,判断用户回答是否正确,并统计正确答题个数和错误个数

文件4:Rank.c

用户排名
文件Rank.txt存放用户名和用户分数,通过对里面用户分数进行选择法排序实现用户排名功能

2.2.运行结果

1.登录界面

2.3改进大作业总结

  • 对生成运算式和计算运算式进行了整改,指针作业是将它们都放在同一个函数中,现在把它们拆开放到两个函数中,重新改造了指针作业。然后,就是把主函数,和其他函数封装到不同文件中,还多了用户登录、注册这部分功能。
  • 登录、注册功能已实现,用户答题结果排名没有实现,基本功能还是有的。

博客作业06--结构体&指针的更多相关文章

  1. C博客作业06—结构体&指针

    1.本章学习总结 1.1思维导图 1.2本章学习体会 明白了结构体的定义及使用方法 学会了fopen,fclose,feof等文件操作函数,学会使用c语言进行文件操作 大作业中的部分函数出现未知错误且 ...

  2. C语言博客作业06——结构体&文件

    C语言博客作业06--结构体&文件 1.本章学习总结 1.1思维导图 1.2.本章学习体会 在本周的学习中,我们学习了关于结构体和文件的内容.结构体的本身并不难,但以结构体为基础的链表还是让我 ...

  3. C语言博客作业6---结构体&文件

    C语言博客作业6---结构体&文件 1.本章学习总结(2分) 1.1思维导图 请以思维导图总结本周的学习内容.如下图所示: 1.2.学习体会 描述本周学习感受,也可以在这里提出你不理解地方.对 ...

  4. C语言l博客作业06

    C语言l博客作业06 问题 回答 这个作业属于哪个课程 C语言程序设计ll 这个作业的要求在哪里 https://edu.cnblogs.com/campus/zswxy/SE2019-2/homew ...

  5. C语言博客作业06--结构体&文件

    1.本章学习总结 1.1思维导图 1.2.本章学习体会 这是这学期最后一次博客园作业,文件和结构体感觉比指针还难,一直搞不是很懂,大作业没有方向感,现在还在搞,大作业没有成品,只能先去借鉴舍友的优秀代 ...

  6. C博客作业06--结构体&文件

    1.本章学习总结 1.1思维导图 1.2本章学习体会 学习了结构和文件,又是懵懵的课了,我的天啊.结构还好,题目集一出就做了,不是很难,感觉掌握的还可以,不过这只是感觉而已,等到真正来写大作业的时候又 ...

  7. DS博客作业06——图

    1.本周学习总结(0--2分) 1.思维导图 2.谈谈你对图结构的认识及学习体会. 这章学习了图,学习了图的两种存储结构:邻接矩阵和邻接表.这两种存储结构都用到了之前学c时学到的结构体,将结构体充分运 ...

  8. C语言第二次博客作业——分支结构

    一.PTA实验作业 题目1:计算分段函数 1.实验代码 #include<stdio.h> #include<math.h> int main(void) { double x ...

  9. C语言I博客作业06

    这个作业属于哪个课程 C语言程序设计I 这个作业要求在哪里 作业链接 我在这个课程的目标是 熟悉分支结构 这个作业在那个具体方面帮助我实现目标 可以更完整的编写程序及博客园 参考文献 [参考文献](h ...

随机推荐

  1. 举例跟踪linux内核系统调用

    学号351+ 原创作品转载请注明出处 + 中科大孟宁老师的linux操作系统分析: https://github.com/mengning/linuxkernel/ 实验要求: 编译内核5.0 qem ...

  2. 网络请求get和post的区别

    网络请求get和post的区别 其实本文更应该放在HTTP相关的分类,但是目前我并没有开设这一个分类专栏,so临时储存在HTML分类吧 Get和post是HTTP请求的两种基本方式 get是从服务器上 ...

  3. mybatis 动态 SQL 官方文档

    MyBatis 的强大特性之一便是它的动态 SQL.如果你有使用 JDBC 或其它类似框架的经验,你就能体会到根据不同条件拼接 SQL 语句的痛苦.例如拼接时要确保不能忘记添加必要的空格,还要注意去掉 ...

  4. RockerMQ实战之快速入门

    文章目录 RocketMQ 是什么 专业术语 Producer Producer Group Consumer Consumer Group Topic Message Tag Broker Name ...

  5. git命令提交新项目

    新建的项目没有与git关联过git initgit add .git commit -m "注释"git remote add origin 新SSH:URLgit push -f ...

  6. IDEA解决SVN更新冲突

    在有冲突的文件上右键-> subversion ->resolve Text Confict->merge 将代码合并.

  7. Python语言:Day11练习题

    24.实现一个整数加法计算器:如:content=input('请输入内容:')#如:5+9或5+ 9或5 + 9 content = input("请输入需要计算的:") #如: ...

  8. JAVA----线程初级

    一.认识多任务.多进程.单线程.多线程 要认识多线程就要从操作系统的原理说起.   以前古老的DOS操作系统(V 6.22)是单任务的,还没有线程的概念,系统在每次只能做一件事情.比如你在copy东西 ...

  9. linux中常见的命令

    linux 中的命令非常多,但是玩过linux的人也从来不会因为Linux的命令如此之多而烦恼,我们只需要掌握其中常见的命令即可,可以在使用时去找man,会帮助你解决不少问题.下面就列出一些常见的li ...

  10. erlang中http请求

    1..app文件中 {application,backend,[  {description,"ebank backend"},  {vsn,1.0},  {modules,[]} ...