fork download
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <time.h>
  4.  
  5.  
  6.  
  7. void FillArray(int*,int);
  8. void PrintArray(int*,int);
  9. void CountSum(int*,int,int*,int*);
  10.  
  11.  
  12. int main ()
  13. {
  14. int n=7;
  15. printf ("Enter number elements in massive\n");
  16. scanf("%d",&n);
  17. //Инициализация массив.
  18. int *arr;
  19. arr = (int*) (malloc(n*sizeof(int)));
  20. if (!arr) // условие логического отрицания
  21. { // выход за пределы памяти
  22. printf("Out of memory. Press any key: ");
  23. return 1;
  24. }
  25. FillArray(&arr[0],n);
  26. //Вывод массива°
  27. PrintArray(&arr[0],n);
  28. int i=0;
  29. int sum1 = 0; //сумма четных элементов
  30. int sum2 = 0;
  31. int max = 0;
  32. //Задание
  33. CountSum(&arr[0],n, &sum1, &sum2);
  34. printf ("\nsumma chentnih elementov = %d \nsumma elementov on 3 = %d ", sum1, sum2);
  35. return 0;
  36. }
  37.  
  38.  
  39. void FillArray(int *arr,int n)
  40. {
  41. //Использование системного времени
  42. srand(time(NULL));
  43. //Заполнение массива случайными числами
  44. int i=0;
  45. for(i = 0; i < n; i++)
  46. arr[i] = rand() %1000 + 1;
  47. }
  48.  
  49.  
  50. void PrintArray(int *arr,int n)
  51. {
  52. int i=0;
  53. printf("\nThe initial array of [%d]:\n", n);
  54. for(i = 0; i < n; i++)
  55. printf("%3d ", arr[i]);
  56. }
  57.  
  58.  
  59. void CountSum(int *arr,int n, int *sum1,int *sum2)
  60. {
  61. int i;
  62. int max = arr[0];
  63. for(i = 0; i < n; i++)
  64. if (arr[i] > max)
  65. *sum1 = arr[i];
  66. }
Success #stdin #stdout 0s 9424KB
stdin
Standard input is empty
stdout
Enter number elements in massive

The initial array of [7]:
391 929  89 511 563 400  53 
summa chentnih elementov = 400 
summa elementov on 3 = 0