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

作者&投稿:曾斩 (若有异议请与网页底部的电邮联系)
C语言 从键盘上输入10个整数保存在数组中,用冒泡法排序将其按降序~


#include int main (){ int num[10],i,j,nSave; printf("输入10个数:"); for(i=0;i<10;i++) scanf("%d",&num[i]); printf("原数组:"); for(i=0;i<10;i++) printf("%d ",num[i]); printf("
"); for(i=0;i<10;i++)//冒泡 { for(j=i;j<10;j++) { if(num[i]<num[j]) { nSave=num[i]; num[i]=num[j]; num[j]=nSave; } } } printf("降序后的数组:"); for(i=0;i<10;i++) printf("%d ",num[i]); printf("
"); return 0;}

一楼,排序要用双循环才行吧
这个是调试通过的

#include

main()
{
int i,j,tmp,num[10];
printf("Input 10 numbers:");
for(i=0;i<10;i++) scanf("%d",&num[i]);
for(i=0;i<10;i++)
{
for(j=i+1;j<10;j++)
if(num[i]>num[j])
{
tmp=num[i];
num[i]=num[j];
num[j]=tmp;
}
}
//for(i=0;i<10;i++) printf("%d
",num[i]);
printf("Max:%d
Min:%d",num[9],num[0]);
}

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

#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个数组元素:
");//文字提示

 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("
");

 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("
");

 }



/*用选择排序法比较适合初学,比较容易理解 */
#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]);
}

#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;
}

#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;
}

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(){ int arr[10] = {0};int i = 0;int max = 0;int min = 0;printf("请输入10个整数:");for (i = 0; i < sizeof(arr)/ sizeof(arr[0]); i++){ scanf("%d",&arr[i]);} max = arr[0];for (i = 0; i < sizeof(arr) / ...

C语言:从键盘输入10个整数,计算它们的总和。
答:include <stdio.h>int main( ){ int i,x,s=0; for(i=0;i<10;i++) {scanf("%d",&x); s+=x; } printf("sum=%d\n",s); return 0;}

c语言:从键盘输入10个整数存入数组,并输出大于5的数
答:卫班科技:include <stdio.h> int main(void){ int array[10];for (int i = 0; i < 10; i++){ scanf("%d",&array[i]);} for (int j = 0; j < 10; j++){ if (array[j] > 5){ printf("%d\t",array[j]);} } return 0;} ...

用C语言编写:“从键盘输入10个整数,找出第一个能被7整除的数打印后退出...
答:include <stdio.h> int main(void){ int i = 0, j[10], k=0;for(i = 0; i < 10; i++) { printf("Please input a number (%d left):", 10-i);scanf("%d", &k);j[i] = k;} for(i = 0; i < 10; i++) { k = j[i] % 7;if (k == 0) { printf("#%d...

C语言,从键盘输入10个整数给一维数组a,输出这10个元素的值,求元素之...
答:include "stdio.h"void main(){ int i,b=1,a[10];for(i=0;i<10;i++)scanf("%d",&a[i]);for(i=0;i<10;i++)printf("10个数是:=%d\n",a[i]);for(i=0;i<10;i++)b*=a[i];printf("10个数的乘积=%d\n",b);} ...

C语言从键盘任意输入10个整数,编程实现将其中最大数与输出排在第一的...
答:include <stdio.h> void main(){ int a[10];int i,j,max,min,temp,m,n;printf("请输入十个整数\n");for(i=0;i<10;i++){ scanf("%d",&a[i]);} for(i=0;i<10;i++){ printf("%d ",a[i]); //要加空格 } printf("\n"); //换行 max=a[0];min=a[0];m...

C语言编程序,要求从键盘输入10个整数存入一维数组。。
答:include<stdio.h> main(){ int a[10];int i,j,t;for(i=0;i<10;i++)scanf("%d",&a);printf("\n");for(j=0;j<9;j++){ for(i=0;i<9-j;i++){ if(a>a[i+1]){ t=a;a=a[i+1];a[i+1]=t;}}} for(i=0;i<10;i++)printf("%d",a);} ...

从键盘上输入10个小于100的整数,输出偶数的个数及偶数的和!_百度知 ...
答:return 0;}程序比较简单,希望采纳哦。。include <stdio.h>#include <stdlib.h> int main(void){ int a[10]; int i;//循环变量 int n=0;//偶数个数 int m=0;//偶数和 for(i=0;i<10;i++) { scanf("%d",&a[i]); if(a[i]%2==0) { n++;...

C语言 从键盘任意输入10个整数,求10个整数的和及平均值,用do……while...
答:代码如下:#include<stdio.h> void main(){ int sum=0,i,input;double ave;for(i=1;i<=10;i++){ printf("第%2.d个:",i);scanf("%d",&input);sum+=input;} ave=(double)sum/(i-1);printf("和为:%d;平均数为:%f\n",sum,ave);getch();} ...