51Testing软件测试网+M7lH b3bA1O此代码还有缺陷,仅供参考。51Testing软件测试网4_NB%}9ye8Z#h!D'H5R
51Testing软件测试网2V6h)w J'KQ,vv:d#include<stdio.h>
ahZ4d Am051Testing软件测试网QM;yTQ2m(m/****************判断函数****************************/
?%LwD {;@G[Gz0 fc \B5c$XMZ_ ?!b9f0int checkisnum(char *source)
l/LE4t \ a}9Z&z N!T0{51Testing软件测试网p&}4uC-O6i:d2@ Q%A gp
int i=0;
Qc }4xn;w0 int temp=0;
eVZQl$W0 int flag=1; //falg=1 有效数字
;dA)a5V
J0q#A0 int len = strlen(source);51Testing软件测试网+ZAbKt+ZL^l
for(i=0;i<len;i++)
a\'c'm;nbE{Q2y0 {
3\];B ? HG+^0 if(!(source[i]>=48&&source[i]<=57 || source[i]==46|| source[i]==45))//判断数字的组成 51Testing软件测试网$~:MNIS'A-yl
flag=0;
pHw)h D;k051Testing软件测试网S+om1H{v7o4cr if(source[i]==46||source[i]==45)//判断多个符号.或者-存在的情况
BO3B/]B)p^0D0 {
XuH"D9dCk"u'W0 temp++;
A.`2nUy&e"z+k} p0 if(temp>1)
9R`4mG)A!X0 flag=0;51Testing软件测试网)];a fQ,Q$Gw
} 51Testing软件测试网EBmKd"CR
Do
}
VU6\ C/[ N9Tp0P
`U2T8lB0 if(source[0]==46 || source[len-1]==46 || source[len-1]==45)//'.'在开头结尾,-在结尾 51Testing软件测试网)mhS3H/fD
flag=0;
*At5IA^ ng7h0 if(len==1)//-
];fN8i\q4[:O0 {
7xq'B$`0@1ip D&X3Vh0H0 if(source[0]==45)
+C*XFcR z&a+R0 flag=0;
}V)wO
x?M0 } 51Testing软件测试网]zPV`5W
f3O
if(len>=2)
}#\C
d-F!x%U0 {
8f/ND%ks5{'R(Ozl0 if(source[0]==45&&(source[1]==46||source[1]==48))//-./-0xxxx
W eW4a rI"mA$kg,X0 flag=0;51Testing软件测试网k+i
zS}2J w$d%R1}0y
if(source[0]==48&& source[1]!=46)//0.xxx
g3F I2A
kp-Z%H0 flag=0;
kj8Dzu-Sw0 }51Testing软件测试网Cy.l'[+@-T'w
printf("输入的字符串是:%s 检测结果:%d\n",source,flag);
._|EN;K)D0 return flag;
3E*Z(|gC6@0 51Testing软件测试网Bv~9X-TU$F
}51Testing软件测试网m7D+sKD"D,L
51Testing软件测试网"ax}4fe'm/rs/********************测试代码*******************************/
8P2nt:T$WQ Y0 L7f;t%N;XzpT
w/uN0void testnumber(char * str,int expect)
;}-VZ;}2~"i\-H$t%sEg0{51Testing软件测试网8X7A'_@\H9b/Iu
int actual=checkisnum(str);
H-m8?#b*KQZW@ N*SG.m0 if(actual==expect)
-|Y)SE}"C"Es"M-C0 printf("Success\n");51Testing软件测试网{DQmm*v
else
^0x*f)j,X$K!`'P
d0 printf("Failure\n");
+H"rZPd@iY1K|0}
"JS}"[
Y&Fw5?051Testing软件测试网hEcjd8r%Nint main()
"B)p _8S;EE+V]6A051Testing软件测试网iIsVW7s{