gpt4 book ai didi

c - 为什么我的 'if' 语句被跳过?

转载 作者:太空宇宙 更新时间:2023-11-04 07:21:16 24 4
gpt4 key购买 nike

我是 C 语言的新手,在这个问题上需要帮助。我想遍历一个数组来检查数组的所有元素是否都是 0-9 的数字。如果不是,我想打印 false,如果是,我想打印 true。出于某种原因,我的 if 语句被跳过,我刚刚返回 false 五次。谢谢!

#include <stdio.h>

int main()
{
int array[5] = {1, 2, 3, 15, 24};
int i;
for (i = 0; i < 5; i++) {
if (array[i] >= '0' && array[i] <= '9') {
printf("True\n");
}
else
{
printf("False\n");
}
}
}

最佳答案

数组中没有任何元素大于“0”,因为“0”在 ASCII 中是十进制的 30。

因此对于您的示例,最高整数为 24,没有任何元素满足您的 if 条件。

将其更改为:

if (array[i] >= 0 && array[i] <= 9) {

关于c - 为什么我的 'if' 语句被跳过?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21505252/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com