给你一个范例: 加了注释了,如果哪里还有不明白的,提出来吧。。。 #include <stdio.h> #include <string.h> #include <conio.h>
int main() { register int i,len; int flag=0; /* 小数点标示 */ int flag1=0; /* 0标示 */ char buffer[32]={0}; printf("Please input a number\n"); /* 读入一个串 */ gets(buffer); /* 取读入串的大小 */ len=strlen(buffer); for(i=0;i<len;i++) { if(buffer[i]=='.') { flag=1; break; } } if(flag==1) { int l=len-1-i; /* 小数部分大于6位时,判断小数点后6位是否全为0 */ if(l>=6) { for(i=i+1;i<i+8;i++) { if(buffer[i]!='0') { flag1=1; break; } } } /* 小数部分小于6位,则检查所有小数位 */ else { for(i=i+1;i<len;i++) { if(buffer[i]!='0') { flag1=1; break; } } } if(flag1==1) { puts("The number you input is not a decmal"); } else { puts("The number you input is a decmal"); } } else { puts("The number you input is a decmal"); } getch(); return 0; }
[此贴子已经被作者于2005-8-22 22:35:26编辑过]