这一篇读起来有点头疼,所以我在这里稍微解释一下我做了什么:
首先,包含标准 i/o 库,#define array size to any you want,声明你的数组(我叫我的:int entries[SIZE];)。
“输入 10 个数字”之后的第一个 for 循环是主要循环,它允许您将 10 个数字推入数组。
以下 if 语句是应用于键入后输入的值的测试:
1) 第一个 if 语句确保我们输入正确范围内的值。
2) 下面的 'else if' 表明 if entries[i] = entries[0] (意思是如果这是数组中的第一个对象)我们什么也不做,因为没有什么可以比较的。
3) 最后一个“else”包含一个嵌套循环。外部循环初始化为 1,因此我们确保在内部循环中进行的比较中,我们始终将当前值与前一个值进行比较。
我希望这会有所帮助......干杯:)
*/
#include <stdio.h>
#define SIZE 10
//declarations
int entries[SIZE];
int main(void)
{
printf("Enter 10 numbers:\n");
for(int i = 0; i <= SIZE-1; i++)
{
printf("[%d]:\n", i);
scanf("%d", &entries[i]);
if(entries[i] < 10 || entries[i] > 100) {
printf("Please enter valid number (between 10 and 100)\n");
scanf("%d", &entries[i]);
}
else if(i == 0) {
;
} else
{
for(int j = 1; j <= i; j++)
{
*//internal loop goes through all the previous entries (entries[i-1], entries[i-2], etc)*
for(int k = 0; k < j; k++) {
if(entries[j] == entries[k])
printf("%d is a duplicate value\n", entries[i]);
}
}
}
}
}