❶ c語言將數組a中的10個整數降序排列並輸出,如何編程
這個是自己輸入10個整數,不想自己輸的話就先給數組a賦初值,然後把下面程序里的輸入語句去掉即可
#include <stdio.h>
void main()
{
int i,j,max,temp,a[10];
for(i=0;i<10;i++)
scanf("%d",&a[i]);
for(i=0;i<10;i++)
{
max=i;
for(j=i+1;j<10;j++)
if(a[max]<a[j])
max=j;
temp=a[i];
a[i]=a[max];
a[max]=temp;
}
for(i=0;i<10;i++)
printf("%d ",a[i]);
}
❷ C語言編程中字母怎麼降序排列
用ASCII碼吧, 每個字母都有ASCII碼,大小不一樣,小寫字母的比大寫字母的大,z比a大
❸ 如何用C語言將一組數進行降序排列
假設有n個數。
#include<stdio.h>
void min(int *a,int *b)
{
int data;
if(*a<*b)
{
data=*a;
*a=*b;
*b=data;
}
}
int main()
{
int t[10];//假設n=10,可以設置為其他數
int i,j,n=10;
for(i=0;i<n;i++)
scanf("%d",&t[i]);
for(i=0;i<n-1;i++)
{
for(j=i;j<n-1;j++)
{
min(&t[j],&t[j+1]);
}
}
for(i=0;i<n;i++)
printf("%3d",t[i]);
printf("\n");
return 0;
}
❹ C語言如何 對10個數進行降序排序。 這邊要課程設計了。希望大家幫幫忙
冒泡排序演算法實現10個數的降序排列,參考代碼如下:
#include"stdio.h"
#defineN10
intmain()
{
inti,j;
intt,a[N];
for(i=0;i<N;++i)
scanf("%d",&a[i]);
for(i=0;i<N-1;++i)
for(j=0;j<N-i-1;++j)
if(a[j]<a[j+1]){
t=a[j];
a[j]=a[j+1];
a[j+1]=t;
}
for(i=0;i<N;++i)
printf("%d",a[i]);
return0;
}
❺ c語言三種排序
常用的c語言排序演算法主要有三種即冒泡法排序、選擇法排序、插入法排序。
一、冒泡排序冒泡排序:
是從第一個數開始,依次往後比較,在滿足判斷條件下進行交換。代碼實現(以降序排序為例)
#include<stdio.h>
int main()
{
int array[10] = { 6,9,7,8,5,3,4,0,1,2 };
int temp;
for (int i = 0; i < 10; i++)
{//循環次數
for (int j = 0; j <10 - i-1; j++)
{
if (array[j] < array[j+1])
{//前面一個數比後面的數大時發生交換 temp = array[j];
array[j] = array[j+1];
array[j + 1] = temp;
}
}
} //列印數組 for (int i = 0; i < 10; i++) printf("%2d", array[i]); return 0;}}
二、選擇排序以升序排序為例:
就是在指定下標的數組元素往後(指定下標的元素往往是從第一個元素開始,然後依次往後),找出除指定下標元素外的值與指定元素進行對比,滿足條件就進行交換。與冒泡排序的區別可以理解為冒泡排序是相鄰的兩個值對比,而選擇排序是遍歷數組,找出數組元素與指定的數組元素進行對比。(以升序為例)
#include<stdio.h>
int main()
{
int array[10] = { 6,9,7,8,5,3,4,0,1,2 };
int temp, index;
for (int i = 0; i < 9; i++) {
index = i;
for (int j = i; j < 10; j++)
{
if (array[j] < array[index])
index = j;
}
if(i != index)
{
temp = array[i];
array[i] = array[index];
array[index] = temp;
}
for(int i=0;i<10:i++)
printf("%2d"array[i])
return 0;
}
三、快速排序
是通過一趟排序將要排序的數據分割成獨立的兩部分,其中一部分的所有數據都比另外一部分的所有數據都要小,然後再按此方法對這兩部分數據分別進行快速排序,整個排序過程可以遞歸進行,以此達到整個數據變成有序序列。
void QuickSort(int* arr, int size)
{
int temp, i, j;
for(i = 1; i <size; i++)
for(j=i; j>0; j--)
{
if(arr[j] <arr[j-1])
{
temp = arr[j];
arr[j]=arr[j-1];
arr[j-1]=temp;
}
}
}
❻ C語言的升序和降序
#include<stdio.h>
void main()
{
int a[5]={};
int i,j;
int temp=0;
for(i=0;i<5;i++)
{
printf("請輸入第%d個整數\n",i+1);
scanf("%d",&a[i]);
}
for(i=1;i<5;i++)
{
for(j=0;j<5-i;j++)
{
if(a[j]<a[j+1])....................//把大於號改成小於號
{
temp=a[j];
a[j]=a[j+1];
a[j+1]=temp;
}
}
}
for(i=0;i<5;i++)
{
printf("排序後的整數:%d\t",a[i]);
}
}
if(a[j]<a[j+1])....................//把大於號改成小於號
❼ 關於C語言進行降序排列
#include<stdio.h>
#include
<math.h>
//從鍵盤上輸入10個整數,要求用插入法實現對它們進行降序排列。
//(主函數完成輸入輸出功能,排序用函數sort()來實現)。
void
sort(int
a[],int
n)
{
int
i,j,temp;
for(i=0;i<n-1;i++)
{
temp=a[i+1];
j=i;
while(j>-1&&temp<a[j])
{
a[j+1]=a[j];
j--;
}
a[j+1]=temp;
}
}
int
main()
{
int
i,a[10]={0};
printf("請輸入10個數據:\n");
for(i=0;i<10;i++)
scanf("%d",&a[i]);
for(i=0;i<10;i++)
printf("%d\t",a[i]);
sort(a,10);
for(i=0;i<10;i++)
printf("%d\t",a[i]);
return
0;
}
❽ C語言數組七個數升序排列和降序排列怎麼編程
1、打開visual C++ 6.0-文件-新建-文件-C++ Source File。
❾ 從鍵盤輸入三個整數,然後降序輸出,用C語言怎麼編啊
#include
<stdio.h>
int
a[3];
void
main(void)
{
printf("請輸入3
數\n");
for
(int
j=0;j<3;j++)
{
scanf("%d",&a[j]);
}
for
(int
i=0;i<=3;i++)
{
for
(int
k=i;k<=3;k++)
{
if
(a[i]<a[k])
{
int
tem
=
a[i];
a[i]=
a[k];
a[k]
=
tem;
}
}
}
for
(j=0;j<3;j++)
{
printf("%d\t",a[j]);
}
return
;
}
❿ 用C語言編寫,輸入10個數按降序排列
源程序代碼如下:
#define _CRT_SECURE_NO_WARNINGS//VS環境下需要,VC不需要
#include<stdio.h>//頭文件;
int main()
{
int i = 0;
int j = 0;
double temp = 0;
double a[10] = { 0 };//定義三個變數和一個長度為10的數組;
printf("請輸入十個數:
");//顯示「請輸入十個數」
for (i = 0; i < 10; i++)
{
scanf("%lf", &a[i]);//從鍵盤上輸入十個數送到數組;
}
for (i = 1; i < 10; i++)//for循環,進行9次循環;
{
for (j = i - 1; j >= 0; j--)//for循環,在每次大的循環中,a[i]從a[1]依次與它前面的數比較;
{
if (a[j + 1] > a[j])
{
temp = a[j + 1];
a[j + 1] = a[j];
a[j] = temp;//如果a[j + 1]>a[j],則把這兩個數組元素互換,目的把最大的數放到前邊;
}
else
{
break;
}
}
}
for (i = 0; i < 10; i++)
{
printf("% lf
", a[i]);//輸出排好順序的十個數;
}
return 0;//返回值為0;
}
程序運行結果如下:
(10)c語言降序編碼擴展閱讀:
其他實現方法如下:
#include<stdio.h>
int mysort(int *a, int n)
{
int i, j, temp;
for (i = 0; i < n - 1; i++)
{
for (j = 0; j < n - 1 - i; j++)
{
if (a[j] > a[j + 1])
{
temp = a[j + 1];
a[j + 1] = a[j];
a[j] = temp;
}
}
}
return 0;
}
int main()
{
int a[10];
int i, j;
printf("input 10 numbers:
");
for (i = 0; i < 10; i++)
{
printf("the number%d is:", i + 1);
scanf("%d", a + i);
fflush(stdin);
}
mysort(a, 10);
for (i = 9; i >= 0; i--)
printf("%3d", a[i]);
printf("
");
return 0;
}