#include<stdio.h>
#include<math.h>
#include<string.h>
char* decimal(char* p)
{
/*将字符串p表示的实数的自小数点开始的小数部分存入一个字符串,并由函数返回,
若p为“123.456”,则返回的字符串为“.456”。若小数部分为0, 返回空指针NULL。*/
while (*p != '\0')
{
if (*p =='.')
{
break;
}
p++;
}
return p;
}
int main()
{
char num[100] = { 0 };
gets(num);
char* a;
char* b;
a = decimal(num);
b = &num[strlen(num) - 1];
if (*b != '0')
{
printf("%c", '0');
while (*a != '\0')
{
printf("%c", *a);
a++;
}
}
else
{
while (*b != '.')
{
if (*b!= '0')
{
b = b + 1;
break;
}
b--;
}
if (*b == '.')
{
printf("%s", "No decimal part");
}
else
{
printf("%c", '0');
while (a != b)
{
printf("%c", *a);
a++;
}
}
}
return 0;
}
ZZULIOJ1165: 实数的小数部分(指针专题)
最新推荐文章于 2023-04-04 11:53:58 发布