Осы оқулықта жиым элементтерінің сомасын білудің келесі екі әдісін білеміз:
1) Рекурсия қолдану
2) Көрсеткіштерді пайдалану
1-әдіс: Регурсияны қолданатын жиым элементтерінің жиынтығы: Функцияның өзі қоңырау шалу
Бұл бағдарлама пайдаланушы анықтаған sum_array_elements () функциясын шақырады және функция рекурсивті деп аталады. Міне, біз алаптың элементтерін қатыстырдық, бірақ егер сіз пайдаланушыға мәндерді енгізуді қаласаңыз, сіз осы бөлімнің келесі бөлімінде (2-әдіс: Көрсеткіштерді пайдалану) сияқты, цикл және сканерлеу функциясын қолдана аласыз.
#include <stdio.h> int main () {int array [] = {1,2,3,4,5,6,7};int sum;sum = sum_array_elements (массив, 6);printf («\ nМарий элементтерінің санын:% d», сома);0 қайтару; } int sum_array_elements (int арр [], int n) {егер (n <0) { // негізгі жағдай: 0 қайтару;} else { // Рекурсия: өздігінен қоңырау шалу arr [n] + sum_array_elements қайтару (arr, n-1); } }
Шығару:
Массив элементтерінің жиынтығы: 28
2-әдіс: Көрсеткіштерді пайдаланып массив элементтерінің жиынтығы
Мұнда біз көрсеткішті массивтің негізгі мекен-жайына орнатамыз, содан кейін барлық жиым элементтерінің мәндерін алу және жинақтау үшін көрсеткішті көбейтіп, * операторды пайдаланамыз.
#include <stdio.h> int main () {int array [5];int i, sum = 0;int * ptr;printf («\ nАрияның элементтерін енгізіңіз (5 бүтін мәндер):»);(i = 0; i <5; i ++) / * массасы негізгі мекенжайға тең * array = массив [0] * /ptr = array;(i = 0; i <5; i ++) { // * ptr адресіндегі мәнге сілтеме жасайды сом = сум + * ptr; ptr ++;}printf («\ nМенің сомасы:% d», сома); }
Шығару:
Жиым элементтерін енгізіңіз (5 бүтін мәндер): 1 2 3 4 5 Сомасы: 15
Пікір қалдыру Жауапты