如何检查输入内容是否包含非数字字符?

问题描述 投票:0回答:1

大家好,我是C新手,我有一个关于如何检查输入是否包含非数字字符的问题。

这是我的代码:

#include <stdio.h>
#include <ctype.h>
#include <stdlib.h>

int main(void){
 char arraySize;
 scanf("%c",&arraySize);
 if(!isdigit(arraySize)){
  printf("BADINPUT\n");
 }else{
  return 0;
 }
}

[运行代码时,我输入了xy4并且输入了printf BADINPUT。但是,当我输入4xyz时没有输入printf BADINPUT。似乎只读取第一个字符并检查是否为isdigit

如何更改代码,以便在我输入4xyz时也将成为BADINPUT?

c
1个回答
0
投票

您应该使用“ == 0”或“!= 0”来检查此字符是否为数字

© www.soinside.com 2019 - 2024. All rights reserved.