c语言怎么判断一个变量里面的值是否不为数字啊
3个回答
2013-09-20
展开全部
int JudgmentDouble( int n_ID )
{
CString str_temp = _T("");
GetDlgItem(n_ID)->GetWindowText(str_temp);
if ( str_temp.GetLength() < 1 )
{
//AfxMessageBox("请在空白处输入适当的数值!");
//GetDlgItem(n_ID)->SetFocus();
return 0;
}
else
{
int i = 0;
for ( i = 0 ; i < str_temp.GetLength() ; i++ )
{
if ( (int)str_temp.GetAt(i) >= 48 && (int)str_temp.GetAt(i) <= 57 )//ASCII码判断
{
continue;
}
else if ( i == 0 && ( (int)str_temp.GetAt(i) == 45 || (int)str_temp.GetAt(i) == 43 ) )//43为加号,45为减号
{
continue;
}
else if (i>0&&str_temp.GetAt(i)=='.')
{
continue;
}
else
{
break;
}
}
if ( i < str_temp.GetLength() )
{
//AfxMessageBox("输入有误,请输入数值!");
//GetDlgItem(n_ID)->SetFocus();
return 1;
}
else
return 2;
}
}
{
CString str_temp = _T("");
GetDlgItem(n_ID)->GetWindowText(str_temp);
if ( str_temp.GetLength() < 1 )
{
//AfxMessageBox("请在空白处输入适当的数值!");
//GetDlgItem(n_ID)->SetFocus();
return 0;
}
else
{
int i = 0;
for ( i = 0 ; i < str_temp.GetLength() ; i++ )
{
if ( (int)str_temp.GetAt(i) >= 48 && (int)str_temp.GetAt(i) <= 57 )//ASCII码判断
{
continue;
}
else if ( i == 0 && ( (int)str_temp.GetAt(i) == 45 || (int)str_temp.GetAt(i) == 43 ) )//43为加号,45为减号
{
continue;
}
else if (i>0&&str_temp.GetAt(i)=='.')
{
continue;
}
else
{
break;
}
}
if ( i < str_temp.GetLength() )
{
//AfxMessageBox("输入有误,请输入数值!");
//GetDlgItem(n_ID)->SetFocus();
return 1;
}
else
return 2;
}
}
2013-09-20
展开全部
很佩服楼上的!竟然把C++学的这么好!!
#include <stdio.h>
int main(int argc, _TCHAR* argv[])
{
char a;
printf("请输入一个字符:\n");
scanf("%c",&a);
if(a>='0'&&a<='9')
{
printf("你输入的是数字:\n");
}
else
{
printf("你输入的不是数字!\n");
}
}
#include <stdio.h>
int main(int argc, _TCHAR* argv[])
{
char a;
printf("请输入一个字符:\n");
scanf("%c",&a);
if(a>='0'&&a<='9')
{
printf("你输入的是数字:\n");
}
else
{
printf("你输入的不是数字!\n");
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-09-20
展开全部
判断ASSIC码啊
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询