Программа не вычисляет и не выводит результат - C (СИ)
Формулировка задачи:
есть, почти работающий код, не работает последняя часть после второго комментария. 2)Может есть какие то советы по оптимизации кода , 3)Вопрос , можно ли избавится от такого большого количества переменных(счетчиков), или для каждого цикла долженбыть разный
#include <stdio.h>
#include <stdlib.h>
#include <locale.h>
#define F 5
#define S 5
#define C 10
int arr[F];
int arr2[S];
int mas3[C];
int c;
int k;
int j,i;
int p,q=0;
int r;
int i=0;
int min;
int main()
{
setlocale (LC_ALL,"russian");
puts ("Введите элементы массива: F ");
for(i=0; i<F; i++)
scanf ("%d", &arr[i]);
puts ("Введите элементы массива: S ");
for(i=0; i<S; i++)
scanf ("%d", &arr2[i]);
for ( i = 0; i < F-1; i ++ )
for ( j = F-2; j >= i; j -- )
if ( arr[j] < arr[j+1] )
{
c = arr[j]; arr[j] = arr[j+1];
arr[j+1] = c;
}
printf("\n Отсортированный массив F:\n");
for ( i = 0; i < F; i ++ )
printf("%d ", arr[i]);
for ( i = 0; i < S-1; i ++ )
for ( j = S-2; j >= i; j -- )
if ( arr2[j] < arr2[j+1] )
{
k = arr2[j]; arr2[j] = arr2[j+1];
arr2[j+1] = k;
}
printf("\n Отсортированный массив S:\n");
for ( i = 0; i < S; i ++ )
printf("%d ", arr2[i]);
////тааьь
for( i=0;i<5;i++)
{
mas3[i]=arr[i];
mas3[i+5]=arr2[i];
}
for ( i = 0; i < C-1; i ++ )
for ( j = C-2; j >= i; j -- )
if ( mas3[j] > mas3[j+1] )
{
q = mas3[j]; mas3[j] = mas3[j+1];
mas3[j+1] = q;
}
printf ("\n Отсортированный по возрастанию массив С:\n ");
for(i=0;i<10;i++)
printf("%d\t",mas3[i]);
//после этого программа не работает , не находит минимальное значение и не выводит
min = arr[0];
for (r = 0; r < F; r++)
{
if (arr[min] > arr[r])
min = r;
}
printf("%d\t",min);
return 0;
}Решение задачи: «Программа не вычисляет и не выводит результат»
textual
Листинг программы
sum=0;
for (t=0;t<S;t++){
sum+=arr2[S];}
sr=sum/S;
printf ("Среднее значение равно %f ",sr);
Объяснение кода листинга программы
- Объявляется переменная
sumи инициализируется значением 0. - В цикле
forперебираются элементы массиваarr2от 0 доS. - На каждой итерации цикла к переменной
sumприбавляется значение элемента массиваarr2. - После завершения цикла, переменная
sumсодержит сумму всех элементов массиваarr2. - Переменная
Sделится на переменнуюsum, чтобы получить среднее значение. - Результат вычисления среднего значения сохраняется в переменной
sr. - Выводится сообщение с помощью функции
printf, в котором указывается среднее значение, используя переменнуюsr.