C ++ tömb funkciók - C ++ tömb és többdimenziós tömb inicializálása

Tartalomjegyzék:

Anonim

Mi a C ++ tömb funkció?

Tudjuk, hogy ahhoz, hogy később bármilyen értéket felhasználhassunk, egy változóba kell tárolnunk. A változó hivatkozással lesz a memóriára, ahol ezt az értéket tárolni fogja, így bármikor felhasználhatjuk azt. Hasonlóképpen vegye figyelembe egy olyan esetet, ahol több száz és ezer ilyen adat van, amelyeket egy változóban kell tárolni a későbbi referencia céljából. Ezen értékek mindegyikét változókba nem tárolhatja, mivel százazok és ezrek változókat kell létrehoznunk ehhez. Ezeket a változókat nem is könnyű megjegyezni. Ebben a témában megismerjük a C ++ tömb funkcióit.

Így jön egy tömb fogalma. A tömb alapvetően egy gyűjtemény, amely annyi elemet képes tárolni, amennyit csak akarunk, amíg nem azonos típusúak. Egy egész tömb, egy karakter tömb, egy tizedes tömb, ezek mind meghatározzák a tömbben tárolt elemek típusát. Ez azt jelenti, hogy az egész tömb csak egész értékeket tárol, a karakter tömb karaktereket tartalmaz és így tovább. Ezeket az értékeket egy folyamatos memóriahelyen tárolják, és az indexértékükkel külön-külön is hivatkozhatnak. A tömb index értéke 0-tól kezdődik.

Vegyünk egy egész elemet, amely három elemből áll: 10, 20, 30.

A tömbök egy nagyon fontos adatszerkezeti koncepció, amelyet a legtöbb programozási nyelv megvalósít. A C ++ azt a tömböt is biztosítja, amely azonos típusú, rögzített méretű elemek gyűjteménye. A tömb deklarálásakor szem előtt tartandó két alapvető dolog a tömb mérete és a tömb típusa. Mivel ezt a két dolgot a tömb deklarálásakor a legelején kell deklarálni, a tömb statikus jellegű. A tömb mérete határozza meg a tárolható elemek számát.

A tömbnyilatkozat általános szintaxisa:

Példa -

int pincode_of_cities(50)

A tömb méretének egész konstans értéknek kell lennie, amelynek nagyobbnak kell lennie, mint 0. A tömb típusa lehet bármilyen C ++ értékben érvényes adattípus.

A C ++ tömb inicializálása

Két alapvető módszer van a tömb inicializálására -

1. módszer: A nyilatkozat benyújtásakor

int pincode(5) = (123, 000, 342, 678, 654);

VAGY

int pincode() = (123, 000, 342, 678, 654);

2. módszer: hurok használata

int number(5);
for(int i = 0; i number = i;
int number(5);
for(int i = 0; i number = i;

Ez egydimenziós tömb vagy 1D tömb. A tömb második típusa egy többdimenziós tömb, amelyet alig később tárgyalunk.

Először nézzük meg, hogyan érhetjük el az értékeket tömbből. Az alábbiakban a következő módszerek kevését mutatjuk be -

Egy tömb értékének elérése

A tömb neve (index): Ezzel visszaadja az értéket az említett index pozícióban.

#include
using namespace std;
int arr(5) = (10, 20, 30, 40, 50);
int main ()
(
cout << arr(3);
return 0;
)

Teljesítmény: 40

Az összes érték tömbben történő kinyomtatása érdekében -

#include
using namespace std;
int arr(5) = (10, 20, 30, 40, 50);
int i;
int main ()
(
for ( i=0 ; i<5 ; i++ )
(
cout << arr(i);
)
return 0;
)

Kimenet: 1020304050

Példa:

#include
using namespace std;
int main()
(
int num(5), sum = 0;
cout << "Enter 5 natural numbers: ";
// Store numbers
// Then find sum
for (int i = 0; i < 5; ++i)
(
cin >> num(i);
sum += num(i);
)
cout << "Sum = " << sum << endl;
return 0;
)

Kimenet:

Adjon meg 5 természetes számot: 10 20 30 40 50
Összeg: 150

Többdimenziós tömb

A fenti egydimenziós tömb deklarálása. A tömb második típusa a többdimenziós tömb, és négyszögletes tömbökként is ismertek a C ++ kategóriában. A követelménytől függően ez lehet kétdimenziós tömb vagy háromdimenziós tömb. Az értékeket táblázat formátumban tárolják, mátrixnak is hívják őket sorok és oszlopok formájában.

A többdimenziós tömb deklarálásának szintaxisa:

(number of rows)(number of columns) int two_dim(2)(2);

Ez azt jelenti, hogy a fenti tömbnek -

  • 2 sor
  • 2 oszlop

A fenti tömb a következő módon inicializálható -

1. módszer:

#include
using namespace std;
int main()
(
int arr(3)(3) =
(
(1, 5, 15),
(44, 0, 23),
(29, 41, 85) ); //declaring and initializing at the same time
//traversing through the array
for(int i = 0; i < 3; ++i)
(
for(int j = 0; j < 3; ++j)
(
cout<< arr(i)(j)<<" ";
)
cout<<"\n"; //this will take to a new line once the all the columns of the //particular row has been traversed
)
return 0;
)

Kimenet:

1 5 15

44 0 23

29 41 85

2. módszer:

#include
using namespace std;
int main()
(
int arr(3)(3); //declaring a 2D array
arr(0)(0)=5; //initializing the array
arr(0)(1)=10;
arr(0)(2)=15;
arr(1)(0)=20;
arr(1)(1)=30;
arr(1)(2)=40;
arr(2)(0)=50;
arr(2)(1)=60;
arr(2)(2)=70;
//traversing through the elements in the array
for(int i = 0; i < 3; ++i)
(
for(int j = 0; j < 3; ++j)
(cout<< arr(i)(j)<<” ” ;
)
cout<<"\n"; //this will take to a new line once the all the columns of the //particular row has been traversed
)
return 0;
)

Kimenet:

5 10 15

20 20 40

50 60 70

Példa:

#include
using namespace std;
const int city = 2;
const int week = 2;
int main()
(
int temp(city)(week);
cout << "Enter temp for city \n";
// Insert values
for (int i = 0; i < city; ++i)
(
for(int j = 0; j < week; ++j)
(
cout << "city " << i + 1 << ", Week Day " << j + 1 << " : ";
cin >> temp(i)(j);
)
)
// Access values
for (int i = 0; i < city; ++i)
(
for(int j = 0; j < week; ++j)
(
cout << "city " << i + 1 << ", Week Day " << j + 1 << " = " << temp(i)(j) << endl;
)
)
return 0;
)
Enter temp for city
city 1, Week Day 1 : 12
city 1, Week Day 2 : 24
city 2, Week Day 1 : 35
city 2, Week Day 2 : 47

Kimenet:

1. város, 1. hét 1. nap = 12
1. város, 2. hét 2. nap = 24
2. város, 1. hét = 35
2. város, 2. hét 2. nap = 47

Ajánlott cikkek

Ez egy útmutató a C ++ tömbfunkciókhoz. Itt tárgyaljuk a C ++ tömb és a többdimenziós tömb inicializálását a módszerekkel, példákkal és outputokkal. A következő cikkben további információkat is megnézhet -

  1. Csillagminták c ++ -ban
  2. Mi az a C ++?
  3. A tömb előnyei
  4. C # tömb vs lista
  5. Útmutató a tömbfunkciókhoz C
  6. Többdimenziós tömb Pythonban
  7. PHP tömb funkciók | A PHP tömbfunkcióinak típusai