I'm not sure what I'm doing wrong with this program...first and foremost it gets locked in an infinite loop whenever the function "swap()" is called. I'm used to java so its possible im overlooking something simple 🤮
Code
#include <stdio.h>
#include <stdlib.h>
int swap(int arg0, int arg1)
{
int temp;
temp = arg0;
arg0=arg1;
arg1=temp;
return 0;
}
int main(int argc, const char * argv[]) {
int i;
int arr[i];
int newi;
printf("input number of elements in list: \n");
scanf("%i", &i);
int origi = i;
for (int j=0; j < i; j++)
{
printf("input element: \n");
scanf("%i", &arr[j]);
}
while(i!=0)
{
newi = 0;
for (int x=0; x<i; x++)
{
if (arr[x-1] > arr[x])
{
swap(arr[x],arr[x-1]);
newi = i;
}
}
i = newi;
}
printf("sorted list is:\n");
for (int k = 0; k < origi; k++)
printf("%i \n", arr[k]);
return 0;
}

