数组中 的数字排序

#import <Foundation/Foundation.h>

 

int main(int argc, const char * argv[]) {

    @autoreleasepool {

        NSArray *arr=[[NSArray alloc]initWithObjects:@12,@9,@34,@56,@11, nil];

        NSArray *newarr=[arr sortedArrayUsingComparator:^NSComparisonResult(id obj1, id obj2) {

            return [obj1 compare:obj2];

        }];

        for (NSString *str in newarr) {

            NSLog(@"%@",str);

        }

    }

    return 0;

}

转载于:https://www.cnblogs.com/haitong-0311/p/5120325.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 可以使用STL中的`sort`函数实现: ```cpp int arr[10] = {3, 7, 1, 9, 2, 5, 8, 4, 6, 0}; std::sort(arr, arr+10, std::greater<int>()); ``` 其中,`std::greater<int>`是一个函数对象,表示比较两个数的大小,这里表示按照降序排序排序后的结果存储在数组`arr`中。 ### 回答2: 在MFC中进行10个数字的降序排序可以使用数组和循环结构来实现。以下是一种可能的解决方案: 1. 首先,在MFC的代码中定义一个整型数组,长度为10,用于存储这10个数字。假设数组名为`numArray`。 2. 接下来,使用循环结构将用户输入的10个数字存入数组。可以使用`CStdioFile`类进行输入,或者通过对话框等方式获取用户输入。 3. 使用循环结构遍历数组,并使用条件判断语句找到数组中最大的数字。可以使用双重循环,外层循环控制每一轮找到的最大数字的位置,内层循环用于比较相邻数字的大小。 4. 找到最大数字后,将其与当前遍历轮次的数字交换位置。可以使用一个临时变量来暂存数字,并使用赋值操作实现交换。 5. 继续进行下一轮的循环,直到所有数字都按降序排列为止。 6. 最后,可以输出排序后的结果,或将结果赋值给新的数组变量供后续使用。 总结起来,就是通过循环结构和条件判断,逐步找到最大的数字并将其与当前位置交换,从而实现10个数字的降序排序。可以根据具体的需求和MFC框架来调整实现细节。 ### 回答3: 在MFC中,我们可以使用标准的C++语法来对一个包含10个数字数组进行降序排序。 首先,我们需要声明一个包含10个整数的数组,并赋予初始值。例如: int arr[10] = {5, 2, 9, 1, 8, 3, 10, 4, 7, 6}; 接下来,我们可以使用冒泡排序算法对数组进行降序排序。冒泡排序算法的基本思想是将相邻的元素进行比较,如果前一个元素大于后一个元素,则交换它们的位置。重复此过程,直到整个数组按降序排序为止。 具体实现的代码如下: for (int i = 0; i < 9; i++) { for (int j = 0; j < 9 - i; j++) { if (arr[j] < arr[j + 1]) { int temp = arr[j]; arr[j] = arr[j + 1]; arr[j + 1] = temp; } } } 经过这段代码的执行后,数组arr中的数字就按降序排列了。 最后,我们可以通过遍历数组来验证排序结果: for (int i = 0; i < 10; i++) { cout << arr[i] << " "; } 上述代码中的cout语句可以将排序后的数组按顺序输出到控制台。 当然,如果你是在一个MFC窗口程序中使用这段代码,你可以将cout语句替换为CWnd对象的相应输出函数,以在窗口中显示排序结果。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值