Run-Time Check Failure #2 - Stack around the variable 'y' was corrupted - C (СИ)
Формулировка задачи:
Даны два строго упорядоченных по возрастанию массива X и Y из n элементов каждый. В массиве X найти все пары таких элементов X[k] и X[k+1], для которых не существует ни одного элемента из массива Y, удовлетворяющего соотношению: X[k]<Y[i]<X[k+1].Вычислить количество m таких пар элементов из x. Например:
X={1,3,4,7,9}
Y={0,2,6,10,11}
Искомые пары: (3,4),(7,9)
Такая же ошибка со стеком 'x'. Помогите исправить.
#include "stdafx.h"
#include <stdio.h>
void main()
{
//const int N=5;
int x[5]={1,3,4,7,9};
int y[5]={0,2,6,10,11};
int i,k,m;
i=0;
k=0;
m=0;
bool opt=false;
while(i < 4)
{
for(k=0;k < 4;k++)
{
while(opt==false)
{
if(!((x[k] < y[i])&&(x[k+1] > y[i])))
opt=false;
if(((x[k] < y[i])&&(x[k+1] > y[i])))
opt=true;
}
if(opt=false)
{
printf("%d,%d\n",x[k],x[k+1]);
m++;
}
i++;
}
}
printf("m= %d\n",m);
}Решение задачи: «Run-Time Check Failure #2 - Stack around the variable 'y' was corrupted»
textual
Листинг программы
while(opt==false)