首页 > 数字排序题,请求bug,运行结果有误
头像
啦啦啦12321
编辑于 2021-03-13 20:03
+ 关注

数字排序题,请求bug,运行结果有误

#include<iostream>
#include<stdio.h>
#define MAX 1000
using namespace std;

typedef struct Score
{
	int score;
	int add;
}Score;
Score S[MAX];
int main()
{
	int n;
	while (cin >>n )
	{
		for (int i = 0; i < n; i++)
		{
			int sum = 0;
			cin >> S[i].score;
			int a = S[i].score;
			while (a != 0)
			{
				sum += a % 10;
				a = a / 10;
			}
			S[i].add = sum;
		}
		for (int i = 0; i < n; i++)
		{
			for (int j = i; j < n; j++)
			{
				if (S[i].add < S[j + 1].add)
				{
					Score a = S[j + 1];
					S[j + 1] = S[i];
					S[i] =a;

				}
				else if (S[i].add = S[j + 1].add)
				{
					if (S[i].score > S[j + 1].score)
					{
						Score a= S[j + 1];
						S[j + 1] = S[i];
						S[i] = a;
					}
				}
			}
				
		}
		for (int i = 0; i < n; i++)
			cout << S[i].score << ' '<< S[i].add<<endl;
	}
	return 0;
}

全部评论

(0) 回帖
加载中...
话题 回帖

推荐话题

相关热帖

近期精华帖

热门推荐