当前位置: 首页 > wzjs >正文

notepad做网站足球世界排名国家

notepad做网站,足球世界排名国家,seo搜索引擎优化公司,九江网站建设排行榜接上篇文章《【和春笋一起学C】函数——C的编程模块》,当使用数组名作为函数形参时,数组名会退化为指针,实际传递的是数组首元素的地址。 数组名在大多数情况下会退化为指针,以下两种情况除外: 当使用sizeof运算符时&a…

接上篇文章《【和春笋一起学C++】函数——C++的编程模块》,当使用数组名作为函数形参时,数组名会退化为指针,实际传递的是数组首元素的地址。

数组名在大多数情况下会退化为指针,以下两种情况除外:

  1. 当使用sizeof运算符时,如sizeof(数组名),会计算整个数组的长度;
  2. 当使用&(取地址运算符)时;

 一个简单的实例,控制台终端输入一个数组后,显示数组中各个元素的值,然后乘以一个系数后再输出各个元素的值。代码如下:

#include <iostream>
using namespace std;int fill_array(double ar[], int maxlength)
{double temp;int i;for (i = 0; i < maxlength; i++){cout << "Enter value: " << (i + 1) << ": ";cin >> temp;if (!cin){cin.clear();while (cin.get()!='\n'){continue;}cout << "bad input, input process terminated. \n";break;}ar[i] = temp;}return i;
}void show_array(const double ar[], int n)
{for (int i = 0; i < n; i++){cout << ar[i] << "  ";}cout << "\n\n" << endl;
}void revalue(double r, double ar[], int n)
{for (int i = 0; i < n; i++){ar[i] *= r;}
}int main()
{   const int maxLength = 5;double properties[maxLength];cout << "please input show number: " << endl;fill_array(properties, maxLength);show_array(properties, maxLength);double factor;cout << "please input revalue factor: " << endl;cin >> factor;revalue(factor, properties, maxLength);show_array(properties, maxLength);return 0;
}

输入5个数,程序先显示5个输入的数,然后再输入一个影响因子,将5个数乘以同一个影响因子,再输出结果。程序运行结果如下图:

程序说明:

  1. fill_array函数的功能是输入最多包含5个元素的数组的值,也可以输入3个或4个元素。
  2. show_array函数功能是显示数组元素的值。因只需在函数中显示数组元素的值,而不需要修改其值。因此,为了防止函数无意中修改数组元素的值,在声明形参数组时使用关键字const,这表明指针ar指向的是常量数据,在函数中可以使用ar[0]这样的数据,但是不能修改。这里注意,show_array函数中的形参const double ar[]并不意味着实参数组必须是常量,它只代表不能在show_array()函数中修改ar数组元素的值。
  3. revalue函数为将数组中的5个元素乘以同一个影响因子,因在函数中需要修改数组元素的值,因此在声明ar时,不能使用const。

如果形参是普通变量(int,float等),这种保护将自动实现,这是由于C++是按值传递数据,函数使用的是数据的拷贝。但是当数组名作为函数参数时,在函数中将使用数组的原始数据,这也正是fill_array()函数能够完成任务的原因。

总结:使用数组名作为函数参数时需要考虑在函数中是否需要修改数组元素的值,如果不需要修改数组元素的值,则需要将数组设置为const类型,以防止在函数中操作数组元素时无意中修改了数组元素的值。

程序延伸:上述程序首先通过数据类型和设计适当的函数来处理数据,然后将这些函数组合成一个程序,这种设计方法称为自下而上的程序设计,因为设计过程从组件到整体进行,所以这种方式适合于OOP(面向对象的编程方式),它强调的是数据表示和操纵。传统的过程性编程(C语言)倾向于自顶向下的程序设计,它首先指定模块化的设计方案,然后再研究细节。这两种方法都很有用,最终的产品都是模块化程序。


文章转载自:

http://ikFIUOoD.wmmqf.cn
http://zvs1ODnb.wmmqf.cn
http://Sy57QZq3.wmmqf.cn
http://BflBqfoe.wmmqf.cn
http://iXlEuJ5Z.wmmqf.cn
http://QeChc52x.wmmqf.cn
http://QlECeX72.wmmqf.cn
http://msUgidym.wmmqf.cn
http://6Iqj58p3.wmmqf.cn
http://HC9yuWgx.wmmqf.cn
http://S63KBtCo.wmmqf.cn
http://TdMHSEPk.wmmqf.cn
http://bq7DHTaX.wmmqf.cn
http://yEW9al8O.wmmqf.cn
http://BH60kkVA.wmmqf.cn
http://mjpVmac0.wmmqf.cn
http://HrRPMZnN.wmmqf.cn
http://EFfW32bk.wmmqf.cn
http://Yqzkq9QM.wmmqf.cn
http://xnupvEiP.wmmqf.cn
http://GLMxKVDE.wmmqf.cn
http://tbDkvj9U.wmmqf.cn
http://baJRojgc.wmmqf.cn
http://jwW0sZah.wmmqf.cn
http://YQ9yCzJJ.wmmqf.cn
http://jQanxEbC.wmmqf.cn
http://AMEYGMCt.wmmqf.cn
http://MnAumC0T.wmmqf.cn
http://JdFgcR5X.wmmqf.cn
http://yZiR5s48.wmmqf.cn
http://www.dtcms.com/wzjs/686718.html

相关文章:

  • 外贸网站seo推广方案建设银行辽宁分行报名网站
  • 建设部网站查询造价师证件赶集网官网首页
  • 网站系统怎么做的怎么自己做画册网站
  • 网站用户群太平洋建设集团有限公司网站
  • 做lol数据的网站漳州做网站最便宜
  • 建设网站需要做哪些工作内容手机wap 网站
  • 站酷网素材什么平台可以免费打广告
  • 郑州网站seo优化个人在国外网站做电商
  • 建设网站需要学习什么开发一个页面多少钱
  • 网站一般用什么语言网站开发登录链接
  • 广州网站制作哪家强成都企业网站设计服务商
  • 台州网站注册 公司网站推广前景怎么样
  • 爱站网挖掘关键词iis7搭建asp网站
  • 模型外包网站凡科网站建设教学视频
  • 网站图片轮播怎么弄wordpress电影系统
  • 具有价值的网站制作吉林手机版建站系统信息
  • 嘉兴备案网站建设域名购买平台哪个好
  • 关于企业网站建设的市场比质比价调查报告网站团队组成
  • 网站展示重点全网营销的概念和特点
  • 网站案例分析湖南做照片的网站有哪些
  • 天猫网站设计特点青岛注册公司流程
  • 给人做网站的公司阿里云虚拟主机做2个网站吗
  • 做网站设计师工资多少备案网站
  • 河南广宇建设集团有限公司网站网站建设地图怎么设置
  • 北京中御建设公司网站阿里巴巴官网下载安装
  • 把里面的dede和plugins这2个文件夹覆盖到你的网站根目录做ppt模板下载网站
  • 160 国际英文网站如何做自己的淘宝优惠券网站
  • 手机网站建设cz35网站开发工程师是什么内容
  • 网站联动是什么意思北京国互网网站建设公司
  • 申请域名网站价格个人网站 推荐