C++ Primer Plus P60 程序清单4.1

马铃薯的分析程序
说明数组的一些属性,包括声明数组、给数组元素赋值以及初始化数组

/*
C++ Primer Plus P60 程序清单4.1马铃薯的分析程序
说明数组的一些属性,包括声明数组、给数组元素赋值以及初始化数组
*///头文件
#include<iostream>//主函数
int main(void)
{using namespace std;                                       //编译指令int yamcosts[3] = { 20, 30, 5 };                         //初始化数组int yams[3];                                             //声明数组yams[0] = 7;                                             //给数组元素赋值yams[1] = 8;                                              //给数组元素赋值yams[2] = 6;                                              //给数组元素赋值cout << "Total yams = ";                                  //意思:总共多少个马铃薯cout << yams[0] + yams[1] + yams[2] << endl;              //输出yams数组第1、2、3个元素相加的值cout << "The package with " << yams[1] << " yams costs "   //意思:每包有yams[1]个马铃薯,每包的价格是yamcosts[1]美分/山药<< yamcosts[1] << " cents per yam." << endl;int total = yams[0] * yamcosts[0] + yams[1] * yamcosts[1] + yams[2] * yamcosts[2];   //计算马铃薯3套装价格cout << "The total yam expense is " << total << " cents." << endl;                  //意思:,马铃薯的总费用是total分/*对数组的字节查看*/cout << endl << "对数组字节的查看:" << endl;cout << "(对数组yams的字节查看)Size of yams array = " << sizeof yams << " bytes."   //返回的是yams数组内所有元素的字节和等于数组yams的字节<< endl;cout << "(对数组yams内单个元素的字节查看)Size of one element = " << sizeof yams[0] << " bytes."//返回的是yams数组内单个元素的字节<< endl;return 0;
}

有两种方法可以对数组赋值:
方法一:初始化数组

 int yamcosts[3] = { 20, 30, 5 };                           //初始化数组

方法二:先声明数组,在对数组元素依次赋值

 int yams[3];                                                //声明数组yams[0] = 7;                                             //给数组元素赋值yams[1] = 8;                                              //给数组元素赋值yams[2] = 6;                                              //给数组元素赋值

本程序不难理解,重要的理解代码块是,yams和yams内的单个元素字节的区别

/*对数组的字节查看*/cout << endl << "对数组字节的查看:" << endl;cout << "(对数组yams的字节查看)Size of yams array = " << sizeof yams << " bytes."  //返回的是yams数组内所有元素的字节和等于数组yams的字节<< endl;cout << "(对数组yams内单个元素的字节查看)Size of one element = " << sizeof yams[0] << " bytes."//返回的是yams数组内单个元素的字节<< endl;

返回的是yams数组内所有元素的字节和,返回的是数组yams的字节

 cout << "(对数组yams的字节查看)Size of yams array = " << sizeof yams << " bytes."    //返回的是yams数组内所有元素的字节和等于数组yams的字节<< endl;

返回的是yams数组内单个元素的字节,即返回的是yams[元素下标]的字节,是单个元素的字节

 cout << "(对数组yams内单个元素的字节查看)Size of one element = " << sizeof yams[0] << " bytes."//返回的是yams数组内单个元素的字节<< endl;

结果:

Total yams = 21
The package with 8 yams costs 30 cents per yam.
The total yam expense is 410 cents.对数组字节的查看:
(对数组yams的字节查看)Size of yams array = 12 bytes.
(对数组yams内单个元素的字节查看)Size of one element = 4 bytes.

感谢观看

再次感谢~

