En array är en datastruktur som lagrar en samling objekt på en enda plats i minnet. Det är viktigt eftersom det möjliggör effektiv lagring och hämtning av data, vilket gör det till en gemensam byggsten för många algoritmer och datastrukturer. Matriser används i en mängd olika applikationer inklusive:
designmönster i java
Vetenskapliga simuleringar och numerisk analys : arrayer används för att lagra stora mängder data som genereras av simuleringar och används för att analysera och visualisera resultaten.
Spelutveckling : arrayer används för att lagra spelelement som karaktärer, objekt och nivålayouter.
Databashanteringssystem: arrayer används för att lagra data i tabellformat och används för att hämta data baserat på specifika förhållanden.
Grafik och bildbehandling : arrayer används för att representera bilder som ett 2D-rutnät av pixlar och används för att tillämpa bildbehandlingsalgoritmer.
Kompilatorer och tolkar : arrayer används för att lagra symboltabeller och mellankod.
Operativsystem : arrayer används för att lagra systemdata som process- och minneshanteringstabeller.
Artificiell intelligens och maskininlärning : arrayer används för att lagra stora mängder träningsdata som används för att träna modeller och göra förutsägelser.
Sammantaget är arrayer en grundläggande datastruktur som används allmänt inom datavetenskap och mjukvaruteknik. De tillhandahåller ett effektivt sätt att lagra och komma åt data, vilket gör dem viktiga för många algoritmer och applikationer.
C-kod
#include int main() { int i; int myArray[1000]; // Declare an array of size 1000 // Initialize array with values 0 to 999 for (i = 0; i <1000; 10 i++) { myarray[i]="i;" } print out the first elements of array for (i="0;" i < 10; printf('myarray[%d]="%d '," i, myarray[i]); return 0; pre> <p> <strong>Output</strong> </p> <pre> myArray[0] = 0 myArray[1] = 1 myArray[2] = 2 myArray[3] = 3 myArray[4] = 4 myArray[5] = 5 myArray[6] = 6 myArray[7] = 7 myArray[8] = 8 myArray[9] = 9 </pre> <p> <strong>Explanation:</strong> </p> <p>The above code is a simple C program that demonstrates how to create and initialize an array in C. The program starts by including the stdio.h header file, which contains the declaration for the printf function used later in the program. The main function starts by declaring two variables: i and myArray. The i variable is used as a counter in the for loops, while the myArray variable is the array itself. The array is declared with a size of 1000, which means it can store up to 1000 integers.</p> <p>The first for loop, using the variable i starts at 0 and runs until i is less than 1000. In each iteration of the loop, the value of i is assigned to the corresponding element of the array. This initializes the array with the values 0 to 999.</p> <p> <strong>Add Element in Array in C</strong> </p> <p>In C, there are several ways to add an element to an array. Here are a few examples:</p> <p> <strong>Using a for loop:</strong> You can use a for loop to iterate through the array and add the new element to the next available position in the array. For example, you can use a variable to keep track of the current size of the array and add the new element to the next position after the last occupied position.</p> <p> <strong>C Code</strong> </p> <pre> #include #include int main() { int size = 10; int myArray[size]; int newElement = 5; myArray[size] = newElement; size++; for(int i=0;i<size;i++) printf('%d ',myarray[i]); return 0; } < pre> <p> <strong>Output</strong> </p> <pre> 5 0 0 0 0 0 0 0 0 0 </pre> <p> <strong>Using the Memcpy function</strong> : The memcpy function can be used to copy a block of memory, including an array. You can use this function to create a new array that is one element larger than the original array and copy the elements from the original array to the new array, then add the new element to the last position of the new array.</p> <p> <strong>C Code</strong> </p> <pre> #include #include int main() { int size = 10; int myArray[size]; int newArray[size+1]; int newElement = 5; memcpy(newArray, myArray, size * sizeof(int)); newArray[size] = newElement; for(int i=0;i<size+1;i++) printf('%d ',newarray[i]); return 0; } < pre> <p> <strong>Output</strong> </p> <pre> 0 0 0 0 0 0 0 0 0 0 5 </pre> <hr></size+1;i++)></pre></size;i++)></pre></1000;>
Förklaring:
Ovanstående kod är ett enkelt C-program som visar hur man skapar och initierar en array i C. Programmet börjar med att inkludera rubrikfilen stdio.h, som innehåller deklarationen för printf-funktionen som används senare i programmet. Huvudfunktionen börjar med att deklarera två variabler: i och myArray. Variabeln i används som räknare i for-looparna, medan myArray-variabeln är själva arrayen. Matrisen deklareras med en storlek på 1000, vilket innebär att den kan lagra upp till 1000 heltal.
Den första för loop, med variabeln i, börjar vid 0 och körs tills i är mindre än 1000. I varje iteration av loopen tilldelas värdet av i motsvarande element i matrisen. Detta initierar arrayen med värdena 0 till 999.
Lägg till element i Array i C
I C finns det flera sätt att lägga till ett element i en array. Här är några exempel:
Använda en for-loop: Du kan använda en for-loop för att iterera genom arrayen och lägga till det nya elementet till nästa tillgängliga position i arrayen. Du kan till exempel använda en variabel för att hålla reda på den aktuella storleken på arrayen och lägga till det nya elementet till nästa position efter den senast upptagna positionen.
C-kod
#include #include int main() { int size = 10; int myArray[size]; int newElement = 5; myArray[size] = newElement; size++; for(int i=0;i<size;i++) printf(\'%d \',myarray[i]); return 0; } < pre> <p> <strong>Output</strong> </p> <pre> 5 0 0 0 0 0 0 0 0 0 </pre> <p> <strong>Using the Memcpy function</strong> : The memcpy function can be used to copy a block of memory, including an array. You can use this function to create a new array that is one element larger than the original array and copy the elements from the original array to the new array, then add the new element to the last position of the new array.</p> <p> <strong>C Code</strong> </p> <pre> #include #include int main() { int size = 10; int myArray[size]; int newArray[size+1]; int newElement = 5; memcpy(newArray, myArray, size * sizeof(int)); newArray[size] = newElement; for(int i=0;i<size+1;i++) printf(\'%d \',newarray[i]); return 0; } < pre> <p> <strong>Output</strong> </p> <pre> 0 0 0 0 0 0 0 0 0 0 5 </pre> <hr></size+1;i++)></pre></size;i++)>
Använder Memcpy-funktionen : Funktionen memcpy kan användas för att kopiera ett minnesblock, inklusive en array. Du kan använda den här funktionen för att skapa en ny array som är ett element större än den ursprungliga arrayen och kopiera elementen från den ursprungliga arrayen till den nya arrayen och sedan lägga till det nya elementet till den sista positionen i den nya arrayen.
C-kod
#include #include int main() { int size = 10; int myArray[size]; int newArray[size+1]; int newElement = 5; memcpy(newArray, myArray, size * sizeof(int)); newArray[size] = newElement; for(int i=0;i<size+1;i++) printf(\'%d \',newarray[i]); return 0; } < pre> <p> <strong>Output</strong> </p> <pre> 0 0 0 0 0 0 0 0 0 0 5 </pre> <hr></size+1;i++)>
1000;>