
程序代码:
#include<stdio.h>
#include <stdlib.h>
#include <time.h>
#define MAX 26 /* MAX >= 6 */
int main(void) {
int i, j, k, n[MAX];
srand((unsigned int)time(NULL));
for(i = 0; i < MAX; i++) {
/*使用 0-100 之间随机整数填充数组 */
n[i] = 0 + (int)(100.0 * rand() / (RAND_MAX + 1.0));
printf("%d ", n[i]);
}
printf("\n\n");
for(i = 0; i < MAX - 5; i++) {
for(j = i + 1; j < i + 5; j++) {
for(k = i + 5; k > j; k--) {
if(n[j] == n[k]) {
printf("-------------------------\n打印出得到的数组\n第1位为分割点\n第2-6位中有两个以上相同数\n第7位之后无意义\n-------------------------\n\n");
for(; i < MAX; i++) {
printf("%d ", n[i]);
}
goto OUT;
}
}
}
}
printf("没有找到符合条件的连续6个以上的数!\n");
OUT:
printf("\n\n");
return 0;
}
[
本帖最后由 longwu9t 于 2014-12-25 01:30 编辑 ]