C语言:从键盘上输入10个整数,将其保存到数组中,并按升序排列。

请高手们些简单一点,我是C语言初学者。... 请高手们些简单一点,我是C语言初学者。 展开
 我来答
珈蓝惜梦qF
2019-10-15 · TA获得超过654个赞
知道答主
回答量:33
采纳率:0%
帮助的人:1.2万
展开全部

源程序代码以及算法解释如下:

#define _CRT_SECURE_NO_WARNINGS

#include<stdio.h>

int main()

{

 int i, j;//定义循环变量

 int M_num;//定义中间变量

 const int N = 10;//定义数组元素个数

 int number[N];//定义两个数组

 printf("请输入10个数组元素:\n");//文字提示

 for (i = 0; i < N; i++)

 {

  scanf("%d", &number[i]);//循环输入数组元素

 }

 for (i = 1; i < 10; i++) {//冒泡排序外循环

  for (j = 0; j < i; j++) {//内循环

   if (number[i] < number[j])//小就置换

   {

    M_num = number[i];

    number[i] = number[j];

    number[j] = M_num;

   }

  }

 }

 for (i = 0; i < 10; i++)//循环输出

  printf("%3d", number[i]);

 printf("\n");

 return 0;

}

程序运行结果如下:



扩展资料:

其他实现方法源程序:

#include<stdio.h>

 void main()

{

int t,i,j,a[10]={1,3,5,7,8.10,2,4,6,9};

for(i=1;i<10;i++)

{

 for(j=0;j<i;j++)

{

 if(a[i]<a[j])

 {

  t=a[i];

  a[i]=a[j];

  a[j]=t;

 }

 }

}

for(i=0;i<10;i++)

 printf("%3d",a[i]);

 printf("\n");

 }

qicaiwuya
推荐于2017-12-16 · TA获得超过4211个赞
知道小有建树答主
回答量:1462
采纳率:100%
帮助的人:1201万
展开全部
/*用选择排序法比较适合初学,比较容易理解 */
#include "stdio.h"
void main()
{
int i,j,a[10],temp;
printf("输入10个整数!\n");
for(i=0;i<10;i++)
scanf("%d",&a[i]);

for(i=0;i<9;i++)
for(j=i+1;j<10;j++)
if(a[i]>a[j])
{
temp=a[i];
a[i]=a[j];
a[j]=temp;
}
printf("排序后的数组为:\n");
for(i=0;i<10;i++)
printf("%d ",a[i]);
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
sun_siliang
2011-12-19 · TA获得超过2.6万个赞
知道大有可为答主
回答量:9913
采纳率:100%
帮助的人:4470万
展开全部
#include <stdio.h>
void sort(int* a, int n)
{
int t;
for (int i = 0; i < n; i++)
{
for (int j = i+1; j < n; j++)
{
if(*(a+i) > *(a+j))
{
t = *(a+i);
*(a+i) = *(a+j);
*(a+j) = t;
}
}
}
}

void output(int* a,int n)
{
for (int i = 0; i < n; i++)
printf("%d ",*(a+i));
printf("\n");
}
void input(int* a,int n)
{
for (int i = 0; i < n; i++)
scanf("%d",(a+i));
}
int main()
{
int a[10];
input(a,10);
sort(a,10);
output(a,10);
return 0;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
听雨楼之铁血
2011-12-19 · TA获得超过600个赞
知道小有建树答主
回答量:543
采纳率:0%
帮助的人:347万
展开全部
#include<stdio.h>
void main()
{ float a[10],c;
int i,b;
for(i=0;i<10;i++)
scanf("%f",a[i]);
for(i=1;i<10;i++)
for(b=1;b<i;b++)
if(a[i]>a[i-1]) c=a[i-1],a[i-1]=a[i],a[i]=c;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式