黑马程序员技术交流社区
标题:
有100个数,每个数取值范围是0-99,找出其中重复的数。
[打印本页]
作者:
XiaoBaoMi
时间:
2015-6-24 22:27
标题:
有100个数,每个数取值范围是0-99,找出其中重复的数。
#include <stdio.h>
#include <stdlib.h>
int main() {
//随机数存储于数组b
long long b[100];
//重复的数存储于数组c
long long c[100] = {0};
//数组C的下标
int k = 0;
//把随机数存入C中
for (int i = 0; i < 100; i++) {
b[i] = arc4random_uniform(100);
//printf("随机产生的数组为%lld\t",b[i]);
}
//循环遍历比较
for (int i = 0; i < 99; i++) {
for (int j = i + 1; j < 100 - i; j++) {
//如果相等则取出该数
if (b[i] == b[j]) {
//防止重复录入
if (b[i] == c[k - 1]) {
continue;
}
//把重复的数字赋值为-1
else{
c[k] = b[i];
b[j] = -1;
k++;
}
}
}
}
for (int i = 0 ; i < k; i++) {
//把-1滤掉,只留下重复的数字且只输出一次重复的数字
if (c[i] != -1) {
printf("%lld\t",c[i]);
}
}
return 0;
}
复制代码
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2