sorting a list of integers in ascending order - C -
this program take input numbers user , sorts them in ascending order.
when user hits 'enter' without entering integer, program stops taking numbers , sorts loop.
my program doesnt stop taking numbers, stuck in infinite loop of taking numbers. why that?
#include <stdio.h> #include "genlib.h" sortintegerarray() { int i, k, n, array[200]; (i = 0; < 200; ++i) { (k = i+1; k < 200; ++k) { if (array[i] > array[k]) { n = array[k]; array[i] = array[k]; array[k] = n; } } } } main() { int i, k, n, array[200], number; = 0; n = 0; printf("enter numbers\n"); number = getinteger(); (i = 0; < 200; ++i) { if (number == "") { break; } scanf("%d", &array[i]); } printf("the input array is: %d", array[200]); sortintegerarray(); printf("the sorted array is: %d", array[200]); }
try code
char buf[32]; fgets(buf, sizeof(buf), stdin); if (sscanf(buf, "%d", &array[i]) != 1) break;
Comments
Post a Comment