Maison > développement back-end > C++ > Comment calculer la somme des éléments d'un tableau en C à l'aide de pointeurs ?

Comment calculer la somme des éléments d'un tableau en C à l'aide de pointeurs ?

王林
Libérer: 2023-09-10 20:45:03
avant
1427 Les gens l'ont consulté

Un pointeur est une variable qui stocke l'adresse d'autres variables.

Considérez l'instruction suivante -

int qty = 179;
Copier après la connexion

Comment calculer la somme des éléments dun tableau en C à laide de pointeurs ?

Déclarer un pointeur

La syntaxe pour déclarer un pointeur est la suivante -

int *p;
Copier après la connexion

Ici, 'p' est une variable de pointeur qui contient l'adresse d'une autre variable.

Initialisation des pointeurs

L'opérateur d'adresse (&) est utilisé pour initialiser les variables de pointeur.

Par exemple,

int qty = 175;
int *p;
p= &qty;
Copier après la connexion

Tableau de pointeurs

C'est une collection d'adresses (ou) une collection de pointeurs.

Déclaration

Ce qui suit est la déclaration d'un tableau de pointeurs - < /p>

datatype *pointername [size];
Copier après la connexion

Par exemple,

int *p[5];
Copier après la connexion

Il représente un tableau de pointeurs pouvant contenir cinq adresses d'éléments entiers.

Initialisation

'&' est utilisé pour initialisation

Par exemple,

int a[3] = {10,20,30};
int *p[3], i;
for (i=0; i<3; i++) (or) for (i=0; i<3,i++)
p[i] = &a[i];
p[i] = a+i;
Copier après la connexion

Accessing

L'opérateur d'indirection (*) est utilisé pour l'accès.

Par exemple,

for (i=0, i<3; i++)
printf ("%d", *p[i]);
Copier après la connexion

Program

Ce qui suit est un programme C qui utilise des pointeurs pour calculer la somme des éléments du tableau -

Démonstration en direct

//sum of array elements using pointers
#include <stdio.h>
#include <malloc.h>
void main(){
   int i, n, sum = 0;
   int *ptr;
   printf("Enter size of array : </p><p>");
   scanf("%d", &n);
   ptr = (int *) malloc(n * sizeof(int));
   printf("Enter elements in the List </p><p>");
   for (i = 0; i < n; i++){
      scanf("%d", ptr + i);
   }
   //calculate sum of elements
   for (i = 0; i < n; i++){
      sum = sum + *(ptr + i);
   }
   printf("Sum of all elements in an array is = %d</p><p>", sum);
   return 0;
}
Copier après la connexion

Sortie

Quand Lors de l'exécution de la procédure ci-dessus, les résultats suivants sont produits -

Enter size of array:
5
Enter elements in the List
12
13
14
15
16
Sum of all elements in an array is = 70
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:tutorialspoint.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal