当前位置: 首页 > news >正文

“第四十二天”

 

这个,之前用的b去存储a的总和和排名,后来在比较的过程中,只改变的b的值,却没有改变a的值,但在比较语文成绩的时候用的还是a,这个时候a和b同样是第i个对应的可能不是同一个对象了

,因为上面b的值可能改变了,现在的第i个b可能是原来第i+1,i-1个,都有可能,所以比较结果错误。

#include<stdio.h>
#include<stdlib.h>int main()
{int n = 0;scanf("%d", &n);int(*a)[3] = (int*)malloc(sizeof(int) * 3 * n);int i = 0;int(*b)[2] = (int*)malloc(sizeof(int) * 2*n);for (i = 0; i < n; i++){scanf("%d %d %d", &a[i][0], &a[i][1], &a[i][2]);b[i][0] = a[i][0] + a[i][1] + a[i][2];b[i][1] = i+1;}for (i = 0; i < n; i++){int max = 0;int c = 0;for (int j = 0; j < n - 1 - i; j++){if (b[j][0] < b[j + 1][0]){max = b[j + 1][0];b[j + 1][0] = b[j][0];b[j][0] = max;c = b[j + 1][1];b[j + 1][1] = b[j][1];b[j][1] = c;}else if(b[j][0] == b[j + 1][0]){if (a[j][0] < a[j + 1][0]){c = b[j + 1][1];b[j + 1][1] = b[j][1];b[j][1] = c;}else if(a[j][0] == a[j + 1][0])if (b[j + 1][1] < b[j][1]){c = b[j + 1][1];b[j + 1][1] = b[j][1];b[j][1] = c;}}}}for (i = 0; i < 5; i++){printf("%d %d\n", b[i][1], b[i][0]);}free(a);a = NULL;free(b);b = NULL;return 0;
}

 这个是正确的,不过感觉这样还是很麻烦

#include<stdio.h>
#include<stdlib.h>
struct Stu
{int g[3];int sum;int n;
};
int main()
{int n = 0;scanf("%d", &n);struct Stu* a = (struct Stu*)malloc(sizeof(struct Stu) * n);struct Stu r;int i = 0;for (i = 0; i < n; i++){scanf("%d %d %d", &a[i].g[0], &a[i].g[1], &a[i].g[2]);a[i].sum = a[i].g[0] + a[i].g[1] + a[i].g[2];a[i].n=i+1;}for (i = 0; i < n; i++){int max = 0;int c = 0;for (int j = 0; j < n - 1 - i; j++){if (a[j].sum < a[j+1].sum){r = a[j];a[j] = a[j + 1];a[j + 1] = r;}else if(a[j].sum == a[j + 1].sum){if (a[j].g[0] < a[j + 1].g[0]){r = a[j];a[j] = a[j + 1];a[j + 1] = r;}else if(a[j].g[0] == a[j + 1].g[0])if (a[j].n>a[j+1].n){r = a[j];a[j] = a[j + 1];a[j + 1] = r;}}}}for (i = 0; i < 5; i++){printf("%d %d\n", a[i].n,a[i].sum);}free(a);a = NULL;return 0;
}

http://www.lryc.cn/news/196305.html

相关文章:

  • Qt/C++编写物联网组件/支持modbus/rtu/tcp/udp/websocket/mqtt/多线程采集
  • windows常用命令
  • 数据结构--堆
  • Android12之报错 error: BUILD_COPY_HEADERS is obsolete(一百六十七)
  • vue前端中v-model与ref的区别
  • 探索未来:硬件架构之路
  • Linux 系统安装 Redis7 —— 超详细操作演示!
  • 首次建站用香港服务器有影响没?
  • 大数据Flink(九十八):SQL函数的归类和引用方式
  • Python文件共享+cpolar内网穿透:轻松实现公网访问
  • Flink之源算子Data Source
  • 在雷电模拟器9上安装magisk并安装LSPosed模块以及其Manager管理器(一)
  • Apache atlas 元数据管理治理平台使用和架构
  • MFF论文笔记
  • Leetcode 02.07 链表相交(链表)
  • Bootstrap的媒体对象组件(图文展示组件),挺有用的一个组件。
  • Day2力扣打卡
  • 项目经理每天,每周,每月的工作清单
  • Java —— 运算符
  • 【C++ 中的友元函数:解密其神秘面纱】
  • YOLOv8涨点技巧:手把手教程,注意力机制如何在不同数据集上实现涨点的工作,内涵多种网络改进方法
  • 牛客:FZ12 牛牛的顺时针遍历
  • 函数防抖(javaScript)
  • 日常学习记录随笔-redis实战
  • MySQL事务MVCC详解
  • SQL RDBMS 概念
  • onlyoffice的介绍搭建、集成过程。Windows、Linux
  • 37. 解数独
  • git cherry-pick 合并某次提交
  • 【面试HOT100】子串普通数组矩阵