IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 数据结构与算法 -> C++学习笔记(3):数组和函数 -> 正文阅读

[数据结构与算法]C++学习笔记(3):数组和函数

一、数组

1.1 一维数组

#include <iostream>
using namespace std;
int main()
{
//  (1)数据类型 数组名[数组长度];
    int arr[10];
    arr[0]=10;
    arr[1]=20;
    cout<< arr[1]<<endl;//20

//  (2)数据类型 数组名[数组长度]={值1,值2...};
    int arr1[10]={10,20,30,20,50,60,70,80}; //不足长度10的自动补充0
    for (int i=0;i<10;i++)
    {
        cout<<arr1[i]<<endl;//10 20 30 20 50 60 70 80 0 0
    }
//  (3)数据类型 数组名[]={值1,值2...};
    int arr3[]={10,20,30,40,50,60,70,80};
    cout<<"sizeof(arr3)="<<sizeof(arr3)<<endl;//32
    cout<<"sizeof(arr3[0])="<<sizeof(arr3[0])<<endl;//4
    for (int i=0;i<sizeof(arr3)/sizeof(arr3[0]);i++)
    {
        cout<<arr3[i]<<endl;//10 20 30 20 50 60 70 80
    }
    return 0;
}

1.2 冒泡排序法

#include<iostream>
using namespace std;
int main()
{
    //冒泡排序:
    int arr[]={3,5,6,4,2,1,0,10,7,9,8};
    int temp;
    for(int i=0;i<sizeof(arr)/sizeof(arr[0])-1;i++)
    {
        for(int j=0;j<sizeof(arr)/sizeof(arr[0])-i-1;j++)
        {
            if (arr[j]>arr[j+1])
            {
                temp=arr[j];
                arr[j]=arr[j+1];
                arr[j+1]=temp;
            }
        }
    }

    cout<<"排序后:"<<endl;
    for(int i=0;i<sizeof(arr)/sizeof(arr[0]);i++)
    {
        cout<<arr[i]<<" ";
    }
    cout<<endl;
    return 0;
}

在这里插入图片描述

1.3 二维数组

#include<iostream>
using namespace std;
int main()
{
//二位数组定义方式;
//  (1)数据类型 数组名[行数][列数];
//  (2)数据类型 数组名[行数][列数]={{数据1,数据2},{数据3,数据4}};
//  (3)数据类型 数组名[行数][列数]={数据1,数据2,数据3,数据4};
//  (4)数据类型 数组名[][列数]={数据1,数据2,数据3,数据4};

    int arr[2][3]=
            {
                    {1,2,3},
                    {4,5,6}
            };
//    遍历二维数组中的元素
    for(int i =0;i<2;i++)
    {
        for(int j=0;j<3;j++)
        {
            cout<<arr[i][j]<<" ";
        }
        cout<<endl;
    }
//  二维数组的名称:int型 占4字节
//  查询占用空间(单位:字节),然后分别计算行列数
    cout<<"二维数组占用的总空间:"<<sizeof(arr)<<endl;//24
    cout<<"二维数组一行占用的总空间:"<<sizeof(arr[0])<<endl;//12
    cout<<"二维数组一个元素占用的总空间:"<<sizeof(arr[0][0])<<endl;//4

    cout<<"二维数组行数:"<<sizeof(arr)/sizeof(arr[0])<<endl;//2
    cout<<"二维数组列数:"<<sizeof(arr[0])/sizeof(arr[0][0])<<endl;//3
    return 0;
}

在这里插入图片描述

二、函数

作用:将经常使用的一段代码封装起来,减少重复代码

2.1 函数的定义

#include<iostream>
using namespace std;
//函数的声明
// 当函数写在main函数后面时,告诉编译器,这个函数存在
int add(int a,int b);
//主函数
int main()
{
    int a=10;
    int b=11;
    //调用函数
    add(a,b);//21
}
//定义函数
int add(int a,int b)
{
    int sum;
    sum = a+b;
    cout<<sum<<endl;
    return sum;
}

2.2 函数的分文件编写

主要流程:
(1)创建.h头文件

在这里插入图片描述

(2)创建.cpp源文件

在这里插入图片描述

(3)在头文件中声明函数

#include<iostream>
using namespace std;
//函数声明
int add(int a,int b);

在这里插入图片描述

(4)在源文件中写函数定义

#include<iostream>
#include "add.h"
using namespace std;
int add(int a,int b)
{
    int sum;
    sum = a+b;
    cout<<sum<<endl;
    return sum;
}

在这里插入图片描述

(5)主函数中调用函数

#include<iostream>
using namespace std;
#include "add.h"

int main()
{
    int a=10;
    int b=11;
    add(a,b);
}

在这里插入图片描述

  数据结构与算法 最新文章
【力扣106】 从中序与后续遍历序列构造二叉
leetcode 322 零钱兑换
哈希的应用:海量数据处理
动态规划|最短Hamilton路径
华为机试_HJ41 称砝码【中等】【menset】【
【C与数据结构】——寒假提高每日练习Day1
基础算法——堆排序
2023王道数据结构线性表--单链表课后习题部
LeetCode 之 反转链表的一部分
【题解】lintcode必刷50题<有效的括号序列
上一篇文章      下一篇文章      查看所有文章
加:2021-11-15 16:07:29  更:2021-11-15 16:08:55 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 11:39:48-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码