C++ Primer Plus P60 程序清单4.1(马铃薯的分析程序 ,理解数组的一些属性)——中职相关推荐

  1. HTC Desire S-G12港版完整内置程序清单(列出可删减的程序)可增加续航时间[转]...

    G12港版官方RUU完整内置程序清单(ROOT后可以用具有ROOT权限的文件管理器打开/system/app,下面的可删.我删均为原作者标注),各个版本ROM有所不同,大多一样,删除请谨慎操作. 1 ...

  2. C++ Primer第六版程序清单与习题详解【第二章 开始学习 C++】

    一.程序清单 程序清单 2.1 m yfirst.cpp 程序清单2.1中的示例非常简单,只包含一个名为main()的函数.myfirst.cpp示例包含下述元素. •  注释,由前缀//标识. • ...

  3. 程序清单4.1_talkback.c程序_《C Primer Plus》P60

    // talkback.cpp : 定义控制台应用程序的入口点. // /* talkback.c -- 一个能为您提供一些信息的对话程序 *//*时间:2018年06月08日 23:30:05代码: ...

  4. 程序清单3.3_bases.c程序_《C Primer Plus》P37

    /* bases.c -- 以十进制.八进制.十六进制形式输出 100 */// bases.cpp : 定义控制台应用程序的入口点. // /*时间:2018年06月03日 23:23:06代码:程 ...

  5. 程序清单4.9_flags.c程序_《C Primer Plus》P72

    // flags.cpp : 定义控制台应用程序的入口点. // /* flags.c -- 一些格式标志的使用示例 *//*时间:2018年06月16日 22:40:52代码:程序清单4.9_fla ...

  6. 程序清单5.3_golf.c程序_《C Primer Plus》P90

    // golf.cpp : 定义控制台应用程序的入口点. // /* golf.c -- 高尔夫锦标赛记分卡 *//*时间:2018年6月30日23时50分代码:程序清单5.3_golf.c程序_&l ...

  7. 程序清单4.5_defines.c程序_《C Primer Plus》P67

    // defines.cpp : 定义控制台应用程序的入口点. // /* defines.c -- 使用 limits.h 和 float.h 中定义的常量 *//*时间:2018年06月12日 2 ...

  8. C++Primer Plus笔记——第十六章 string类和标准模板库总结及程序清单

    目录 本章小结 程序清单 string类 16.1 str1.cpp                16.2 strfile.cpp            16.3 hangman.cpp      ...

  9. Android清单文件详解(三)----应用程序的根节点application

    <application>节点是AndroidManifest.xml文件中必须持有的一个节点,它包含在<manifest>节点下.通过<application>节 ...

最新文章

  1. sklearn FutureWarning: numpy not_equal will not check..., The comparison did not return the same
  2. springboot之定时任务
  3. 开通域名绑定DDNS
  4. Maven--传递性依赖和依赖范围
  5. Saltstack_实战指南01_系统规划
  6. 云中计算将软件服务外包带入3.0时代
  7. numa节点_极致性能(1):以NUMA为起点
  8. 三分钟掌握PHP操作数据库
  9. 学会使用ant design封装一个锚点组件
  10. 2019 国家网信办启动网络生态治理专项行动 剑指12类违法违规互联网信息
  11. hue访问mysql,【原创】大叔经验分享(50)hue访问mysql(librdbms)
  12. centos 阿帕奇无法解析php_PHP之校园连接企业之路-2
  13. 【考研数学】视频,你喜欢看哪位老师?
  14. 网地址和广播地址的计算
  15. Teradata天睿公司发布开源Kylo软件
  16. 普莱费尔密码(playfair)
  17. 使用MIPS完成汇编程序——选择排序实现
  18. 2019年上半年 DDOS流量攻击分析以及解决方案
  19. 分享视频剪辑必备的三个素材软件(配音/文案/图片)
  20. 基于ARM的微机原理-Cortex-M3处理器

热门文章

  1. 如果微软狠心鸿蒙系统,微软强制用户升级华为鸿蒙系统出来你会放弃windows使用鸿蒙吗...
  2. 企业如何做好员工关怀,减少人才流失
  3. 实现一个avs2码流分析工具
  4. DanmuVis: Visualizing Danmu Content Dynamics and AssociatedViewer Behaviors in Online Videos
  5. 图片怎么缩小尺寸比例不变?
  6. 3 JWT 和 JWS
  7. Warshall算法JAVA实现
  8. 当远程工作成为未来的工作方式......
  9. Linux下服务器开发的必要准备
  10. Java实习生常规技术面试题每日十题Java基础(六)