C语言 输入10个数按大小排列输出

我刚学C两节课,很想用我所学的内容把这个编出来,看网上的其他答案根本不懂啊,谁能帮帮我啊。或者用语言表述一下算法啊。

源代码如下:

定义_CRT_SECURE_NO_WARNINGS//VS环境,VC没有

#include//头;

Intmain()

IntI=0;

Intj=0;

双温度=0;

双a[10]={0};//定义三个变量和一个长度为10的数组;

Printf(“请输入10个数字:\n”);//显示“请输入10个数字”

For (I = 0;我< 10;我+ +)

if the scanf (" % ", & a [I]);//从键盘输入十个数字到数组中;

For (I = 1;我< 10;i++)//for循环,执行9个循环;

对于(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],交换两个数组的元素,把最大的数带到前面;

其他的

打破;

For (I = 0;我< 10;我+ +)

Printf("%lf\n",a[I]);//输出排序后的10个数;

返回0;//返回值为0;

项目结果如下:

扩展资料:

其他实现方法如下:

#包括< stdio, h >

Intmysort(Int*a,Intn)

IntI,j,temp。

For(I=0;I小于n-1;我++)

对于(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;

返回0;

Intmain()

Int[10]。

IntI,j。

Printf(“输入10个数字:\n”);

For (I = 0;我< 10;我+ +)

Printf("thenumber%dis:",I+1);

scanf(“%d”,a+I);

。fflush(stdin);

Mysort(10);

For (I = 9)I > = 0;我)

Printf("%3d",a[I]);

Printf("\n");

返回0;

