+ 2
At first glance, size is not declared you.. And remove j--, and use i<size in last loop.. Save code and share link that helps to find errors easily.. Edit : Subin J //corrected code #include <stdio.h> void removal(int a[], int size) { int i, j, k; for(i=0; i<size; i++) { for(j=i+1; j<size; j++) { if(a[i] == a[j]) { for(k=j; k<size; k++) { a[k] = a[k + 1]; } size--; j--; } } } printf("\nArray elements after deleting duplicates : "); for (int i = 0; i < size; i++) { printf("%d ", a[i]); } } int main() { int a[50],size; printf("Enter size of array : "); scanf("%d", &size); printf("Enter elements: "); for(int i=0; i<size; i++) { scanf("%d", &a[i]); } for(int i=0; i<size; i++) { printf("%d\t", a[i]); } removal(a,size); return 0; }
26th Dec 2020, 12:31 PM
Jayakrishna 🇼🇳
+ 2
Use my added code.. I adjusted braces adding properly and made changes to print elements after removed dublicates at last.. Check those where I made changes... Edit : Subin J in your code, add brace { in line no.24. Remove brace } in line no.48. Add " size, i ", variables declaration in main function.. Then it works...
26th Dec 2020, 1:03 PM
Jayakrishna 🇼🇳