Ошибка компиляции The variable 'max' is being used without being initialized - C (СИ)
Формулировка задачи:
ребят, построение проходит успешно, а после ввода элементов массива выдает сообщение
Run-Time Check Failure #3 - The variable 'max' is being used without being initialized.
помогите найти ошибку пожалуйста
#include<stdio.h> #define N 20 void main() { int X [N],i,max,min,sr,k=0; printf("vvedite 20 elemnov massiva:"); for(i=0;i<20;i++) { printf("%d-ii element-->",i); scanf("%d",&X[i]); } max==X[0]; min==X[0]; for(i=1;i<20;i++) { if (X[i]>max) max==X[i]; else if (X[i]<min) min==X[i]; } sr==((max+min)/2); for(i=0;i<20;i++) { if ((X[i]=max)||(X[i]=min)) k==k+1; { if (k>1) X[i]==sr; } } for(i=0;i<20;i++) { printf("elementy otredaktorovannogo massiva:\n",X[0],X[1],X[2],X[3],X[4]); printf("\n",X[5],X[6],X[7],X[8],X[9]); printf("\n",X[10],X[11],X[12],X[13],X[14]); printf("\n",X[15],X[16],X[17],X[18],X[19]); } }
Решение задачи: «Ошибка компиляции The variable 'max' is being used without being initialized»
textual
Листинг программы
#include <stdio.h> #include <conio.h> #define N 20 void main() { int X[N],i,maxv,minv,sr,k; printf("vvedite 20 elemnov massiva\n"); for(i = 0;i < 20; i++) { printf("%d-ii element-->",i); scanf("%d",&X[i]); if(i == 0) { maxv = X[0]; minv = X[0]; } else { if(maxv < X[i]) maxv = X[i]; if(X[i] < minv) minv = X[i]; } } sr = (maxv + minv)/2; printf("max = %d\n",maxv); printf("min = %d\n",minv); printf("sr = %d\n",sr); for(i = 0,k = 0; i < 20; i++) { if((X[i]=maxv)||(X[i]=minv)) if(1 < (k=k+1)) X[i] = sr; } printf("elementy otredaktorovannogo massiva:\n"); printf("%d %d %d %d %d\n",X[0],X[1],X[2],X[3],X[4]); printf("%d %d %d %d %d\n",X[5],X[6],X[7],X[8],X[9]); printf("%d %d %d %d %d\n",X[10],X[11],X[12],X[13],X[14]); printf("%d %d %d %d %d\n",X[15],X[16],X[17],X[18],X[19]); printf("Press any key to continue\n"); _getch(); }
Объяснение кода листинга программы
- Объявлены переменные: int X[N], i, maxv, minv, sr, k;
- Пользователю предлагается ввести 20 элементов массива:
printf(
vvedite 20 elemnov massiva\n
); - Далее идет цикл, который заполняет массив X и определяет значения maxv и minv:
for(i = 0;i < 20; i++)
{
printf(
%d-ii element-->
,i); scanf(%d
,&X[i]); if(i == 0) { maxv = X[0]; minv = X[0]; } else { if(maxv < X[i]) { maxv = X[i]; } if(X[i] < minv) { minv = X[i]; } } } - Вычисляется значение sr: sr = (maxv + minv)/2;
- Выводятся значения maxv, minv и sr:
printf(
max = %d\n
,maxv); printf(min = %d\n
,minv); printf(sr = %d\n
,sr); - Заполняется массив X с использованием значения sr: for(i = 0,k = 0; i < 20; i++) { if((X[i]=maxv)||(X[i]=minv)) if(1 < (k=k+1)) { X[i] = sr; } }
- Выводятся элементы откорректированного массива X:
printf(
elementy otredaktorovannogo massiva:\n
); printf(%d %d %d %d %d\n
,X[0],X[1],X[2],X[3],X[4]); printf(%d %d %d %d %d\n
,X[5],X[6],X[7],X[8],X[9]); printf(%d %d %d %d %d\n
,X[10],X[11],X[12],X[13],X[14]); printf(%d %d %d %d %d\n
,X[15],X[16],X[17],X[18],X[19]); - Запрос на нажатие любой клавиши для продолжения:
printf(
Press any key to continue\n
); - Код ожидает нажатия клавиши: _getch();
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д