c中,怎么判断用户输入的数据是小数?和判断小数的位数?

devilmoon_xp 2003-10-20 01:31:49
c中,怎么判断用户输入的数据是小数?和判断小数的位数?
...全文
1260 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
aqfox 2003-10-21
  • 打赏
  • 举报
回复
lg(x)
DESL 2003-10-20
  • 打赏
  • 举报
回复
有了...判断小数位数的方法有了..
你试试这个方法
while((m-(int)m)>0) //用原数-取整数 在这里判断如果大于零就表示有小数
{
n+=1;//计数器
m*=10; //扩大10倍减一小数位
}
在这里如果等于0时就表示没有小数了.这个方法应该可以求出小数位数...
DESL 2003-10-20
  • 打赏
  • 举报
回复
我有一个简单判断小数的方法
定义一个double c_a;
在定义一个变量c_b;
c_b=c_a;
在定义一个变量c_m;
c_m=c_a-(int)c_b;
如果大于零就是小数
判断位数我在想想....
bravegenius 2003-10-20
  • 打赏
  • 举报
回复
能否看看他的取整和它自身等不等来判断
Jupin 2003-10-20
  • 打赏
  • 举报
回复
_fstrchr, strchr <STRING.H>

Scans a string for the first occurence of a given character

Declaration

char *strchr(const char *s, int c);
char far * far _fstrchr(const char far *s, int c);

Remarks

strchr scans a string in the forward direction, looking for a specific character. It finds the first occurrence of the character c in the string s.

The null-terminator is considered to be part of the string; for example, strchr(strs, 0) returns a pointer to the terminating null character of the string strs.

Return Value

On success, returns a pointer to the first occurrence of the character c in string s.

On error (if c does not occur in s), returns null.

Portability

Routine DOS UNIX Windows ANSI C C++ only
near version yes yes yes yes
far version yes yes
//example
#include <string.h>
#include <stdio.h>

int main(void)
{
char string[15];
char *ptr, c = 'r';

strcpy(string, "This is a string");
ptr = strchr(string, c);
if (ptr)
printf("The character %c is at position: %d\n", c, ptr-string);
else
printf("The character was not found\n");
return 0;
}
yongming520 2003-10-20
  • 打赏
  • 举报
回复
算法我想是:
先判断是否是小数,若是,用strlen();
sandra423 2003-10-20
  • 打赏
  • 举报
回复
好像是strchr,记不太清楚啦
devilmoon_xp 2003-10-20
  • 打赏
  • 举报
回复
可不可以用个C里的现成函数?
starr0110 2003-10-20
  • 打赏
  • 举报
回复
给你个参考
if(a[0]=='v'){
...
...
}
devilmoon_xp 2003-10-20
  • 打赏
  • 举报
回复
感谢,我也是这样想的,但是在C中怎么搜索特定的字符或字符串?
daizh 2003-10-20
  • 打赏
  • 举报
回复
给你提供个参考思路:
你可以用gets()将输入的数据作为字符串,然后再在字符串中查找“.”有无,如果没有这表明不是小数,如果有,再判断它后面字符的个数(不包括'\0'),即小数的位数。
Januarius_ 2003-10-20
  • 打赏
  • 举报
回复
有小数点的就是小数

69,335

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