Может кто-нибудь, пожалуйста, помогите мне? Мне нужно поместить цифры числа в вектор, найти наименьшую цифру среди них и распечатать их вместе с их положением в векторе.
int main()
{
int n,i=0,v[100],Min=9,Position;
scanf("%d",&n);
while(n!=0)
{
v[i]=n%10;
if(v[i]<Min)
{
Min=v[i];
Position=i;
}
i++;
n=n/10;
}
printf("%d, %d", Min, Position);
printf("\n");
}
вход: 1234
выход: 1, 3 <---- есть проблема, я могу найти минимальную цифру, но я не могу показать ее позицию. вместо 0 это 3, отсчитывается от обратного ввода: 2314
вывод: 1, 1 <- должно было быть 1,2 </p>
Редактировать: Спасибо "nicomp", теперь окончательный код выглядит следующим образом.
int main()
{
{
int n,m,i,v[100],Lenght=0,Min=9,Position;
scanf("%d",&n);
m=n;
while(m!=0)
{
m=m/10;
Lenght++;
}
i=(Lenght-1);
while(n!=0)
{
v[i]=n%10;
if(v[i]<Min)
{
Min=v[i];
Position=i;
}
i--;
n=n/10;
}
printf("%d, %d", Min, Position);
printf("\n");
}
}