求解为什么输入1001的时候会自动退出,内容如下
#include<stdio.h>#include<math.h>
int main()
{
char a[999];
int i,j,k,m;
float b=0;
printf("shu ru er jin zhi shu \n");
gets(a);
for(i=0;i<999;i++)
{
if(a[i]=='.')k=i-1;
if(a[i]=='\0')
{
m=i-1;
break;
}
}
if(a[k+1]=='.')
{
for(i=k;i>=0;i--)
b=b+(a[i]-48)*pow(2,k-i);
for(i=k+2;i<=m;i++)
b=b+(a[i]-48)*pow(2,-(i-k-1));
}
else
{
for(i=m;i>=0;i--)
b=b+(a[i]-48)*pow(2,m-i);
}
printf("%f\n",b);
return 0;
}