Код перестал работать, как только элементы массива перестали быть целыми - C (СИ)

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

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

#include <math.h.>
main()
{
int i,j,n,m;
float a[5],b[5],c[10],p;
printf("\n Vvedite razmer massiva 0<A<6: ");
do scanf("%d",&n);
    while (n<0 || n>5);
printf("\n Vvedite razmer massiva 0<B<6: ");
do scanf("%d",&m);
    while(m<0 || m>5);
printf("\n Vvedite elementi massiva A: ");
for (i=0;i<n;i++)
    scanf("%f",&a[i]);
printf("\n Vvedite elementi massiva B: ");
for (i=0;i<m;i++)
    scanf("%f",&b[i]);
for (i=0; i<(n+m); i++)
    if (i<n) c[i]=a[i];
        else c[i]=b[i-n];
printf("\n");
for (i=0;i<(n+m)+1;i++)
    {
    for (j=i+1;j<(n+m)+1;j++)
        if (c[j]>c[i])
        {
         p=c[i];
         c[i]=c[j];
         c[j]=p;
        }
    printf("%f", c[i]);
    }
system("pause");
}
Когда массивы были целыми всё работало нормально, думал просто поменяю int на float и всё будет работать, а не работает...

Решение задачи: «Код перестал работать, как только элементы массива перестали быть целыми»

textual
Листинг программы
for (i=0;i<(n+m)+1;i++)

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

  1. i - это счетчик цикла, который инициализируется нулем и увеличивается на единицу на каждой итерации цикла.
  2. (n+m)+1 - это выражение, которое используется для определения максимального значения i. Здесь n и m - это два числа, которые суммируются, и к этой сумме добавляется единица. Это означает, что цикл будет выполняться до тех пор, пока i меньше или равно (n+m)+1.
  3. В теле цикла ничего нет. Это означает, что код внутри цикла не выполняется.

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


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

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

9   голосов , оценка 4.111 из 5
Похожие ответы