hallo an alle. ich hab vor kurzem mit der C-Programmierung angefangen, und habe ein blödes problem.
ich habe zunächst mal ein programm geschrieben, mit dem ich max. 10 zahlen sortieren kann:
#include <stdio.h>
void main()
{
int i_count, i_index, i_j, i_help, i_value[10];
// eingabe der anzahl der zu sortierenden zahlen:
do
{
printf("How many numbers do you want to sort? (MAX 10) ");
scanf("%i",&i_count);
}
while(i_count>10);
// eingabe der zahlen:
for(i_j=0;i_j<i_count;i_j++)
{
printf("Number %i: ",i_j+1);
scanf("%i",&i_value[i_j]);
}
// start der rechnung und sortierung:
for(i_index=1;i_index<i_count;i_index++)
{
for(i_j=i_count-1;i_j>=i_index;i_j--)
{
if(i_value[i_j]<i_value[i_j-1])
{
i_help=i_value[i_j];
i_value[i_j]=i_value[i_j-1];
i_value[i_j-1]=i_help;
}
else
{
}
}
}
// ausgabe der richtigen reihenfolge:
printf("\n");
for(i_j=0;i_j<i_count;i_j++)
{
printf("\n%i",i_value[i_j]);
}
printf("\n\nPress ENTER to exit!");
getchar();
getchar();
}
das programm läuft eigentlich super, doch nun wollte ich es umschreiben um damit buchstaben zu sortieren.
das sieht bei mir dann so aus:
#include <stdio.h>
void main()
{
int i_count, i_index, i_j;
char c_help, c_letter[10];
// eingabe der anzahl der zu sortierenden zahlen:
do
{
printf("How many numbers do you want to sort? (MAX 10) ");
scanf("%i",&i_count);
}
while(i_count>10);
// eingabe der zahlen:
for(i_j=0;i_j<i_count;i_j++)
{
printf("Letter %i: ",i_j+1);
scanf("%c",&c_letter[i_j]);
}
// start der rechnung und sortierung:
for(i_index=1;i_index<i_count;i_index++)
{
for(i_j=i_count-1;i_j>=i_index;i_j--)
{
if(c_letter[i_j]<c_letter[i_j-1])
{
c_help=c_letter[i_j];
c_letter[i_j]=c_letter[i_j-1];
c_letter[i_j-1]=c_help;
}
else
{
}
}
}
// ausgabe der richtigen reihenfolge:
printf("\n");
for(i_j=0;i_j<i_count;i_j++)
{
printf("\n%c",c_letter[i_j]);
}
printf("\n\nPress ENTER to exit!");
getchar();
getchar();
}
doch die buchstabenvariante klappt einfach nicht.
ich finde einfach den fehler nicht, und im bug report (compile log) steht auch kein hinweis.
hoffentlich kann mir hier einer helfen...
danke im vorraus