C++程序用于填充数组特定元素


数组是同构数据结构,用于在连续的内存位置存储相同类型的数据,可以使用基地址和索引来寻址。在许多不同的应用中,我们使用数组来存储数据以供适当使用。将元素插入数组是一个繁琐的过程之一。我们可以通过在循环中获取用户输入来插入它们,或者从文件插入它们,或者还有其他插入它们的过程。用特定值初始化数组(在该数组的所有位置插入该值)也有几种不同的方法。在本文中,我们将了解如何创建一个大小为 n 的数组,并在其中所有位置插入元素 k,使用 C++。

通过示例理解概念

Given array length n = 10, insert k = 5 at every location inside the array. The array A will be like this:
A = [5, 5, 5, 5, 5, 5, 5, 5, 5, 5]

最简单的方法是使用循环来填充数组元素k。让我们看看第一个算法,其中我们使用 for 循环在数组 A 的每个位置插入 k。

算法

  • 获取大小为 n 的数组 A 和要插入的元素 k

  • 对于索引 i 从 0 到 n - 1,执行

    • A[ i ] := k

  • 结束循环

  • 返回 A

示例

#include <iostream>
# define Z 30

using namespace std;

void displayArr(int arr[] ) {
   for( int i = 0; i < Z; i++ ){
      cout << arr[ i ] << ", ";
   } 
} 

void initializeArray( int A[], int k ){
   for( int i = 0; i < Z; i++ ){
      A[ i ] = k;
   }
}

int main() {
   int arr[ Z ];
   
   cout << "Initialize array with value 15" << endl;
   initializeArray( arr, 15);
   cout << "Array elements: " << endl;
   displayArr( arr );
}

输出

Initialize array with value 15
Array elements: 
15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,

使用向量构造函数

与静态数组不同,向量可用于创建动态数组。要使用某个元素初始化向量,我们可以在向量构造函数中使用第二个参数。向量构造函数采用第一个元素作为其大小,第二个元素是初始化值。让我们看看代码以更好地理解。

示例

#include <iostream>
#include <vector>
# define Z 30

using namespace std;

void displayArr( vector<int> v ){ 
   for( auto e : v ){
      cout << e << ", ";
   } 
}

int main() {
   cout << "initialize vector with 20:" << endl;
   vector<int> arr( Z, 20 );
   
   cout << "Array elements: " << endl;
   displayArr( arr );
}

输出

initialize vector with 20:
Array elements: 
20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20,

结论

在本文中,我们看到了两种使用特定值初始化数组的方法。第一种方法使用静态数组,我们可以使用循环进行赋值。在下一种方法中,使用动态数组或向量。对于向量,可以使用构造函数分配元素,但它有一个前提条件。数组必须有一些预定义的位置来保存数据。因此,必须提供第一个参数,即向量的尺寸,然后第二个元素是关键元素,它将被放置在向量中的每个位置。

更新于: 2022-12-13

869 次查看

开启你的 职业生涯

通过完成课程获得认证

开始学习
广告