Замена отрицательных чисел на индексы

Начеркал я программку, которая заменяет отрицательные элементы массива на их индексы.)

 

 

#include "stdlib.h"

#include "malloc.h"

#include "stdio.h"

int main()

{

int *a;

int i, n,ch,nch;

printf("Enter n: "); /*задаём массив*/

scanf("%d",&n);

a=(int*) malloc(n*sizeof(int));

for (i = 1;i < n; i++) /*рандомим массив*/

{a[i]= -10 + rand() % 20;

printf("%d  ",a[i]);

}

printf("\n");

for (i = 1; i < n ; i++)

{ ch = i;

   if (a[i] < 0)

   /*заменяем отриц элементы массива их индексами*/

  {

   for (nch=n+1;nch <= ch ;i=i-1)

   a[nch] =a[nch-1];

   a[ch]=ch;}

  }

printf("\n");

for (i=1;i<n;i++)

printf("%d  ",a[i]);

free(a);

return 0;

}

1 comment on this post.
  1. Olivia:

    Good blogging!

Leave a comment