Программа одномерного масива -> указатели - C (СИ)
Формулировка задачи:
Добрый день, подскажите пожалуйста, как будет выглядеть данная программа с указателями? Спасибо
Листинг программы
- #include <stdio.h>
- #include <stdlib.h>
- #include <locale.h>
- int main()
- {
- setlocale(LC_ALL,".1251");
- int mass[10];
- int i, j, max, n;
- max=0;
- j=9;
- for(i=0;i<10;i++)
- {
- printf("\n ВВедите масив : [%d] ", i+1);
- scanf("%d", &mass[i]);
- }
- for(i=0;i<5;i++)
- {
- n=mass[i]+mass[j];
- printf("\n Сума (%d) елемента i (%d) = %d ", i+1,j+1,n);
- if(n>max)
- {
- max=n;
- }
- j--;
- }
- printf("\n");
- j=9;
- for(i=0; i<5; i++)
- {
- n=mass[i]+mass[j];
- if(max==n)
- {
- printf("\n Сумма елемента %d i елемента %d найбольшая = %d",i+1, j+1, n);
- }
- j--;
- }
- printf("\n");
- return 0;
- }
Решение задачи: «Программа одномерного масива -> указатели»
textual
Листинг программы
- #include <stdio.h>
- #include <stdlib.h>
- #include <locale.h>
- int main()
- {
- setlocale(LC_ALL,".1251");
- int *mass,*p;
- int i, j, max, n;
- mass=(int*)malloc(10*sizeof(int));
- max=0;
- j=9;
- i=0;
- for(p=mass;p<mass+10;p++)
- {
- printf("\n ВВедите масив : [%d] ", i+1);
- scanf("%d", p);
- i++;
- }
- i=0;
- for(p=mass;p<mass+5;p++)
- {
- n=(*p)+(*(mass+j));
- printf("\n Сума (%d) елемента i (%d) = %d ", i+1,j+1,n);
- if(n>max)
- {
- max=n;
- }
- j--;
- i++;
- }
- printf("\n");
- j=9;i=0;
- for(p=mass;p<mass+5;p++)
- {
- n=(*p)+(*(mass+j));
- if(max==n)
- {
- printf("\n Сумма елемента %d i елемента %d найбольшая = %d",i+1, j+1, n);
- }
- j--;i++;
- }
- printf("\n");
- free(mass);
- return 0;
- }
Объяснение кода листинга программы
В этом коде создается одномерный массив из 10 элементов, на которые с помощью функции scanf() вводятся числа. Затем, в цикле суммируются элементы массива, начиная с первого и до предпоследнего элемента, и проверяется, является ли полученная сумма максимальной. Если да, то выводится сообщение, содержащее индексы элементов, сумма которых является максимальной. Затем, выводится сообщение, содержащее индексы элементов, сумма которых является максимальной. В конце программы используется функция free() для освобождения памяти, выделенной под массив.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д