首页 > 编程语言 >2024-2025-1 20241417 《计算机基础与程序设计》第十三周学习总结

2024-2025-1 20241417 《计算机基础与程序设计》第十三周学习总结

时间:2024-12-21 16:08:52浏览次数:10  
标签:初始化 struct 20241417 300 成员 30 2024 2025 结构

2024-2025-1 20241417 《计算机基础与程序设计》第十三周学习总结

作业信息

这个作业属于哪个课程 <班级的链接>(如2024-2025-1-计算机基础与程序设计
这个作业要求在哪里 <作业要求的链接>2024-2025-1计算机基础与程序设计第十三周作业
这个作业的目标 <复习前面所学,完成云班课作业>
作业正文 https://www.cnblogs.com/lry666666/p/18620853

教材学习内容总结

结构体的基础概念

  • 结构体是C语言里用户自定义的数据类型,能将不同类型数据成员组合,用于描述复杂实体,是处理多样化数据、构建复杂数据结构的重要基础。

结构体的核心操作

  • 定义与声明操作
    • struct 关键字定义结构体,写明结构体名及成员变量与类型,声明变量可紧跟定义或单独进行。
  • 成员访问操作
    • 普通结构体变量用 . 访问成员,结构体指针则用 -> 访问成员。
  • 结构体数组操作
    • 定义类似普通数组但元素为结构体类型,初始化可部分或全部赋值,通过 .-> 结合下标访问成员。

结构体与函数的交互

  • 结构体作为函数参数传递
    • 传结构体变量是值传递,传结构体指针是地址传递,按需选择传递方式。
  • 函数返回结构体类型
    • 函数可返回结构体类型,但要考虑复杂程度与效率,选择合适返回形式。

数据结构基础相关内容

  • 数据结构引入意义
    • 处理复杂数据时需合理数据结构来提高操作效率,结构体是构建数据结构的基础元素。
  • 常见简单数据结构提及
    • 介绍线性表、栈、队列等简单数据结构概念,为后续深入学习打基础。

结构体与数据结构基础的学习拓展与应用方向

  • 掌握这部分内容利于后续学习复杂数据结构及项目开发,在多领域有广泛应用,可优化程序性能与提高代码质量。

教材学习中的问题和解决过程(先问 AI)

  • 问题 1:结构体变量在函数传递时数据修改异常
  • 问题 1 解决方案:当结构体变量作为函数参数传递时,默认是值传递。这意味着在函数内部操作的是结构体变量的副本,对副本的修改不会影响到原始结构体变量。如果需要在函数内修改原始结构体变量,应传递结构体指针。例如,有结构体 struct Student { char name[20]; int age; }; ,定义函数 void modifyStudent(struct Student *s) { s->age = 20; } ,在主函数中 struct Student stu = {"张三", 18}; modifyStudent(&stu); ,这样就能正确修改原始结构体变量 stu 的成员 age 。若错误地写成 void wrongModifyStudent(struct Student s) { s.age = 20; } 并在主函数中调用 wrongModifyStudent(stu); ,则不会改变原始 stu 的 age 值。
  • 问题 2:结构体数组初始化后部分成员值异常
  • 问题 2 解决方案:结构体数组初始化时,如果没有对所有成员进行初始化,数值型成员默认初始化为 0,字符型成员默认初始化为空字符。但如果初始化格式不正确,可能导致部分成员值异常。比如 struct Book { char title[50]; int page_num; }; struct Book library[2] = {{"C 语言教程"}}; ,这里只初始化了第一个结构体元素的 title 成员,第二个结构体元素的 page_num 会被初始化为 0,但 title 成员是未定义的值。正确的做法应该是 struct Book library[2] = {{"C 语言教程", 0}, {""}}; ,确保每个结构体元素的每个成员都有合适的初始化值或者明确的默认值设定。
  • 问题 3:结构体嵌套时成员访问出现混乱
  • 问题 3 解决方案:当存在结构体嵌套时,需要正确使用成员访问运算符来访问嵌套结构体的成员。例如有 struct Date { int year; int month; int day; }; struct Student { char name[20]; struct Date birthday; }; ,要访问学生结构体中的生日年份,应使用 student.birthday.year (这里 student 是 Student 类型结构体变量)。如果错误地写成 student.year 就会出现访问错误。在编写代码时,要仔细理清结构体的嵌套层次关系,确保成员访问的准确性。

基于AI的学习

代码调试中的问题和解决过程

  • 问题1:定义字符数组时忘记给'\0'分配位置,导致编译错误
  • 问题1解决方案:回顾并检查课本中字符数组定义
  • 问题2:使用有关字符串的函数时,忘记添加string的头文件
  • 问题2解决方案:提前加好

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 30篇 400小时
第一周 200/200 2/2 20/20
第二周 300/500 0/2 18/38
第三周 500/1000 1/3 22/60
第四周 300/1300 1/4 30/90
第五周 300/1600 1/5 30/120
第六周 300/1900 1/6 30/150
第七周 300/2200 1/7 30/180
第八周 300/2500 1/8 30/210
第九周 300/2800 1/9 30/240
第十周 300/3100 1/10 30/270
第十一周 300/3400 1/11 30/300
第十二周 300/3700 1/12 30/330
第十三周 300/4000 1/13 30/360

标签:初始化,struct,20241417,300,成员,30,2024,2025,结构
From: https://www.cnblogs.com/lry666666/p/18620853

相关文章

  • 2024-2025-1 20241307《计算机基础与程序设计》第十三周学习总结
    作业信息这个作业属于哪个课程(2024-2025-1-计算机基础与程序设计)这个作业要求在哪里([2024-2025-1计算机基础与程序设计第十三周作业]这个作业的目标作业正文(2024-2025-1学号20241307《计算机基础与程序设计》第十三周学习总结)教材学习内容总结C语言程序......
  • 2024-2025-1 20241312 《计算机基础与程序设计》第十三周学习总结
    学期(2024-2025-1)学号(20241312)《计算机基础与程序设计》第十三周学习总结作业信息这个作业属于哪个课程<班级的链接>(如2024-2025-1-计算机基础与程序设计)这个作业要求在哪里<作业要求的链接>(如2024-2025-1计算机基础与程序设计第一周作业)这个作业的目标加入云......
  • 2024年CSP-J普及组初赛真题试卷
    2024年CSP-J普及组初赛真题试卷可前往题库中心,在线模拟测评,高效,方便~2024年CSP-J普及组初赛真题试卷_c++_嗨信奥-玩嗨信息奥林匹克竞赛-少儿编程题库学习中心https://www.hixinao.com/tidan/cpp/show-160.html......
  • 2024年CCF 非专业级软件能力认证CSP-J/S 第二轮( 提高组) 染色(color)
    完整题目内容可前往下方链接:染色(color)_C++_嗨信奥-玩嗨信息奥林匹克竞赛-少儿编程题库学习中心https://www.hixinao.com/tiku/cpp/show-4118.html若需更多真题,可前往题库中心查找,题库中心涵盖白名单赛事真题,考级真题,可节省找题时间,助力备考~嗨信奥-玩嗨信息奥林匹克竞赛......
  • MediaWIKI 1.42 2024 教程系列 — 安装MediaWIKI
    背景对于新手来说,网上多数教程并不完善,也没有针对新版本更新教程。在安装过程中遇到很多类似的问题,也翻阅很多资料才得以解决。为了总结经验,给更多人提供帮助,同时避免走弯路,于是决定编写一篇Mediawiki系列文章。前言1.选型:开源免费的WIKI,主要有MediaWiki,Xwiki,JsWIKI等。如......
  • 2024-12-21:从魔法师身上吸取的最大能量。用go语言,在一个神秘的地牢里,有 n 名魔法师排
    2024-12-21:从魔法师身上吸取的最大能量。用go语言,在一个神秘的地牢里,有n名魔法师排成一列。每位魔法师都有一个能量属性,有的提供正能量,而有的则会消耗你的能量。你被施加了一种诅咒,吸收来自第i位魔法师的能量后,你会立即被传送到第(i+k)位魔法师。在这个过程中,你会不断进......
  • 2024.12.20,数据结构课项目,解压与自解压,记录
    std::ifstream有什么成员函数std::ifstream是C++标准库中的输入文件流类,用于从文件中读取数据。它继承自std::istream,因此具有std::istream的所有成员函数。此外,它还提供了一些特定于文件操作的成员函数。常用成员函数构造函数:std::ifstream():默认构造函数。std::if......
  • 在 Windows Server 2025 和最新的 Windows 11 操作系统中,微软对任务栏和开始菜单的布
    WindowsServer2025与Windows11最新系统界面首次亮相:任务栏与开始菜单居中设计在WindowsServer2025和最新的Windows11操作系统中,微软对任务栏和开始菜单的布局进行了显著的调整。最显著的变化是,任务栏和开始菜单按钮默认被居中显示。这一设计不仅仅是为了视觉效果的......
  • 学期(2024-2025-1) 学号(20241420) 《计算机基础与程序设计》第十三周学习总结
    学期(2024-2025-1)学号(20241420)《计算机基础与程序设计》第十三周学习总结作业信息这个作业属于哪个课程<班级的链接>(如2024-2025-1-计算机基础与程序设计)这个作业要求在哪里<作业要求的链接>(2024-2025-1计算机基础与程序设计第十三周作业)这个作业的目标<《C语......
  • 【2025最新计算机毕业设计】新型吃住玩一体化旅游管理系统【提供源码+答辩PPT+文档+项
      作者简介:✌CSDN新星计划导师、Java领域优质创作者、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和学生毕业项目实战,高校老师/讲师/同行前辈交流。✌ 主要内容:......