码迷,mamicode.com
首页 > 编程语言 > 详细

C++编程基础一 18-数组的第三种实现方式

时间:2018-07-21 17:13:54      阅读:121      评论:0      收藏:0      [点我收藏+]

标签:对象   成员   默认   ring   变量   实现   moc   splay   利用   

 1 // 18-数组的第三种实现方式.cpp: 定义控制台应用程序的入口点。
 2 //
 3 
 4 #include "stdafx.h"
 5 #include <iostream>
 6 #include <climits>
 7 #include <array> //引入模板类
 8 #include<string> //引入string类库
 9 using namespace std;
10 
11 void CreateArray();
12 void ShowSnack();
13 void RunData();
14 struct CandyBar
15 {
16     //char brand[20]={};
17     string brand;
18     float weight;
19     int calorie;
20 };
21 struct TotalRun
22 {
23     float run1;
24     float run2;
25     float run3;
26 };
27 int main()
28 {
29     //C++11最新的数组写法,利用模板类。
30     //使用array创建数组的好处是数组之间可以互相赋值。
31     array<int, 9> a1 = {2,34,234,12,645,123,654,36};//未定义值默认为0
32     array<int, 9>a2;
33     a2 = a1; //将a1赋值给a2
34     cout << a1[4] << " " << a2[4] << endl;
35     cout << a1[8] << " " << a2[8] << endl;//访问未赋值的元素。
36 
37     CreateArray();
38     ShowSnack();
39     RunData();
40 
41     int t;
42     cin >> t;
43     return 0;
44 }
45 
46 //_______________________________________练习________________________________________________
47 //1.创建数组actor,里面有30个char。
48 //  创建数组chuck,里面有13个float。
49 void CreateArray()
50 {
51     //创建数组有三种方式:
52     //方式1    char actor[30]{};  //传统的方式
53     //方式2    char* actor=new char[30];  //通过指针的方式主动申请内存创建数组
54     /*方式3*/  array<char, 30> actor={};  //通过C++11最新的array模板类来创建
55     array<float, 13> chuck = {};
56     
57     //给数组赋值:
58     actor[2] =6;
59     chuck[12] = 15.6f;
60     cout << actor[2] << endl;
61     cout << chuck[12] << endl;
62 }
63 
64 //2.创建一个结构体糖块CandyBar,里面包含三个成员。第一个成员储存了糖块的品牌,第二个成员储存了糖块的重量(可以有小数),第三个
65 //成员储存了糖块的卡路里(整数)。编写一个程序,声明这个结构。创建一个名为snack的CandyBar变量,初始化为Mocha Munch,2.3,500。
66 //初始化应该声明snack的时候进行。最后程序显示snack变量的内容。
67 
68 
69 void ShowSnack()
70 {
71     CandyBar snack = {"Mocha Munch",2.3f,500 };
72     cout <<snack.brand<<"  " << snack.calorie << "  " << snack.weight << endl;
73 }
74 
75 //3.编写一个程序,让用户输入三次50米跑的成绩,显示次数和平均成绩。使用array对象来储存数据。
76 void RunData()
77 {
78     //TotalRun totalRun;
79     //cout << "请输入第一次50米跑的成绩(秒):";
80     //cin >> totalRun.run1;
81     //cout << "请输入第二次50米跑的成绩(秒):";
82     //cin >> totalRun.run2;
83     //cout << "请输入第三次50米跑的成绩(秒):";
84     //cin >> totalRun.run3;
85     //float average = (totalRun.run1 + totalRun.run2 + totalRun.run3) / 3;
86     //cout << "您一共跑了三次50米,平均成绩为:" << average;
87 
88     array <float, 3 > totalRun = {};
89     cout << "请输入第一次50米跑的成绩(秒):";
90     cin >> totalRun[0];
91     cout << "请输入第二次50米跑的成绩(秒):";
92     cin >> totalRun[1];
93     cout << "请输入第三次50米跑的成绩(秒):";
94     cin >> totalRun[2];
95     cout << "您一共跑了三次50米,平均成绩为:" << (totalRun[0] + totalRun[1] + totalRun[2]) / 3 << endl;
96 }

 

C++编程基础一 18-数组的第三种实现方式

标签:对象   成员   默认   ring   变量   实现   moc   splay   利用   

原文地址:https://www.cnblogs.com/uimodel/p/9346573.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!