1.本章学习总结

1.1思维导图

1.2本章学习体会

  • 明白了结构体的定义及使用方法
  • 学会了fopen,fclose,feof等文件操作函数,学会使用c语言进行文件操作
  • 大作业中的部分函数出现未知错误且长时间无法修正,再次感受到编程的难度

2.大作业

2.1文件介绍

头文件student.h

包含结构体USER和RANKING 及login.cpp和computeExp.cpp所有函数的声明

main.cpp

具体调用login.cpp和computeExp.cpp中的函数

login.cpp

包含注册/登录功能的所有函数以及排名,读写文件函数





computeExp.cpp

继承自上次大作业的主体部分,只做轻微改动





2.2运行结果

2.2.1登录

登录主界面

注册

正常注册

已有账号

登录

正常登录

密码错误

不存在的用户

2.2.2排名

改了好久WriteScore和Ranking函数,最终结果还是在以下两种状态徘徊


最终成绩排名没有成功

2.3大作业总结

第一次大作业主要面对输入查错问题,在没有学字符数组的情况下用scanf的返回值一个个硬刚
在第一次大作业掌握了随机数,函数调用的具体用法
第二次大作业使用指针对原版进行了完全重写,同时留下改进的空间给第三次大作业
第二次大作业熟悉了指针的操作方式,多种字符串函数的操作
第三次大作业使用了文件读写与结构体,代码量比原版翻了近三倍
短时间内写出的过于复杂的函数并没有像预期一样运行,出现了程序不明崩溃的情况
三次大作业积累的实际操作经验对我的C语言学习有非常大的帮助,也为课设及以后的学习打下了基础

最新文章

  1. ->code vs 1474 十进制转m进制
  2. 学习django之正则表达式re模块
  3. 代码生成工具——CodeSmith
  4. 微分方程——基本概念和常微分方程的发展史
  5. 微信公共平台开发3 .net
  6. leetcode:Valid Palindrome
  7. TL-WR703 USB不稳定/当前的总结
  8. Linux防火墙基本知识
  9. C#中class的访问级别
  10. Ajax访问PHP页面出现的跨域问题
  11. [转]Android 如何对sqlite数据库进行增删改[insert、update和delete] 操作
  12. JAVA进阶10
  13. Matlab-6:解非线性方程组newton迭代法
  14. postgresql 安装文档
  15. Sublime Text3配置
  16. bzoj4337树的同构
  17. MySql笔记二:命令简介
  18. 关于react16.4——转发refs和片段Fragment
  19. 学习笔记之人工智能(Artificial Intelligence)
  20. [LintCode] N-Queens

热门文章

  1. ADO 缓存更新
  2. tensorflow 基本函数(1.tf.split, 2.tf.concat,3.tf.squeeze, 4.tf.less_equal, 5.tf.where, 6.tf.gather, 7.tf.cast, 8.tf.expand_dims, 9.tf.argmax, 10.tf.reshape, 11.tf.stack, 12tf.less, 13.tf.boolean_mask
  3. JVM 理解
  4. Git----时光穿梭机之工作区和暂存区03
  5. cluster DNS
  6. Gradle系列之从init.gradle说起
  7. viewer.js--一个强大的jQuery图像查看插件
  8. ETL数据仓库
  9. oracle忘记密码,修改密码
  10. golang之math/rand随机数