If the assignment needs you to demonstrate the mathematics you can use something like this:
char A[10];
int f1=0;
int dot_index=0;
cout << "Enter a floating point number:" << endl;
cin>>A;
for(int i=0; A[i]!='.'; i++)
{
f1= ( f1*10 ) + ( A[i]-48 );
dot_index=i+1; //we will stop 1 char before '.'
}
float f2=0;
int count=1;
for(int i=dot_index+1;A[i]!='\0';i++)
{
float temp1 = static_cast<float>(A[i]-48);
float temp2 = pow(10,count);
f2+= temp1/temp2;
count++;
}
float f = f1 + f2;
cout<< " float : " << f1 << "+" << f2 << " = " << f << endl;
printf("\n float %.10f",f);
However I suspect there will be issues with the precision of some of the floating point calculations.