Элементы первого массива возвести в степень второго - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Ребят, подскажите пожалуйста. Нужно элементы 1-го массива, возвести в степень 2-го массива. У меня программа выводит число -2147483648. Что не так?
Листинг программы
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <math.h>
  4. int main(int argc, char *argv[])
  5. {
  6. int a[10], c[10], i, m, n;
  7. double y[10];
  8. printf("Vvedite kol-vo elimentov massiva\n");
  9. scanf("%d",&n);
  10. printf("Vvedite a[i]\n");
  11. for(i = 1; i <= n; i++)
  12. {
  13. scanf("%d",&a[n]);
  14. }
  15. printf("Vvedite c[i]\n");
  16. for(i = 1; i <= n; i++)[
  17. {
  18. scanf("%d",&c[n]);
  19. }
  20. y[n]=pow(a[n], c[n]);
  21. printf("%d\n",y[n])
  22. system("PAUSE");
  23. return 0;
  24. }

Решение задачи: «Элементы первого массива возвести в степень второго»

textual
Листинг программы
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <math.h>
  4. int main(int argc, char *argv[])
  5. {
  6.  
  7. int  a[n], c[n];
  8. double y[n];
  9. int i;
  10.  for(i = 0; i <n; i++){printf("Vvedite a[%d]\n",i);scanf("%d",&a[i]);}
  11.    for(i = 0; i < n; i++) { printf("Vvedite c[%d]\n",i);  scanf("%d",&c[i]);}  
  12.     for(i=0;i<n;i++){y[i]=powl(a[i], c[i]);printf("%.11f\n",y[i]); }
  13. system("PAUSE");  
  14.   return 0;
  15. }

Объяснение кода листинга программы

  1. #include Включает в программу функции файла стандартного ввода/вывода, которые используются для отправки сообщений в консоль
  2. #include Включает в программу функции файла стандартного ввода/вывода, которые используются для работы с памятью
  3. #include Включает в программу функции файла математических операций, которые используются для выполнения математических операций в программе
  4. *int main(int argc, char argv[])** Функция main() является точкой входа в программу и запускается при запуске программы
  5. int a[n], c[n]; Объявляет две массивы a и c типа int с размером n
  6. double y[n]; Объявляет массив y типа double с размером n
  7. int i; Объявляет переменную i типа int для использования в циклах
  8. for(i = 0; i < n; i++){printf(Vvedite a[%d]\n,i);scanf(%d,&a[i]);} Этот цикл запрашивает у пользователя ввести значения для каждого элемента массива a и сохраняет их в соответствующих элементах массива
  9. for(i = 0; i < n; i++) { printf(Vvedite c[%d]\n,i); scanf(%d,&c[i]);} Этот цикл запрашивает у пользователя ввести значения для каждого элемента массива c и сохраняет их в соответствующих элементах массива
  10. for(i=0;i<n;i++){y[i]=powl(a[i], c[i]);printf(%.11f\n,y[i]); } Этот цикл вычисляет значение для каждого элемента массива y, возводя каждый элемент массива a в степень соответствующего элемента массива c, а затем выводит каждое значение в консоль
  11. system(PAUSE); Эта функция приостанавливает выполнение программы до тех пор, пока пользователь не нажмет клавишу Enter
  12. return 0; Обозначает успешный конец работы программы
  13. Ввод и вывод программы осуществляются через консоль
  14. Программа работает с массивами a и c, а также с массивом y
  15. Программа запрашивает у пользователя ввести значения для каждого элемента массива a и c
  16. Программа вычисляет значение для каждого элемента массива y, возводя каждый элемент массива a в степень соответствующего элемента массива c
  17. Программа выводит каждое значение в консоль
  18. Программа завершается, когда пользователь нажимает клавишу Enter
  19. Программа не использует библиотеку , поэтому строки не обрабатываются
  20. Программа не использует библиотеку , поэтому символы не преобразуются в верхний или нижний регистр, и пробелы не удаляются

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

6   голосов , оценка 4.667 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы