Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> सी प्रोग्रामिंग

सी भाषा में पॉइंटर्स का उपयोग करके सरणी तत्वों के योग की गणना कैसे करें?

पॉइंटर एक वेरिएबल है जो दूसरे वेरिएबल के एड्रेस को स्टोर करता है।

निम्नलिखित कथन पर विचार करें -

int qty = 179;

सी भाषा में पॉइंटर्स का उपयोग करके सरणी तत्वों के योग की गणना कैसे करें?

सूचक घोषित करना

पॉइंटर घोषित करने का सिंटैक्स इस प्रकार है -

int *p;

यहाँ, 'p' एक पॉइंटर वेरिएबल है जो अन्य वेरिएबल का पता रखता है।

सूचक का प्रारंभ

एड्रेस ऑपरेटर (&) का उपयोग पॉइंटर वेरिएबल को इनिशियलाइज़ करने के लिए किया जाता है।

उदाहरण के लिए,

int qty = 175;
int *p;
p= &qty;

पॉइंटर्स की सरणी

यह पतों का संग्रह (या) पॉइंटर्स का संग्रह है।

घोषणा

पॉइंटर्स की सरणी के लिए घोषणा निम्नलिखित है -

datatype *pointername [size];

उदाहरण के लिए,

int *p[5];

यह पॉइंटर्स की एक सरणी का प्रतिनिधित्व करता है जिसमें पांच पूर्णांक तत्व पते हो सकते हैं।

आरंभीकरण

'&' का इस्तेमाल इनिशियलाइज़ेशन के लिए किया जाता है

उदाहरण के लिए,

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;

एक्सेस करना

इनडायरेक्शन ऑपरेटर (*) का उपयोग एक्सेस करने के लिए किया जाता है।

उदाहरण के लिए,

for (i=0, i<3; i++)
printf ("%d", *p[i]);

कार्यक्रम

पॉइंटर्स का उपयोग करके सरणी तत्वों के योग की गणना करने के लिए सी प्रोग्राम निम्नलिखित है -

//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 : \n");
   scanf("%d", &n);
   ptr = (int *) malloc(n * sizeof(int));
   printf("Enter elements in the List \n");
   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\n", sum);
   return 0;
}

आउटपुट

जब उपरोक्त प्रोग्राम को निष्पादित किया जाता है, तो यह निम्नलिखित परिणाम उत्पन्न करता है -

Enter size of array:
5
Enter elements in the List
12
13
14
15
16
Sum of all elements in an array is = 70

  1. सी में पॉइंटर्स का उपयोग करके दो मैट्रिक्स कैसे गुणा करें?

    पॉइंटर एक वेरिएबल है जो दूसरे वेरिएबल के एड्रेस को स्टोर करता है। पॉइंटर्स की विशेषताएं सूचक स्मृति स्थान बचाता है। मेमोरी लोकेशन तक सीधी पहुंच के कारण पॉइंटर का निष्पादन समय तेज होता है। पॉइंटर्स की मदद से, मेमोरी को कुशलता से एक्सेस किया जाता है यानी मेमोरी आवंटित की जाती है और गतिशील रूप से डील

  1. सी प्रोग्रामिंग भाषा में पॉइंटर्स की सरणी की व्याख्या करें

    पॉइंटर एक वेरिएबल है जो दूसरे वेरिएबल के एड्रेस को स्टोर करता है। सुविधाएं सूचक स्मृति स्थान बचाता है। मेमोरी लोकेशन तक सीधी पहुंच के कारण पॉइंटर का निष्पादन समय तेज होता है। पॉइंटर्स की मदद से, मेमोरी को कुशलता से एक्सेस किया जाता है, यानी मेमोरी को गतिशील रूप से आवंटित और डील किया जाता है। पॉइंटर

  1. मैं नए का उपयोग करके C++ में 2d सरणी कैसे घोषित करूं?

    एक गतिशील 2D सरणी मूल रूप से सरणियों के लिए पॉइंटर्स की एक सरणी है। यहाँ एक 2D सरणी का आरेख है जिसका आयाम 3 x 4 है। एल्गोरिदम Begin    Declare dimension of the array.    Dynamic allocate 2D array a[][] using new.    Fill the array with the elements.    Print