首页 > 编程语言 >2022-2023-1 20221304 《计算机基础与程序设计》第八周学习总结

2022-2023-1 20221304 《计算机基础与程序设计》第八周学习总结

时间:2022-10-21 14:22:35浏览次数:80  
标签:150 20 随机数 面向对象 2022 2023 程序设计 20221304 函数

2022-2023-1 20221304 《计算机基础与程序设计》第八周学习总结

作业信息

这个作业属于哪个课程 https://edu.cnblogs.com/campus/besti/2022-2023-1-CFAP
这个作业要求在哪里 https://www.cnblogs.com/rocedu/p/9577842.html#WEEK08
这个作业的目标 自学教材《计算机科学概论》第9章并完成云班课测试,自学教材《C语言程序设计》第7章并完成云班课测试
作业正文 https://www.cnblogs.com/liu-221304-yi-tong/p/16802235.html

教材学习内容总结

在《计算机科学概论》第9章中,我知道了如何区分功能设计与面向对象设计、如何描述面向对象设计过程中的阶段,学习了运用面向对象设计过程。列出并描述面向对象语言的三要素,给出每种要素的示例。描述翻译过程并区分汇编、编译、解释和执行。命名四种不同的编程范型,并给出每一种的语言特征。定义数据类型和强类型的概念。理解如何在编程语言中实现自顶向下的设计和面向对象的设计。
在《C语言程序设计》第7章中,我学习了函数定义、函数调用、函数原型、函数的参数传递与返回值;递归函数和函数的递归调用;函数封装,函数复用,函数设计的基本原则,程序的健壮性;变量的作用域与存储类型,全局变量、自动变量、静态变量、寄存器变量;“自顶向下、逐步求精”的模块化程序设计方法。

教材学习中的问题和解决过程

  • 问题1:什么是面向对象程序设计?
  • 问题1解决方案:通过上网查找资料,得知:面向对象程序设计是一种计算机编程架构。面向对象程序设计的一条基本原则是计算机程序是由单个能够起到子程序作用的单元或对象组合而成。面向对象程序设计达到了软件工程的三个主要目标:重用性、灵活性和扩展性。为了实现整体运算,每个对象都能够接收信息、处理数据和向其它对象发送信息。一项由 Deborah J. Armstrong 进行的长达40年之久的计算机着作调查显示出了一系列面向对象程序设计的基本理论。
  • 问题2:面向对象的三大特征是什么?
  • 问题2解决方案:通过上网查找资料,得知:1、封装。把客观事物封装成抽象的类。并且类可以把自己的数据和方法只让可信的类或者对象操作,对不可信的进行信息隐藏。2、继承。它可以使用现有类的所有功能,并在无需重新编写原来的类的情况下对这些功能进行扩展。3、多态性。允许你将父对象设置成为和一个或更多的他的子对象相等的技术,赋值之后,父对象就可以根据当前赋值给它的子对象的特性以不同的方式运作。

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

  • 问题1:不知道assert()函数是什么用处。
  • 问题1解决方案:在CSDN网站上查询得知,assert的作用是现计算表达式 expression ,如果其值为假(即为0),那么它先向stderr打印一条出错信息,然后通过调用 abort 来终止程序运行。
  • 问题2:什么是单、双分支条件语句?
  • 问题2解决方案:选择结构中根据程序分支的多少可以分为单分支、双分支和多分支;根据关键字的不同可以分为if语句和switch语句。if语句的基本形式包括单分支、双分支和多分支;if语句单分支结构的基本格式为:
