All pastes #451512 Raw Edit

Unnamed

public text v1 · immutable
·published 2007-04-21 16:20 UTC
rendered paste body
#include <stdio.h>

#define MAX 32

getnumber(){
	char c;
	int sign=0;
	int sum=0;
	int pos=0;
	while ( ( c=getchar() ) != '\n' )
	{
		if( c >= '0' && c <='9' )
			sum = 10*sum + (c - '0');

		else
			if( pos==0 && c == '-' )
				sign = 1;
		pos++;	
	}

	if ( sign )
		return -1 * sum;

	return sum;
}

void
fillarray(int numbers[],int size)
{
	int i=0;
	for( i=0; i < size; i++)
	{
		printf("Bitte geben Sie die %d. Zahl ein: ",i+1);
		numbers[i]=getnumber();
	}
}

void
printarray(int numbers[], int size)
{
	int i=0;
	for( i=0; i<size;i++)
		printf(" %d ", numbers[i]);

	printf("\n");
} 

void
sortarray(int numbers[], int size)
{
	int j,k,temp;
	//bubblesort
	for ( j=size; j>0; j--)
		for( k=0; k<j-1;k++ )
		{
			if( numbers[k] > numbers[k+1] )
			{
				temp = numbers[k];
				numbers[k]=numbers[k+1];
				numbers[k+1]=temp;
			} 
		}
}

main(){
	int numbers[MAX];
	int size=0;

	while(! size ){
		printf("Wie viele Zahlen wollen Sie eingeben? ");
		size = getnumber();	
		if ( size > 32 )
			printf("Diese Anzahl ist zu Gross , muss < 32 sein!\n");
		if ( size < 0 || size > 32) 
			size=0;
		else
			printf("OK\n");
	}
	
	fillarray(numbers, size);
	sortarray(numbers, size);
	printarray(numbers,size);
	return 0;
}