Răspuns:
#include <iostream>
using namespace std;
int main()
{
int n,save[20],i=1;
cout<<"n=";cin>>n;
//mutarea in vector a cifrelor numarului
while(n)
{
save[i]=n%10;
i++;
n/=10;
}
int lungime=i;
//parcurgerea in sens invers a vectorului pt ca
//ultima cifra a numarului tau e prima in vector
for(i=lungime-1;i>0;i--)
if(save[i]==5)
save[i]=1;
//construirea noului numar
n=0;
for(i=lungime-1;i>0;i--)
n=n*10+save[i];
cout<<n;
}
Explicație: Am folosit un vector in care sa stochez cifrele numarului ca sa pot lucra mai usor cu ele.