C++学习6(二维数组)
2021/5/19 14:27:13
本文主要是介绍C++学习6(二维数组),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
#include <iostream> using namespace std; #include <string> int main() { //二维数组的定义方式 /*1.数据类型 数组名[行数][列数]; 2.数据类型 数组名[行数][列数]={{数据1,数据2},{数据3,数据4}...} 3.数据类型 数组名[行数][列数]={数据1,数据2,数据3,数据4...} 4.数据类型 数组名[][列数]={数据1,数据2,数据3,数据4...}*/ cout << "二维数组 " << endl; //第一种定义方法 cout << "第一种定义" << endl; int arr1[2][3]; arr1[0][0] = 1; arr1[0][1] = 2; arr1[0][2] = 3; arr1[1][0] = 4; arr1[1][1] = 5; arr1[1][2] = 6; cout << arr1[0][2] << endl; //用嵌套循环输出避免一个一个输出 for (int i = 0;i < 2;i++) { cout << "第" << i + 1 << "行为: "; for (int j = 0;j < 3;j++) { cout << arr1[i][j] << " "; } cout << endl; } //第二种定义 cout << "第二种定义" << endl; int arr2[2][3] = { {1,2,3}, {4,5,6} }; for (int i = 0;i < 2;i++) { cout << "第" << i + 1 << "行为: " ; for (int j = 0;j < 3;j++) { cout << arr2[i][j] << " "; } cout << endl; } //第三种定义 cout << "第三种定义" << endl; int arr3[2][3] = {1,2,3,4,5,6}; for (int i = 0;i < 2;i++) { cout << "第" << i + 1 << "行为: "; for (int j = 0;j < 3;j++) { cout << arr3[i][j] << " "; } cout << endl; } //第四种定义 int arr4[][3] = { 1,2,3,4,5,6 };//只可省去行一个,不能省去列数 for (int i = 0;i < 2;i++) { cout << "第" << i + 1 << "行为: "; for (int j = 0;j < 3;j++) { cout << arr4[i][j] << " "; } cout << endl; } cout << "\n " << endl; //二维数组的数组名 /*1.查看二维数组所占内存空间 2.获取二维数组首地址*/ cout << "二维数组名的用途" << endl; int arr5[2][3] = { {7.8,9}, {4,5,6} }; cout << "int 二维数组所占用的内存空间" << sizeof(arr5) << endl; double arr6[2][3] = { {7.8,9}, {4,5,6} }; cout << "double 二维数组所占用的内存空间" << sizeof(arr6) << endl; cout << "double 二维数组第一行所占用的内存空间" << sizeof(arr6[0]) << endl; cout << "double 二维数组第一个元素所占用的内存空间" << sizeof(arr6[0][0]) << endl; int rows, cols; rows = sizeof(arr6) / sizeof(arr6[0]); cols = sizeof(arr6[0]) / sizeof(arr6[0][0]); //int size = sizeof(Arr) / sizeof(Arr[0][0]);//数组元素总数 //int rows = sizeof(arr) / sizeof(arr[0]);//行数 //int cols = sizeof(arr[0]) / sizeof(arr[0][0]);//列数 cout << "数组arr6的行数为:" << rows << endl; //行数 cout << "数组arr6的列数为:" << cols << endl; //列数 cout << "\n " << endl; //查看二维数组的首地址 cout << "二维数组arr6的首地址为:" <<(int) arr6 << endl; cout << "二维数组arr6的第一行首地址为:" << (int) arr6[0] << endl; cout << "二维数组arr6的第一个元素首地址为:" << &arr6[0][0] << endl; //二维数组的首地址和第一行首地址和第一个元素的首地址相同 cout << "二维数组arr6的第二行首地址为:" << (int)arr6[1] << endl; cout << "\n " << endl; //二维数组的应用案例 cout << "二维数组的应用案例(考试成绩统计)" << endl; //创建二维数组 int scores[3][3] = { {100,100,100},//张三 {90,50,100},//李四 {60,70,80}//王五 }; //统计每个人的总和分数 string name[3] = { "张三","李四","王五" }; for (int i = 0;i < 3;i++) { int sum = 0;//成绩总和 for (int j = 0;j < 3;j++) { sum += scores[i][j]; //cout << scores[i][j] << " "; } cout << name[i]<< "的总分: "<<sum; cout << endl; } cout << "\n " << endl; system("pause"); return 0; }
这篇关于C++学习6(二维数组)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-06-26小白家庭 nas 搭建方案-icode9专业技术文章分享
- 2024-06-23AI大模型企业应用实战(14)-langchain的Embedding
- 2024-06-23AI大模型企业应用实战(15)-langchain核心组件
- 2024-06-23AI大模型企业应用实战(16)-langchain核心组件
- 2024-06-23AI 大模型企业应用实战(06)-初识LangChain
- 2024-06-19EntBot.ai: AI Website Chatbot for Product Guides and Development Doc
- 2024-06-17zero-shot-learning-definition-examples-comparison
- 2024-06-06Package Easy(基于 NSIS 的打包exe安装包工具)使用方法-icode9专业技术文章分享
- 2024-06-06基于 casdoor 的 ELK 开源登录认证解决方案: elk-auth-casdoor-icode9专业技术文章分享
- 2024-05-29Elasticsearch慢查询日志配置