以升序排序的C程序

以升序排序的C程序

问题

根据已编写的代码,对给定的数组进行降序或升序排序。

解决方案

数组是一组相关的数据项,它们共享一个公共名称。通过帮助”索引号”,可以确定数组中的特定值。

声明数组

声明数组的语法如下 −

datatype array_name [size];

例如,

float marks [50]

它声明了‘ marks ’为包含50个浮点元素的数组。

int number[10]

它将‘ number ’声明为一个数组,最多包含10个整数常量。

每个元素都通过使用“数组索引”来标识。

通过使用数组索引很容易访问数组元素。

我们用以下逻辑按升序排序数组元素:

for (i = 0; i < n; ++i){
   for (j = i + 1; j < n; ++j){
      if (num[i] > num[j]){
         a = num[i];
         num[i] = num[j];
         num[j] = a;
      }
   }
}

程序

以下是将数组按升序排序的C程序−

#include <stdio.h>
void main (){
   int num[20];
   int i, j, a, n;
   printf("enter number of elements in an array  
");
   scanf("%d", &n);
   printf("Enter the elements  
");
   for (i = 0; i < n; ++i)
      scanf("%d", &num[i]);
   for (i = 0; i < n; ++i){
      for (j = i + 1; j < n; ++j){
         if (num[i] > num[j]){
            a = num[i];
            num[i] = num[j];
            num[j] = a;
         }
      }
   }
   printf("The numbers in ascending order is:  
");
   for (i = 0; i < n; ++i){
      printf("%d  
", num[i]);
   }
}

输出

当上述程序执行时,会产生以下结果−

enter number of elements in an array
5
Enter the elements
12
23
89
11
22
The numbers in ascending order is:
11
12
22
23
89

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程