下面我会为您详细讲解C语言实现输入一组数自动从大到小排列的实例代码,步骤如下:
步骤一:定义数组
定义一个整型数组,这里我们定义为arr
,并定义数组大小为10
。
int arr[10];
步骤二:输入数据
通过循环语句输入10个数字,这里我们使用for
循环,如下所示:
for(int i = 0; i < 10; i++){
printf("请输入第%d个数字:", i + 1);
scanf("%d",&arr[i]);
}
步骤三:排序
对输入的10个数字进行排序,这里我们使用冒泡排序进行排序。冒泡排序的原理是比较相邻的两个数,如果第一个数比第二个数大,则交换这两个数的位置,并继续比较下一个数,直到比较完所有的数为止。代码如下所示:
int temp;
for(int i = 0; i < 9; i++){
for(int j = 0 ; j < 9 - i ; j++){
if(arr[j] < arr[j+1]){
temp=arr[j];
arr[j]=arr[j+1];
arr[j+1]=temp;
}
}
}
步骤四:输出结果
将排好序的结果输出到屏幕上,如下所示:
printf("从大到小排列的数字为:");
for(int i = 0; i < 10; i++){
printf("%d ",arr[i]);
}
下面是一个完整的示例代码:
#include <stdio.h>
int main()
{
int arr[10];
for(int i = 0; i < 10; i++){
printf("请输入第%d个数字:", i + 1);
scanf("%d",&arr[i]);
}
int temp;
for(int i = 0; i < 9; i++){
for(int j = 0 ; j < 9 - i ; j++){
if(arr[j] < arr[j+1]){
temp=arr[j];
arr[j]=arr[j+1];
arr[j+1]=temp;
}
}
}
printf("从大到小排列的数字为:");
for(int i = 0; i < 10; i++){
printf("%d ",arr[i]);
}
return 0;
}
示例说明:
假设输入的10个数字为:4 6 8 3 7 2 1 0 9 5
,则程序输出的结果为:9 8 7 6 5 4 3 2 1 0
。
再假设输入的10个数字为:10 20 30 40 50 60 70 80 90 100
,由于输入的数字是按照从小到大的顺序排列的,因此程序输出的仍然是:100 90 80 70 60 50 40 30 20 10
,这可以帮助我们验证程序的正确性。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:c语言实现输入一组数自动从大到小排列的实例代码 - Python技术站