C语言编程题,数组a中有15个元素,键盘输入,并冒泡法有小到大排序

作者&投稿:鄘毕 (若有异议请与网页底部的电邮联系)

#include<stdio.h>

void main()

{

int a[15],i,j,temp;

printf("Input 15 numbers:
");

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

scanf("%d",&a[i]);

for(i=0;i<14;i++)//冒泡排序

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

if(a[j]>a[j+1])

{

temp=a[j];

a[j]=a[j+1];

a[j+1]=temp;

}

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

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

printf("
");

}



#include <stdio.h>
void main()
{
int a[15];
int t,i,j;
printf("Please Input 15 numbers:");
printf("\n");
for(i=0;i<15;i++)
scanf("%d",&a[i]);
printf("\n");
for(i=0;i<14;i++) //让i-1个大数 “沉底”
for(j=0;j<14-i;j++)
{
if(a[j]>a[j+1])
{
t=a[j];
a[j]=a[j+1];
a[j+1]=t;
}
}
printf("Sorted array as below:\n");
for(i=0;i<15;i++)
printf("%d ",a[i]);
}

-----祝你好运!!

基本思想:
从第一个元素开始,对数组中的两两相邻元素进行比较,将数值小的元素放在前面,一轮比较完毕,一个最大的数沉底 -- 成为数组中的最后的一个元素,一些小的数如同气泡一样上浮一个位置,经过多轮比较完成排序

5分 也不好得啊~~

#include<stdio.h>
void sort(int a[])
{
int i,j;
int temp;
for(i=0;i<15;i++)
{
for(j=i+1;j<15;j++)
{
if(a[j]<a[i])
{
temp=a[i];
a[i]=a[j];
a[j]=temp;
}
}
}
}
int main()
{
int a[16];
int i;
printf("请输入你要输入的数:\n");
for(i=0;i<15;i++)
{
scanf("%d",&a[i]);
}

sort(a);

printf("由小到大排序为:\n");
for(i=0;i<15;i++)
{
printf("%d\n",a[i]);
}

return 0;
}

#include<stdio.h>
void main()
{
int a[15],i,n,temp;
for(i=0;i<15;i++)
scanf("%d",&a[i])
for(i=0;i<15;i++)
{
for(n=i+1;n<15;n++)
if(a[i]<a[n])
{
temp=a[i];
a[i]=a[n];
a[n]=temp;
}
}
for(i=0;i<15;i++)
prntf("%d\t",a[i])
}

c语言-京东精心选好书,为您呈现美好时光!~

C语言编程题,数组a中有15个元素,键盘输入,并冒泡法有小到大排序
答:void main(){ int a[15],i,j,temp;printf("Input 15 numbers:\n");for(i=0;i<15;i++)scanf("%d",&a[i]);for(i=0;i<14;i++)//冒泡排序 for(j=0;j<14-i;j++)if(a[j]>a[j+1]){ temp=a[j];a[j]=a[j+1];a[j+1]=temp;} for(i=0;i<15;i++)printf("...

编写程序,定义一个含有15个元素的数组,用随机函数给各元素赋值,然后每...
答:int main(){ int i;float a[15];srand(time(NULL));for (i = 0; i < 15; i++)a[i] = rand()%100+1;for (i = 0; i < 15; i++){ printf("%.2f\t", a[i]);if ((i + 1) % 3 == 0)printf("\n");} return 0;} ...

编写一个程序,要求从键盘输入一个包含15个元素的整型数组,计算数组元素...
答:include <stdio.h>#include <math.h>void main(){int a[15]={0},b[15]={0};for(int i=0,sum=0,min=32767,j=0;i<15;i++){scanf("%d",&a[i]);if(a[i]<min){j=0;b[j]=i;min=a[i];}else if(a[i]==min){j++;b[j]=i;}sum+=a[i];}printf("平均值为:%.4...

C语言题目:编写程序,定义一个含有15个元素的数组,并编写函数分别完成以 ...
答:include <stdio.h>#include <stdlib.h>#include <time.h>#define M 15#define B 3void getfun(int *, int *, int);void outfun(int *, int);int main(){ int arr[M], sumarr[M / B] = {0}; srand((int)time(0)); getfun(arr, sumarr, M); outfun(sumarr, ...

C语言:①题目:编写程序,定义一个含有15个元素的数组,并编写函数分别完成...
答:include<stdlib.h> define M 15 void getx(int *s);void putx(int s[]);int sum(int x,int s[]);main(){ int x[M]={0},i;getx(x);putx(x);for(i=0;i<15;i++)printf("%d ",x[i]);printf("\n");for(i=0;i<15;i++)printf("%d ",sum(i,x));system("PAUSE...

C语言设计题:有15个数存放在一个数组中,输入一个数要求用折半查找法...
答:/ 你好:折半查找法找出该数是数组中的 第几个 元素的值 这个要找的值是数组元素排序之后的位置 还是排序之前的 因为折半查找要求数组是有顺序的 我调好了一个输出的是排序之后的 先让你看看结果,如果是你要的,我在给你代码 呵呵 /

C语言题:有15个数,乱序的,存放在一个数组中,输入一个数,要求找出该数是...
答:void main(){ int a[15]={15,14,13,12,11,10,9,8,7,6,5,4,3,2,1};int i,left=0,right=14,flag=0,d,mid;printf("输入数值:");scanf("%d",&d);if(d < a[14]||d >a[0]){ printf("\nchon gxin:");scanf("%d",&d);} for(i=1;i <5;i++) //16个最多...

C++:有15个数按又大到小顺序放在一个数组中,输入一个数,要求用折半法查...
答:比如上题,要在一个15个元素的递增数组S中查找数值A,查找范围是S[0]-S[14],那么首先是找出中间点S[7]作比较,如果S[7]等于A就是找到了,如果S[7]大于A,则说明A在S[0]-S[6]之间;反之,如果S[7]小于A,则说明A在S[8]-S[14]之间,然后再重复上述步骤,找出范围内的中间点进行...

已知数组A中包含15个互不相等的无符号字节数据,数组B中有20个互不相等...
答:MOV CX,20;初始化数组B MOV BX,OFFSET B MOV AL,30 NEXT1:MOV [BX],AL INC AL INC BX LOOP NEXT1 MOV BX,OFFSET CC MOV DL,15 MOV SI,OFFSET A SCAN_NEXT:MOV AL,[SI]MOV CX,20 MOV DI,OFFSET B REPNE SCASB;查找数组A和数组B共同的数据 JNZ NO_EQU MOV [BX],AL;保存在数组...

编程:有15个数按由大到小顺序存放在一个数组中,输入一个数,要求用折...
答:int main(){ int n[15] = {99, 97, 87, 76, 65, 63, 59, 58, 51, 43, 32, 31, 28, 15, 6};int num, low, high, mid;for (low=0, high=14, printf("Please enter number: "), scanf("%d", &num); low<=high;){ mid=(low+high)/2;if (num>n[mid]) high=mid...