如何在C語言中使用指標計算陣列元素的和?
考慮以下語句:
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]);
使用指標計算陣列元素和的C程式
以下是使用指標計算陣列元素和的C程式:
//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 :
");
scanf("%d", &n);
ptr = (int *) malloc(n * sizeof(int));
printf("Enter elements in the List
");
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
", 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
廣告
資料結構
網路
關係資料庫管理系統 (RDBMS)
作業系統
Java
iOS
HTML
CSS
Android
Python
C語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP