2024-2025-1 20241316 《计算机基础与程序设计》第三周学习总结
2024-2025-1 20241316)《计算机基础与程序设计》第三周学习总结
作业信息
这个作业属于哪个课程 | 2024-2025-1-计算机基础与程序设计 |
---|---|
这个作业要求在哪里 | 2024-2025-1计算机基础与程序设计第三周作业 |
这个作业的目标 | <计算机科学概论(第七版)第2章,第3章 并完成云班课测试> |
作业正文 | https://www.cnblogs.com/bml128/p/18462302 |
教材学习内容总结
- 《C语言程序设计》第二章内容总结
基本数据类型:
整型:包括短整型(short)、整型(int)和长整型(long),用于存储整数。
浮点型:分为单精度浮点型(float)和双精度浮点型(double),用于存储实数。
字符型(char):用于存储单个字符。
常量与变量:
常量:在程序运行过程中其值不能被改变的量,如整数常量、浮点数常量、字符常量等。
变量:在程序运行过程中其值可以被改变的量,变量必须先定义后使用,定义时要指定变量的类型和名称。 - 《计算机科学概论》第二、三章内容总结
第 2 章总结
介绍数字类型(自然数、整数、有理数)及计算机选二进制的缘由(硬件电路适配)。
阐述位置记数法,包括基数概念及位置计数法原理(用基数多项式表示值)。
讲解二进制、八进制、十进制、十六进制特点与相互转换。
说明计算机存储单元与二进制的关系(位、字节、字及字长)。
第 3 章总结
区分数据与信息(前者是基本值,后者是处理后的数据),提及数据压缩(无损和有损,涉及带宽与压缩率)。
阐述模拟与数字数据(连续与离散,计算机适合处理数字数据)及其表示法(负数、实数的表示,数字溢出情况)。
介绍字符集及文本压缩方法。
教材学习中的问题和解决过程(先问 AI)
- 问题1:计算机如何解决数字溢出问题?
- 问题1解决方案:当计算机在进行数值运算时可能会遇到数字溢出问题,以下是一些解决数字溢出问题的方法:
一、选择合适的数据类型
不同的数据类型具有不同的取值范围。例如:
如果预计要处理的数值较大,可以选择取值范围更大的数据类型。比如,在 C 语言中,int类型通常是 32 位,如果数值可能超出这个范围,可以考虑使用 long long类型或者使用一些特殊的数据结构来表示大整数。
在某些编程语言中,还有专门的大整数类或库,可以方便地处理超出常规整数范围的数值运算。
二、进行范围检查
在进行数值运算之前,可以先检查输入的数据是否在预期的范围内。如果超出范围,可以采取以下措施:
给出错误提示,让用户重新输入合法的数据。
调整算法,以适应较小的数值范围进行运算。
对数据进行预处理,例如将数据进行缩放或截断,使其在可处理的范围内。
三、使用特殊的算法和数据结构
模运算:
在某些情况下,可以使用模运算来避免溢出。例如,在计算两个大整数的乘积时,可以对结果取模,使其保持在一定范围内。
但需要注意选择合适的模数,以确保结果的准确性和有效性。
分治算法:
对于非常大的数值运算,可以将问题分解成较小的子问题,分别进行处理,然后再合并结果。
例如,大整数乘法可以通过分治算法将两个大整数分成若干部分,分别相乘后再合并结果,避免直接进行大整数相乘导致的溢出。
四、动态分配内存
在处理大整数或需要动态增长的数据结构时,可以使用动态分配内存的方法。例如:
在 C 语言中,可以使用动态内存分配函数(如 malloc 和 realloc)来分配足够大的内存空间来存储大整数。
这样可以根据实际需要灵活地调整数据结构的大小,避免因固定大小的数据类型而导致的溢出。
五、采用更高精度的计算工具
高精度计算库:
许多编程语言都有专门的高精度计算库,这些库提供了对大整数、高精度浮点数等的支持。
使用这些库可以方便地进行超出常规数据类型范围的数值运算,而无需担心溢出问题。
硬件支持:
在一些高性能计算领域,可能会使用专门的硬件设备来进行高精度计算,如数字信号处理器(DSP)、图形处理单元(GPU)等。
这些硬件设备通常具有更高的计算精度和更大的存储容量,可以有效地处理数字溢出问题。 - 问题2:不同的文件格式对图片或视频有什么影响,文件格式是否可以相互转换?
- 问题2解决方案:一、不同文件格式对图片的影响
图像质量:
JPEG 格式:采用有损压缩,可在较小的文件尺寸下保持较好的图像质量,但多次编辑和保存可能会导致图像质量逐渐下降。
PNG 格式:支持无损压缩,图像质量高,尤其在保存带有透明背景的图像时效果较好。
GIF 格式:通常用于简单动画和低色彩深度的图像,色彩数量有限,图像质量一般。
文件大小:
JPEG 格式通常能生成较小的文件,适合在网络上传输和存储。
PNG 格式由于无损压缩,文件相对较大。
GIF 文件通常也比较小,但对于复杂图像,可能不如 JPEG 小巧。
透明度支持:
PNG 格式支持完全的透明度,能够实现图像与背景的完美融合。
GIF 格式也支持有限的透明度。
JPEG 格式不支持透明度。
二、不同文件格式对视频的影响
视频质量:
MP4 格式:广泛应用,能在合理的文件大小下提供较好的视频质量,支持多种编码方式。
AVI 格式:兼容性好,但在压缩效率上可能不如一些较新的格式。
MOV 格式:主要用于苹果设备,视频质量较高,支持多种高级特性。
文件大小:
不同的编码方式和压缩率会导致不同格式的视频文件大小有很大差异。例如,一些高压缩率的格式可能会在一定程度上牺牲视频质量来减小文件大小。
兼容性:
MP4 格式在大多数设备和平台上都能播放,兼容性非常好。
AVI 格式在较老的设备上也有较好的兼容性。
MOV 格式可能在非苹果设备上需要安装特定的播放器才能正常播放。
三、文件格式是否可以相互转换
文件格式通常是可以相互转换的。但在转换过程中可能会出现以下情况:
质量损失:从无损格式转换为有损格式时,会有明显的质量损失。例如,将 PNG 图像转换为 JPEG 格式,可能会丢失透明度信息并且图像质量可能下降。
兼容性问题:某些格式转换可能会导致在特定设备或软件上出现兼容性问题。例如,将一个特定编码的视频格式转换为另一种格式后,可能在某些老旧播放器上无法播放。
转换工具的影响:不同的转换工具可能会产生不同的结果。一些工具可能提供更多的参数设置,以优化转换后的质量和文件大小。
总之,在选择图片或视频文件格式以及进行格式转换时,需要根据具体的使用场景和需求来综合考虑各方面的因素。