Quelle est une rangée ?
|
Les rangées sont collection d'articles semblables (c.-à-d. ints, flotteurs, chars) dont la mémoire est assignée dans un bloc contigu de mémoire.
Les indicateurs et les rangées ont un rapport spécial. Pour mettre en référence des endroits de mémoire, les rangées emploient des indicateurs. Par conséquent, la plupart des temps, de la rangée et des références d'indicateur peuvent être employées l'un pour l'autre .
|
Déclaration des rangées
|
Des rangées doivent être déclarées avant qu'elles soient employées comme n'importe quelle autre variable. La forme générale de déclaration est :
|
type variable-name[SIZE];
|
|
Le type indiquent le type des éléments qui seront contenus dans la rangée, telle qu'interne, flottent ou se carbonisent et la taille indiquent le nombre maximum des éléments qui peuvent être stockés à l'intérieur de la rangée.
|
L'exemple suivant illustrent l'utilisation de la rangée :
|
|
Déclare la taille pour être une rangée contenant les 50 vrais éléments. Tous les indices inférieurs 0 49 sont tous valides. Dans C les éléments de rangée index ou indice inférieur commence par le numéro zéro. Ainsi la taille [0] se rapporte au premier élément de la rangée. (Pour cette raison, il est plus facile de penser à elle en tant que se rapporter à l'élément le numéro zéro, plutôt qu'en tant que se rapporter au premier élément). Les valeurs internes de déclaration [10] ; réserverait assez d'espace pour une rangée appelée les valeurs qui pourraient supporter à 10 nombres entiers. Se référer au-dessous de l'image donnée pour conceptualiser l'espace mémoire réservé.
|
valeurs [0] |
|
valeurs [1] |
|
valeurs [2] |
|
valeurs [3] |
|
valeurs [4] |
|
valeurs [5] |
|
valeurs [6] |
|
valeurs [7] |
|
valeurs [8] |
|
valeurs [9] |
|
|
Initialisation des rangées :
|
Nous pouvons initialiser les éléments dans une rangée comme les variables ordinaires quand elles sont déclarées. La forme générale d'initialisation outre des rangées est :
|
type array_name[size]={list of values};
|
|
Les valeurs dans le soin de liste ont séparé par des virgules, par exemple le rapport
|
|
L'initialisation des rangées dans c souffre deux inconvénients
- Il n'y a aucune manière commode d'initialiser seulement l'élément choisi.
- Il n'y a aucune méthode de raccourci pour initialiser le grand nombre de l'élément
|
Le programme suivant pour compter le non de nombres positifs et négatifs
|
/* Program to count the no of positive and negative numbers*/
#include< stdio.h >
void main( )
{
int a[50],n,count_neg=0,count_pos=0,I;
printf("Enter the size of the array\n");
scanf(%d,&n);
printf("Enter the elements of the array\n");
for I=0;I < n;I++)
scanf(%d,&a[I]);
for(I=0;I < n;I++)
{
if(a[I]< 0)
count_neg++;
else
count_pos++;
}
printf("There are %d negative numbers in the array\n",count_neg);
printf("There are %d positive numbers in the array\n",count_pos);
}
|
|
Rangées multi dimensionnelles :
|
Souvent il y a un besoin de stocker et manoeuvrer la structure de données bidimensionnelle telle que les matrices et les tables. Ici la rangée a deux indices inférieurs. Un indice inférieur dénote la rangée et l'autre la colonne. La déclaration de deux rangées de dimension est comme suit :
|
data_type array_name[row_size][column_size];
int m[10][20];
|
|
Le programme suivant illustrent des matrices de l'addition deux et stockent les résultats dans la 3ème matrice
|
/* example program to add two matrices & store the results in the 3rd matrix */
#include< stdio.h >
#include< conio.h >
void main()
{
int a[10][10],b[10][10],c[10][10],i,j,m,n,p,q;
clrscr();
printf("enter the order of the matrix\n");
scanf("%d%d",&p,&q);
if(m==p && n==q)
{
printf("matrix can be added\n");
printf("enter the elements of the matrix a");
for(i=0;i < m;i++)
for(j=0;j <n;j++)
scanf(%d,&a[i][j]);
printf("enter the elements of the matrix b");
for(i=0;i < p;i++)
for(j=0;j <q;j++)
scanf(%d,&b[i][j]);
printf("the sum of the matrix a and b is");
for(i=0;i <m;i++)
for(j=0;j <n;j++)
c[i][j]=a[i][j]+b[i][j];
for(i=0;i < m;i++)
{
for(j=0;j <n;j++)
printf(%d\t,&a[i][j]);
printf(\n);
}
}
|
|
|
|
Keywords:
Arrays in C,
arrays in c language,
char array in c,
arrays in c++,
array of strings in c,
two dimensional array in c,
character array in c,
multidimensional arrays in c,
arrays in c programming,
dynamic arrays in c,
string array in c,
2d array in c,
two dimensional arrays in c,
array length in c,
passing arrays in c,
array of pointers in c,
initialize array in c,
2d arrays in c,
string arrays in c,
array of structures in
|