gpt4 book ai didi

c - 一种快速测试是否所有数组元素都为零的方法

转载 作者:行者123 更新时间:2023-12-03 18:32:01 24 4
gpt4 key购买 nike

TL;DR 我想知道如何清理第一个 if 语句。我尝试在网上查找,但一无所获。
我正在编写一个程序来测试用户输入的数字是否有重复的数字。我设法创建了一个 10 元素的 bool 数组 (a[10]),如果 a[i] 等于 0,这意味着数字“i”最多出现一次。如果 a[i] 等于 1,则数字 'i' 在键入的数字中至少出现两次(因此重复)。注意 0<=i<=9。
现在,我尝试分析此数组中的值,以便如果所有值均等于零,则我们键入“重复数字”。如果不是,我们就说哪些数字是重复的。

if(a[0] == 0 && a[1] == 0 && a[2] == 0 && a[3] == 0 && a[4] == 0 && a[5] == 0 && a[6] == 0 && a[7] == 0 && a[8] == 0 && a[9] == 0)  
printf("No repeated digits");

else
printf("Repeated digits: ");
for(i = 0; i < 10; i++) {
if(a[i] == 1)
printf("%d ", i);
}


我找不到结合使用for循环和if循环来清理第一个if语句的方法。我试过在网上查找,但找不到解决方案。

最佳答案

或使用:

for (i=0; i<10; i++)
if (a[i])
break;

if (i==10) printf("No repeated digits");
else {
//...
}

关于c - 一种快速测试是否所有数组元素都为零的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67060385/

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