文章

1

粉丝

0

获赞

9

访问

254

头像
二元组整数 题解:纯c语言数组解法
P1024 贵州大学机试题
发布于2025年3月7日 12:52
阅读数 254

这个题的c语言数组实现方法如下。明确1.数字是可以重复的,这样才能取出所有可能的二元组,所以开始的时候生成所有二元组。(只要求(x,y)中x和y不是同一个数据的取值)。

2,将二元组去重,这个方法我采用二元数组标记所有的二元组,题目要求n不超过30,所以用31作为舍弃标记,遇到重复组就标记为31数值。

3,排序,冒泡排序,遇到同x但y不同的组将y的大小排序。

4,打印。

(楼主水平太低了,这个题做了很久才出来就记录下方法,欢迎讨论)

 

 

#include <stdio.h>
#include <stdlib.h>
void fun(int x,int y){//打印格式 
    printf("(%d,%d)\n",x,y);
    return ;
}
void fun2(int c[][2], int n) {//去重复二元组;这个题的要求应该说是所有的数字不能去重,先把所有的二元组拿出来,不输出重复的组。 
    for (int i = 0; i < n; i++) {
        // 只有当 c[i][0] != 31 时才检查
        if (c[i][0] == 31) continue;  // 已经标记为重复的元素跳过
        
        for (int j = i + 1; j < n; j++) {
            if (c[j][0] == 31) continue;  // 已经标记为重复的元素跳过
            
            // 如果 c[i] ...

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发