温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2017-09-29
这个就是 冒泡法 排序了啊
main()
{
int i,j,temp;
int a[10];
for(i=0;i<10;i++)
scanf ("%d,",&a[i]);//在这里可以输入10个数
for(j=0;j<=9;j++)//外围循环 循环10次
{ for (i=0;i<10-j;i++)//内层循环 循环 10减去外围的循环的第几次
if (a[i]>a[i+1])//比较 比较 a[i]是不是大于a[i+1]是的话
{ temp=a[i]; //就吧a[i]和a[i+1]互相交换了 这样 大的数就 随着循环
a[i]=a[i+1]; //排到 后面了
a[i+1]=temp;}
}
for(i=1;i<11;i++)
printf("%5d,",a[i] );//是把结果输出
printf("\n");
}本回答被提问者采纳
第2个回答  2008-09-07
#include<stdio.h>
void main()
{
int i,j,temp;
int a[10];
for(i=0;i<10;i++)
scanf("%d",&a[i]);//在这里可以输入10个数
for(j=0;j<=9;j++)//外围循环 循环10次
for (i=0;i<10-j;i++)//内层循环 循环 10减去外围的循环的第几次
if (a[i]>a[i+1])//比较 比较 a[i]是不是大于a[i+1]是的话
{
temp=a[i]; //就吧a[i]和a[i+1]互相交换了 这样 大的数就 随着循环
a[i]=a[i+1]; //排到 后面了
a[i+1]=temp;
}
for(i=0;i<10;i++)
printf("%d,",a[i] );//是把结果输出
printf("\n");
}
在机子上运行过的,结果正确
第3个回答  2008-09-07
#include <stdio.h>
void main()
{
int a[10];
int i,j,t;
printf("input 10 numbers:\n");
for(i=0;i<10;i++)
scanf("%d",&a[i]);
printf("\n");
for(j=0;j<9;j++) /*进行9次循环*/
for(i=0;i<9-i;i++) /*在每一趟中进行9-j次比较*/
if(a[i]>a[i+1]) /*相邻两个数比较*/
{
t=a[i];
a[i]=a[i+1];
a[i+1]=t;
}
printf("the sorted numbers:\n);
printf("\n");
}
运行情况如下:
input 10 numbers:
1 0 4 8 12 65 -76 100 -45 123(回车)

the sorted numbers:
-76 -45 0 1 4 8 12 65 100 123

参考资料:谭浩强 c程序语言设计(第三版)135页 例7.3 用起泡法对10个数排序

第4个回答  2008-09-07
我给你说思路。。用替换顶替冒泡。。例如A ,B,,C,,,D,,,如果D大于C。。则将D与C换为。。同理以次做比较然后往前移动就好了。。倒是自然就是按照顺序排列了。。。

C语言 输入10个数按大小排列输出
Intmain(){ IntI=0;Intj=0;双温度=0;双a[10]={0};//定义三个变量和一个长度为10的数组;Printf(“请输入10个数字:\n”);//显示“请输入10个数字”For (I = 0;我< 10;我+ +){ if the scanf (" % ", & a [I]);\/\/从键盘输入十个数字到数组中;} For ...

C语言如何输入十个数,按从大到小顺序排列!
printf("输入数");for (i = 0; i < 10; i++)scanf("%d",&a[i]);for (i = 0; i < 10; i++){ for (j = i + 1; j < 10;j++)if (a[i] < a[j]){ t = a[i];a[i] = a[j];a[j] = t;} } printf("从大到小");for (i = 0; i < 10; i++)pri...

C语言编程输入10个整数存入数组a中然后按从打到小的顺序排序并输_百度...
编写一个C语言程序,用于输入10个整数存入数组a中,然后按照从大到小的顺序排序并输出。程序实现步骤如下:首先,引入必要的头文件<stdio.h>。接着,使用int main()函数作为程序的主入口。在主函数内部,定义一个整数型数组a[10]和两个整数变量i和j。使用for循环,从0到9遍历数组,输入每个元素的值...

C语言如何输入十个数,按从大到小顺序排列!
printf("请输入十个数:");for (i = 0; i < 10; i++)scanf("%d",&a[i]);for (i = 0; i < 10; i++){ for (j = i + 1; j < 10;j++) \/\/循环 if (a[i] < a[j]){ t = a[i];a[i] = a[j];a[j] = t;} } printf("从大到小排序后:");for (i ...

C语言,输入10个数怎样输出10个数中最大值,最小值(大一计算机)_百度知...
printf("输入整数:");scanf("%d", &value);if (loop==10) { max = min = value; loop--; continue;} else { if (value > max) max = value;if (value < min) min = value;loop--;} } while (loop!=0);printf("输入的10个数中,最大数:%d\\t最小数:%d\\n", max, min)...

C语言 从键盘输入10个整数,将这10个整数按从小到大的顺序输出。
1、打开软件进入页面,点击文件-新建-文件-C++ Source File。2、输入预处理命令和主函数:#include<stdio.h>\/*输入输出头文件*\/void main()\/*空类型:主函数*\/。3、定义变量和数组的数据输入10个数:int a[10],i,t;\/*定义变量和数组数据类型为整型*\/printf("输入10个整数:");\/*输出文字...

C语言程序设计: 从用户输入10个整数,对其按照从小到大的顺序排序,并输...
include<stdio.h>int main(void){int arr[10];int i,j;for(i = 0;i < 10;i++){scanf(" %d",&arr[i]);}for(i = 0;i < 10;i++){int mini = i;int min = arr[i];int c;for(j=i;j < 10;j++){if(arr[j] < min){min = arr[j];mini = j;}}c = arr[i];...

初学C语言,求高手帮忙——依次输入10个数,按大小顺序输出
void main(){ int a[10],i,t,max;printf("请输入10个数\\n");for(i=0;i<10;i++){ printf("请输入第%d个数:",i+1);scanf("%d",&a[i]);} printf("你输入的10个数为:");for(i=0;i<10;i++)printf("%d,",a[i]);printf("\\n");for(i=0;i<9;i++)\/*排序部分...

C语言 从键盘随机输入10个整数,将他们从小到大排序后输出
int main (){ int i,n,k,a[10];for (i=0;i<10;i++)scanf("%d",&a[i]);for (i=0;i<9;i++)for (n=0;n<9-i;n++)if(a[n]>a[n+1]){ k=a[n];a[n]=a[n+1];a[n+1]=k;} for (i=0;i<10;i++)printf("\\n%d",a[i]);printf("\\n");return 0;} ...

c语言:我从键盘输入10个从小排到大的数,要求输出其中不同的数。也就是...
这个只需要判断当前数是否与他的前一个数相同,如果相同,则表示该数与前一个数重复,如果不相同,则表示他第一次出现,输出。示例代码:include <stdio.h>int main(){ int a[10] = {1, 2, 2, 3, 3, 3, 5, 6, 6, 6}; int n = 10; for (int i = 0; i < n; ++...

相似回答