当前位置:   article > 正文

C语言指针—实数取整_实数取整。 已知一个字符串表示一个实数(不超过100位),请输出其整数部分。输出不

实数取整。 已知一个字符串表示一个实数(不超过100位),请输出其整数部分。输出不
  • 已知一个字符串表示一个实数(不超过100位),请输出其整数部分,且输出不含前导0,但如果该整数为0,则输出0

举例:0012350.1000 变为 1235

在这里插入图片描述
这里需要注意下判断是否前面全是0,需要保留一个0

代码如下:

// 已知一个字符串表示一个实数(不超过100位),请输出其整数部分,且输出不含前导0,但如果该整数为0,则输出0
#include <stdio.h>
#include <string.h>

#define N 110

int main()
{
char str[N], *p=str, *q;
scanf("%s",str);

//循环结束后p指向第一个非0字符
while(*p == '0')
 p++;

 //如果整数部分全部为0,则保留一个0 
 if(*p=='\0'|| *p=='.')
 p--;

//如果字符串p含有小数点和小数部分,则删除小数点和小数部分
q=strchr(p,'.'); //找到小数点
if(q!=NULL)  //若存在小数点
 *q='\0'; //将小数点置为'\0'
 
 puts(p); 
 return 0;


}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29

在这里插入图片描述

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小小林熬夜学编程/article/detail/143849
推荐阅读
相关标签
  

闽ICP备14008679号