c语言abc排序
⑴ c语言题:对A,B,C三个整数按照从大到小的方法进行排序
#include<stdio.h>
intmain(void)
{
inta,b,c;
printf("请输入三个数:");
scanf("%d%d%d",&a,&b,&c);
if(a<b)
{
intc;
c=a;
a=b;
b=c;
}
if(b<c)
{
inta;
a=b;
b=c;
c=b;
}
printf("%d %d %d ",a,b,c);
return0;
}
⑵ c语言:3个数abc,按大小顺序输出
代码如下:
#include <stdio.h>
int main()
{
int t,a,b,c;
scanf("%d%d%d",&a,&b,&c);
if(a<b)
{
t=a,a=b,b=t;
}
if(a<c)
{
t=a,a=c,c=t;
}
if(b<c)
{
t=b, b=c, c=t;
}
printf("%d %d %d
",a,b,c);
return 0;
}
原理就是运用冒泡算法,把最大的数浮在最上面,而小的数就下沉,最后就输出。
拓展资料:
1、冒泡排序(Bubble Sort),是一种计算机科学领域的较简单的排序算法。
2、它重复地走访过要排序的元素列,一次比较两个相邻的元素,如果他们的顺序(如从大到小、首字母从A到Z)错误就把他们交换过来。走访元素的工作是重复地进行直到没有相邻元素需要交换,也就是说该元素已经排序完成。
3、这个算法的名字由来是因为越大的元素会经由交换慢慢“浮”到数列的顶端(升序或降序排列),就如同碳酸饮料中二氧化碳的气泡最终会上浮到顶端一样,故名“冒泡排序”。
资料来源:网络:冒泡排序
⑶ C语言ABC三个数从小到大排序
你好!
请参考:先输入有几个数参加排序,你也可以直接三个数排序的……
#include<stdio.h>
void main()
{
int q;
printf("请输入要排序的数字的个数:");
scanf("%d",&q);
int a[q];
int i,j,t;
printf("%d个数字排序。\n\n\n\n\nPlease input %d numbers:",q,q);
for(i=0;i<q;i++)
scanf("%d",&a[i]);
printf("\n");
for(j=0;j<q;j++)
for(i=0;i<q-j;i++)
if(a[i]>a[i+1])
{
t=a[i];
a[i]=a[i+1];
a[i+1]=t;
}
printf("排序好的数组为:\n");
for(i=0;i<q;i++)
printf("%d ",a[i]);
printf("\n");
}
⑷ c语言入门,把abc三个数从大到小排列。这段代码哪里出错了
scanf("%d%%d%d",&a,&b,&c);//多了一个%号
⑸ 输入3个整数abc,怎么用C语言从大到小排列输出
详细如下:
# include<stdio.h>
int main (void)
{ int a,b,c,t;
printf("请输入三个任意整数: ");
scanf("%d %d %d",&a, &b, &c);
if(a<b)
{ t = a;
a = b;
b = t;
}
if(a<c)
{
t = a;
a = c;
c = t;
}
if(b<c)
{
t = b;
b = c;
c = t;
}
printf("最大值:%d 最小值:%d %d",a,c);
}
希望能帮到你。
⑹ c语言 求abc按大小顺序排列,哪里错了呀,123输入就好,321输入就乱码,132输入就不对
你忘了在每一个if下面把那些交换的语句用{}括起来了,你应该
if (a<b)
{
d=a;
a=b;
b=c;
}
这样,把其他的if下面的也像这样用{}括起来
⑺ 用c语言对三个整数abc进行排序并输出
#include<stdio.h>//麻烦了一点,但是好理解。
int main()
{
int a,b,c;
scanf("%d %d %d",&a,&b,&c);
if(a>=b&&a>=c)
{
if(b>=c) printf("%d%d%d\n",a,b,c);
else printf("%d%d%d\n",a,c,b);
}
if(b>a&&b>=c)
{
if(a>=c) printf("%d%d%d\n",b,a,c);
else printf("%d%d%d\n",b,c,a);
}
if(c>b&&c>a)
{
if(b>=a) printf("%d%d%d\n",c,b,a);
else printf("%d%d%d\n",c,a,b);
}
return 0;
}
⑻ 编写一个C语言,输入abc,将他们从大到小排序输出
#include <iostream>
#include<stdio.h>
int main(){
int a,b,c,temp;
printf("请输入三个数abc:");
scanf("%d%d%d",&a,&b,&c);
if( b>a ){
temp = a;
a = b;
b = temp;
}
if( c>a ){
temp = a;
a = c;
c = temp;
}
if( c>b ){
temp = b;
b = c;
c = temp;
}
printf("从大到小排序:");
printf("%d %d %d",a,b,c);
system("pause");
return 0;
}
⑼ C语言 输入abc三个数,怎么从小到大输出
问题:输入三个数a,b,c,把其中的最大值赋值给c,中间赋值给b,最小值赋值给a。输出a,b,c。
参考代码:
#include"stdio.h"
intmain()
{
inta,b,c,max,min;
scanf("%d%d%d",&a,&b,&c);
if(a>b){
max=a;
min=b;
}
else{
max=b;
min=a;
}
if(c>max)max=c;
if(min>c)min=c;
b=a+b+c-max-min;
c=max;
a=min;
printf("从大到小排序:%d%d%d ",a,b,c);
}
/*
运行结果:
312
从大到小排序:123
*/
⑽ C语言:输入10个数依次从大到小排序!
用数组来存放十个数字,使用“冒泡排序”来实现排序。10个数字需进行9轮扫描,每次扫描时比较相邻的二个数,如它们不符合要求的大小关系,就交换它们的位置。第一轮扫描结束时,最大的数就“沉”到最后。于是第二的范围就少了一个数。再进行第二两栖型、第三轮,…——直到第9轮就完成了。最后输出结果。
#include<stdio.h>
int
main()
{
int
a[10],i,j,t;
printf("请输入10个整数:\n");
for(i=0;i<10;i++)
scanf("%d",&a[i]);
for(i=0;i<9;i++)
for(j=0;j<9-i;j++)
if(a[j]>a[j+1])
{
t=a[j];
a[j]=a[j+1];
a[j+1]=t;
}
printf("排序以后的数:\n");
for(i=0;i<10;i++)
printf("%d
",a[i]);
printf("\n");
system("pause");
return
0;
}
如果要从大到小排,只要把上面的交换条件
if(a[j]>a[j+1])换为
if(a[j]<a[j+1])就可以了。