问题标题: 酷町堂:1214

0
0
已解决
郭子鸣
郭子鸣
修练者
修练者

#include <iostream>  
#include<math.h> 
#include<string.h>
using namespace std;
int main()
{
    char a[80],temp,x;
    int len,i,j;
    cin>>a; 
    len = strlen(a);
    for (int i = 0; i <len ; i++){
        for (int j = 0; j < len - i; j++)
            if(a[i]>a[i+j]){
                temp=a[i];
                a[i]=a[i+j];
                a[i+j]=temp;
            }
    }
    for(i=0;i<len;i++)
        cout<<a[i];
    cout<<endl;
    return 0;
}

为何只有20分????


0
已采纳
桑烁
桑烁
高级光能
高级光能

应该是排序有问题(你这代码我表示看不懂)

修改建议:

1.定义一个正整数

2.while(一个数组存储)

3.sort

4.输出

不要嫌麻烦!!!

0
0
被禁言 何冯成
何冯成
中级光能
中级光能

你的排序有问题。

排序:

    for(int i=k-1;i>=1;i--)
    {
        for(int j=0;j<i;j++)
        {
            if(a[i]<a[j])
                swap(a[i],a[j]);
        }
    }

或:

    for(int i=k-1;i>=1;i--)
    {
        for(int j=0;j<i;j++)
        {
            if(a[i]<a[j])
{

int  tmp;

tmp=a[i];

a[i]=a[j];

a[j]=tmp;

}
        }
    }

0
包涵宇
包涵宇
中级天翼
中级天翼

题目说好了是数字,不能用char

用循环结构n%10一个一个的取出数字存放到数组里,再用sort排序好。最后用num=num*10+s[i]把数组的每个数字一个一个的计算整数。

望采纳!嘻嘻嘻

0
刘宇航
刘宇航
初级守护
初级守护

应该是排序有问题(你这代码我表示看不懂)

修改建议:

1.定义一个正整数

2.while(一个数组存储)

3.sort

4.输出

不要嫌麻烦!!!

0
许金夫
许金夫
初级天翼
初级天翼

输入一个字符串反过来输出

0
徐紫尘
徐紫尘
高级光能
高级光能

1.定义一个正整数

2.while(一个数组存储)

3.sort

4.输出

我要回答