文章
18
粉丝
0
获赞
61
访问
21.3k
 
#include<stdio.h>
#include<stdlib.h>
void swap(int* a, int* b) {
	int temp = 0;
	temp = *a;
	*a = *b;
	*b = temp;
}
void BubbleSortUp(int* array, int length)//冒泡排序
{
	for (int i = 0; i < length - 1; i++) {
		for (int j = i + 1; j < length; j++) {
			if (array[i] > array[j]) {
				swap(&array[i], &array[j]);
			}
		}
	}
}
int main() {
	int n;
	scanf("%d", &n);
	int length = n;//记录长度
	int x,k=0;
	int* data = (int*)malloc(sizeof(int) * n);
	for (int i = 0; i < n; i++) {
		int index = 1;//检测是否重复
		scanf("%d", &x);
		
		for (int j = 0; j < i; j++) {
				if (x == data[j]) {
					length--;//有重复的长度-1
					index = 0;
					break;
				}
		}
		
		if (index) data[k++] = x;
	}
	BubbleSortUp(data, length);//排序
	for (int i = 0; i < length; i++) {
		for (int j = 0; j < length; j++) {
			if (i == j) continue;//看成二维数组,坐标是在对角线则不输出
			printf("(%d,%d)\n", data[i], data[j]);
			
		}
	}
	return 0;
}
考虑到存在...
登录后发布评论
重复数据的处理有问题
4
1 2 1 2