首页 > 其他分享 >数组

数组

时间:2024-10-16 21:59:37浏览次数:7  
标签:初始化 数组 字符 int 一维 字符串

一、 一维数组的声明与字符数组

(一)一维数组的声明与初始化

1.一维数组的声明

应指出以下三点:

1)存储在每个元素中的值的类型,且他们的类型一致;

2)数组名;

3)数组中的元素数,数组的元素数必须用值大于等于1的常量表达式定义。

4)数据可以存储任何非引用数据类型的值,数组中元素必须可以被赋值。

eg.int a[7] = {0};

2.一维数组的初始化

可以使用循环进行初始化(合理利用循环中的计数器表示数组下标)

eg.

点击查看代码
int main(){
	const int arraySize = 10;
	int s[arraySize];
	for(int i = 0;i < arraySize;i++){
		s[i] = 2 + 2 * i;
  	}
  	cout<<"Element"<<setw(13)<<"Value"<<endl;
  	for(int j = 0;j<arraySize;j++){
  		cout<<setw(7)<<j<<setw(13)<<s[j]<<endl;
	}
  	return 0;
}

运行结果:

(二)字符数组
可以使用字符数组来存储和操作字符串

数组可以是任何类型,包括 chars

可以使用 char 数组保存字符串

char string1[] = "Hi"; == char string1[] = {'H','i','\0'};

所以开的字符串数组必须长度足够容纳想要存储的字符串。

数组包含每个字符以及一个特殊的字符串终止字符,称为空字符('\0')

只有有'\0'的字符数组才能用cout语句直接输出。

二、拓展———二维数组

1.初始化方式分为两种:

1)按行初始化:

int a[3][4] = {{0, 1, 2, 3}, {4, 5, 6, 7}, {8, 9, 10, 11}};
2)顺序初始化:

int a[3][4] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11};

2.应用示例:

一般可以与多重for循环结合使用

点击查看代码
int main(){
    int a[9][9] = {};
    for (int i = 1; i <= 9; i++) {
        for (int j = 1; j <= i; j++) {
            a[i - 1][j - 1] = i * j;
            cout << setw(5) << i << " * " << j << " = " << a[i - 1][j - 1];
        }
        cout << endl;
    }

    return 0;
    //std::cout << "Hello World!\n";
}
运行结果: ![](/i/l/?n=24&i=blog/3538843/202410/3538843-20241016220534887-2126381624.png)

标签:初始化,数组,字符,int,一维,字符串
From: https://www.cnblogs.com/C-orange/p/18471032

相关文章

  • 代码随想录算法训练营 | 300.最长递增子序列,674. 最长连续递增序列,718. 最长重复子数
    300.最长递增子序列题目链接:300.最长递增子序列文档讲解︰代码随想录(programmercarl.com)视频讲解︰最长递增子序列日期:2024-10-16想法:dp[i]表示以nums[i]结尾的最长子数列长度,需要知道i之前的j的dp[j],找到最大的dp[j],再加1,初始化都为1。Java代码如下:classSolution{pub......
  • 从入门到精通——差分数组
    差分数组差分数组通常是指一个数组,其中每个元素是原数组中对应元素与前一个元素的差。这种数组在处理序列数据时非常有用,尤其是在需要计算连续项之间的变化或者进行数据压缩时。定理解释:差分数组的一个核心定理是,给定一个差分数组,可以唯一地重建原始数组。这意味着,如果......
  • Js数组&高阶函数
    数组也是一种复合数据类型,在数组可以存储多个不同类型的数据数组中存储的是有序的数据,数组中的每个数据都有一个唯一的索引可以通过索引来操作获取数据数组中存储的数据叫做元素任何类型的值都可以成为数组中的元素基本操作创建数组//通过Array创建数组constarr=ne......
  • <Leetcode:算法题及解析>最大子数组和(Javascript版)
    题目描述:给你一个整数数组nums,请你找出一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。子数组是数组中的一个连续部分。本题可以使用Kadane's算法实现,这是一种用于解决最大子数组和问题的高效算法。它由JosephBornKadane在1984年提出。这个算法的核......
  • 代码随想录算法训练营第一天|704二分查找、27移除元素、977有序数组的平方
    代码随想录算法训练营第一天|704二分查找、27移除元素、977有序数组的平方1Leetcode704二分查找题目链接:[704.二分查找](704.二分查找-力扣(LeetCode))文章链接:[代码随想录](代码随想录(programmercarl.com))视频链接:[手把手带你撕出正确的二分法|二分查找法|二分搜......
  • [Python手撕]环形子数组的最大和
    给定一个长度为n的环形整数数组nums,返回nums的非空子数组的最大可能和。环形数组意味着数组的末端将会与开头相连呈环状。形式上,nums[i]的下一个元素是nums[(i+1)%n],nums[i]的前一个元素是nums[(i-1+n)%n]。子数组最多只能包含固定缓冲区nums中......
  • 第九章习题3-编写一个函数print,打印一个学生的成绩数组,该数组有5个学生的数据记录,每个
     ......
  • 数组
    数组ctrl+D复制当前行。1、数组的必要性传统方式无法解决多数量数据计算等问题。数组是一种引用类型,数组就是一组数据,一组同一类型的数据。数组内容double[]hens={3,5,1,3.4,2,50};java中数组定义方式如上,相当于数据类型和名称之间加了一对[],数据用花括号包着。......
  • js数组、字符串的那些方法
    一、数组方法arr.copyWithin(a,b,c)用数组部分覆盖数组中的某些内容,改变原数组内容但长度不变a:被覆盖的起始下标;b:复制开始下标(包含);c:复制结束下标(不包含)[1,2,3,4].copyWithin(1,2,3)//[1,3,3,4]arr.flatMap(function(t,i){})拍平数组,只能拍平一层t表示第二层的每......
  • C语言——数组超详细版总结
    目录1一维数组1.1一维数组的创建与初始化1.2.1一维数组的创建1.2.2一维数组的初始化1.2一维数组的访问1.3一维数组在内存中的存储2二维数组2.1二维数组的创建与初始化2.1.1二维数组的创建2.2.2二维数组的初始化2.2二维数组的访问2.3二维数组在内存中的......