点击查看代码
if(条件表达式)
{
  执行代码块;
}
  • 问题3:如何产生1-10之间的随机数?
  • 问题3解决方案:通过上网查找资料,得知:rand函数根据种子生成随机值,但是每次程序运行种子是固定的,如果只使用它实际上返回的是伪随机整数。所以在调用rand之前,要先使用srand函数为伪随机数发生器设定种子。要想随机值够随机的话,我们还需要一个随机种子。通常我们使用时间作为随机数生成的种子,因为每次程序运行时间不相同,所以生成的随机数也肯定不相同。我们只需要给time函数传空指针NULL,他会给我们返回当前时间的时间戳。这样的话就可以实现时间种子生成随机数。rand()不需要参数,它会返回一个从0到最大随机数的任意整数,最大随机数的大小通常是固定的一个大整数。如果想要产生0~99这100个整数中的一个随机整数,可以表达为:int num=rand()%100;这样,num的值就是一个0~99中的一个随机数了。总结来说,可以表示为:int num=rand()%n+a;其中的a是起始值,n-1+a是终止值,n是整数的范围。
  • 问题4:如何给给字符数组赋值?
  • 问题4解决方案:通过上网查找资料,第一种方法是定义的时候直接赋值:char arr[10] = {"kitty"},这种写法也可以直接省略花括号,直接写成:char arr[10] = "kitty";第二种是初始化列表,把各个字符依次赋给数组中的元素:char arr[10] = {'k','i','t','t','y'}这种写法是不可以省略花括号的。

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 3000行 30篇 200小时
第一周 50/50 2/2 15/15
第二周 100/150 2/4 15/30
第三周 150/350 3/7 20/50
第四周 150/500 3/10 20/70
第五周 150/650 2/12 20/90
第六周 150/800 4/16 20/110
第七周 150/950 1/17 20/130
第八周 150/1100 4/21 20/15
  • 计划学习时间:20小时

  • 实际学习时间:20小时

标签:150,20,随机数,面向对象,2022,2023,程序设计,20221304,函数
From: https://www.cnblogs.com/liu-221304-yi-tong/p/16802235.html

相关文章

  • 2022年10月20日 C++类模型漫谈(四)
    系统基于32位,MSVC编译器,VS开发工具1、之前看到的都是简单一点的类型继承,现在看下另外一个例子,菱形继承(又称钻石继承)。一个TypeA基类,TypeB和TypeC继承TypeA,TypeD同时继承Ty......
  • 2022年十大接口测试工具合集《建议.收藏》
    接口测试的全称是应用程序编程接口(API)测试,从原理上来说,接口测试是模拟客户端向服务器端发送请求,然后检查能否获得正确的返回信息。接口测试用于测试RESTfulAPI、SOAPWeb服......
  • 向量启航,引擎加持 | 2022年10月《中国数据库行业分析报告》重磅发布
    为了帮助大家及时了解中国数据库行业发展现状、梳理当前数据库市场环境和产品生态等情况,从2022年4月起,墨天轮社区行业分析研究团队出品将持续每月为大家推出最新《中国数......
  • 2022年10月20日
      每个人都有每个人的福气,每个人都有每个人的花期,每个人都有每个人的节奏; 每天都是上天赐予的礼物,快乐幸福过好每一天。 我很富足!我很富足!我很富足!我很富足!我很富......
  • 企业文化是数字化转型最大障碍-解读《2022年首席数据官调查报告》
    编 辑:孙宁​彭友们好,我是老彭。今天请孙老师给彭友们解读《2022年首席数据官调查报告》。2022年6月1日即将施行的《广州市数字经济促进条例》为探索首席数据官、数据经纪人......
  • 界面组件Telerik WinForm R3 2022,让应用启动变得更酷炫
    TelerikUIforWinForms拥有适用WindowsForms的110多个令人惊叹的UI控件。所有的UIforWinForms控件都具有完整的主题支持,可以轻松地帮助开发人员在桌面和平板电脑应用......
  • Web3 每日资讯(2022-10-20)
    观风向,赢未来。03:24华纳兄弟将发行《指环王》系列NFT04:20特斯拉Q3财报:比特币持仓量保持不变06:51Solana联合创始人表示,Web3手机是对抗谷歌和苹果的机会,目前Web3智......
  • 【2022-10-15】连岳摘抄
    23:59一个巨大的挑战很容易吓到你,但只要你每天都解决一些问题,时间推移,杂草清除,前路铺展。                        ......
  • 知识图谱顶会论文(KDD-2022) kgTransformer:复杂逻辑查询的预训练知识图谱Transformer
    论文标题:MaskandReason:Pre-TrainingKnowledgeGraphTransformersforComplexLogicalQueries论文地址:https://arxiv.org/abs/2208.07638论文会议:KDD202217......
  • GRYZ20221020解题报告
    期望得分:\(100+100+0=200\pts\)实际得分:$70+100+0=170\pts$题目很傻逼当然我也很傻逼。因为赛前吸了LB的rp导致T1挂分(T1线段树签到题。开始以为仨操作是......