Muszę napisać program który dla zadanej liczby naturalnej n podaje z ilu różnych cyfr jest ulożony jej zapis oraz wypisuje te cyfry na ekranie w kolejności wzrastającej.
Napisałem coś takiego:
#include<stdio.h>
#include<string.h>
int main()
{
system("cls");
char liczba[8];
printf("Podaj liczbe naturalna:");
scanf("%s",&liczba);
printf("\n");
int i=0;
while(liczba[i]!='\0')
{
if(liczba[i]=='0')
{
printf("0 ");
i++;
printf("\ni:=%d\n",i);
}
else
if(liczba[i]=='1')
{
printf("1 ");
i++;
printf("\ni:=%d\n",i);
}
else
if(liczba[i]=='2')
{
printf("2 ");
i++;
printf("\ni:=%d\n",i);
}
else
if(liczba[i]=='3')
{
printf("3 ");
i++;
printf("\ni:=%d\n",i);
}
else
if(liczba[i]=='4')
{
printf("4 ");
i++;
printf("\ni:=%d\n",i);
}
else
if(liczba[i]=='5')
{
printf("5 ");
i++;
printf("\ni:=%d\n",i);
}
else
if(liczba[i]=='6')
{
printf("6 ");
i++;
printf("\ni:=%d\n",i);
}
else
if(liczba[i]=='7')
{
printf("7 ");
i++;
printf("\ni:=%d\n",i);
}
else
if(liczba[i]=='8')
{
printf("8 ");
i++;
printf("\ni:=%d\n",i);
}
else
if(liczba[i]=='9')
{
printf("9 ");
i++;
printf("\ni:=%d\n",i);
}
}
system("pause");
return 0;
}
Proszę o pomoc odnośnie w/w programu.