C/C++学习笔记:从基础到C++11知识点
需积分: 12 53 浏览量
更新于2024-07-14
收藏 1.1MB DOCX 举报
"这份文档包含了C语言和C++(特别是C++11标准)的学习笔记,涵盖了一些重要的知识点。在C语言部分,提到了检查一个数是否为完全平方数的方法,即通过比较其平方根的整数部分是否等于浮点数部分。在C++部分,展示了如何编写和使用函数,例如输入、交换数组元素以及数值比较的实现。"
这篇笔记首先讨论了C语言中的一个常见问题——判断完全平方数。通过代码`sqrt(a)==(int)sqrt(a)`,我们可以得知如果一个数`a`是完全平方数,那么它的平方根取整后应该等于其平方根本身。这段代码用于OJ(在线判题)题库中的编程题目,可以有效检查一个数的平方根特性。
接下来,笔记展示了两个C++程序示例。第一个程序是一个简单的累加器,计算从1到`n`所有整数的和及其累积和,它使用一个单一的`for`循环提高了效率,避免了嵌套循环。第二个程序则包含了三个函数:`Input`用于读取整数数组,`SwapM`用于交换数组的第一个元素和最后一个元素,以及`printArray`用于打印数组内容。这些函数展示了如何在C++中组织代码并进行数据操作。
在C++部分的最后,笔记提出了一个有趣的挑战:不使用`if`语句和比较运算符来比较两个整数`a`和`b`的大小。给出的函数`CompareF`使用位操作来达到这一目的。通过`(a-b)>>31&1`,我们可以获取到`a`和`b`之间的关系。如果`a > b`,结果为1;如果`a < b`,结果为0;如果`a == b`,结果为0。这个方法利用了二进制表示中的符号位来完成比较,是一种巧妙的位操作技巧。
这份笔记涵盖了C语言的基本概念,如条件判断和循环,以及C++中的函数使用和数组操作,还涉及了位操作在数值比较中的应用。对于初学者来说,这些内容提供了良好的基础训练;对于有经验的开发者,它们也提供了一种回顾基础知识和学习新技巧的机会。
2022-11-03 上传
2021-10-05 上传
2022-11-04 上传
2020-05-02 上传
2022-11-23 上传
nepu_bin
- 粉丝: 513
- 资源: 4
最新资源
- Problem_Solving_practice
- 动软 数据库三层生成工具,文档生成工具
- mysql代码-单表查询,多表查询
- Mgt paperwhite.7z mgt学习
- 睡眠时间:根据用户需求,建议安排时间表唤醒或进入睡眠状态的应用程序
- hadoop-weather-analysis:该项目将下载世界上大多数国家的天气历史数据,并将数据存储到HDFS中。 将数据放入HDFS后,映射器和化简器作业将针对该数据运行,并将分析结果保存到HBase。 该代码是使用Java和Hbase作为NoSQL数据库在Hadoop 2.8上开发和执行的
- tasks
- Html Code Convert-开源
- flash动画.rar
- 小新实用五金手册2009.zip
- dom4j.jar包新版
- gltf-exporter:Unity3D GLTF2导入器和导出器工具链
- opc client netframework4.8 多线程加入MQTT server分发功能按配置节点启动多线程
- tabless-thursday-frontend:使用Redux在ReactJS中编写Tabless周四前端
- STM32的几种烧写方法.zip-综合文档
- HS Domain Manager-开源