c语言编译大小顺序
㈠ 用c语言比较三个数的大小,并按照从大到小排序
#include <stdio.h>
#include <math.h>
int main(void)
{
int a,b,c;
printf("请输入任意三个整数a,b,c:");
scanf("%d%d%d",&a,&b,&c);
int s;
if(a>b)s=a,a=b,b=s;//比较a,b大小,通过赋值,使得a<b 。此语句目的:a<b
if(a>c)s=a,a=c,c=s;//进一步比较a,c大小,通过赋值得出最小值,并赋给a; 此语句目的:a<c
if(b>c)s=b,b=c,c=s;//最后比较出b,c中的较大值。
printf("从大到小的顺序依次是:%d%d%d",c,b,a);
return 0;
}
㈡ 如何用C语言编译使a,b,c三个数按大小顺序输出
冒泡排序多少个都能排,这个是由小到大排
# include <stdio.h>
# include <malloc.h>
//输入数组
void input(float * pArr, int len)
{
int i = 0;
for (i=0; i<len; ++i)
{
printf("请输入第%d个数: ", i+1);
scanf("%f", &pArr[i]);
}
return;
}
//排序 冒泡法
void sort (float * a, int len)
{
int i, j, t;
for (i=0; i<len-1; ++i)
{
for (j=0; j<len-1-i; ++j)
{
if (a[j]>a[j+1])
{
t = a[j];
a[j] = a[j+1];
a[j+1] = t;
}
}
}
return;
}
int main (void)
{
float *p;
int m,len, i;
char ch;
do{
printf("请输入您要排序数字的个数: ");
scanf("%d", &len);
p = (float *)malloc(len*sizeof(float));//动态内存放p数组
input(p, len);
sort(p, len);
for (m=0; m<len; ++m)
printf("%f ", p[m]);
printf("\n");
free(p);
printf("请问是否继续?Y/N ");
scanf(" %c", &ch);
}while ('Y' == ch || 'y' == ch);
return 0;
}
㈢ C语言如何输入十个数,按从大到小顺序排列!
用选择排序法编写c语言,实现从键盘上输入10个数,按从大到小的顺序排序输出。代码如下:
#include<stdio.h>
int main()
{
int i,j,a[10],t;
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++)
printf("%2d", a[i]);
return 0;
}
(3)c语言编译大小顺序扩展阅读:
代码还可以设计,如下:
#include<stdio.h>
int main()
{
int a[10],i,j,t;//定义数组;
for(i=0;i<10;i++){
scanf("%d",&a[i]);//给数组赋值;
}
for(i=0;i<9;i++)//10个数,进行9轮比较;
for(j=0;j<10-i;j++){//第一个数比较9次,依次递减;
if(a[j]>a[j+1]) {//交换值;
t=a[j];
a[j]=a[j+1];
a[j+1]=t;
}
}
for(i=0;i<10;i++){
printf("%d ",a[i]);//输出数组的值;
}
return 0;
}
}
printf("the sorted numbers: ");
for(i=0;i<10;i++)
printf(" %d",a[i]);
printf(" ");
}
㈣ 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语言程序,把一个数组按从小到大的次序排列起来
源程序以及算法注释如下:
#define _CRT_SECURE_NO_WARNINGS//VS编译环境需要进行宏定义,VC6.0可忽略
#include<stdio.h>//输入输出头文件
int main()
{
int number[10], New_number[10];//定义数组的数据类型为整型
int i, j, m, n, k;//定义变量的数据类型为整型
printf("input 10 <int> number:");//文字提示
for (i = 0; i <= 9; i++)//用循环输入数值给数组number并赋给数组New_number
{
scanf("%d", &number[i]);//输入10个整形数字到数组中
New_number[i] = number[i];//数组number元素赋给数组New_number
}
for (n = 0; n <= 8; n++)//要进行(10-1)组比较
for (j = 0; j <= 8 - n; j++)//每组进行(10减第几组)次比较
{
if (number[j] > number[j + 1])//比较大小并将小的赋给前面的数组
{
k = number[j];//将相对较大的元素赋值给中间元素
number[j] = number[j + 1];//将相对较小的元素送达前面一个位置
number[j + 1] = k;//将中间变量元素送给后面一个位置
}
if (New_number[j] < New_number[j + 1])//比较大小并将大的赋给前面的数组
{
k = New_number[j + 1];//将相对较小的元素赋值给中间元素
New_number[j + 1] = New_number[j];//将相对较大的元素送达前面一个位置
New_number[j] = k;//将中间变量元素送给后面一个位置
}
}
printf("min-->max:
");//文字提示
for (m = 0; m <= 9; m++)//依次从小到大输出
printf("%d ", number[m]);//输出元素
printf("
");
printf("max-->min:
");//文字提示
for (m = 0; m <= 9; m++)//依次从大到小输出
printf("%d ", New_number[m]);//输出元素
printf("
");
return 0;
}
程序运行结果如下:
(5)c语言编译大小顺序扩展阅读:
其他简单实现程序:
#include<stdio.h>
int main()
{
int a[10]={0};
int i,j,temp;
for(i = 0;i<10;i++)
{
scanf("%d",&a[i]);
}
for(i = 0;i<10;i++)
{
for(j = 0;j<10-i-1;j++)
{
if(a[j]>a[j+1])
{
temp = a[j];
a[j] = a[j+1];
a[j+1] = temp;
}
}
}
for(i = 0;i<10;i++)
printf("%d ",a[i]);
return 0;
}
㈥ C语言中要把三个数从大到小排列出来应该怎么编
初学简单版本代码如下:
#include<stdio.h>
int main( )
{
int a, b, c;//定义三个数的变量
int t ;//定义作为交换的变量
scanf ( "%d%d%d" , &a, &b, &c ) ; //取值
if ( a < b )
{t = a; a = b; b = t ;};//如果a,b,进行交换,反之不动
if ( a < c )
{t = a; a = c; c = t ;};//同上
if ( b < c )
{t = b; b = c; c = t ;};
printf( "%-5d%-5d%-5d " , a, b, c);//输出
}
(6)c语言编译大小顺序扩展阅读:
C语言中其他多个数排序的方法:
1、冒泡排序法
#include <stdio.h>
#define SIZE 8
void bubble_sort(int a[], int n);
void bubble_sort(int a[], int n)
{
int i, j, temp;
for (j = 0; j < n - 1; j++)
for (i = 0; i < n - 1 - j; i++)
{
if(a[i] > a[i + 1])
{
temp = a[i];
a[i] = a[i + 1];
a[i + 1] = temp;
} } }
int main()
{
int number[SIZE] = {95, 45, 15, 78, 84, 51, 24, 12};
int i;
bubble_sort(number, SIZE);
for (i = 0; i < SIZE; i++)
{
printf("%d ", number[i]);
}
}
2、选择排序
#include<stdio.h>
void main()//主函数
{
int a[10];
int i,j,w;
printf("请输入10个数字: ");
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])//进行比较
//比较后进行交换
{
w=a[i];
a[i]=a[j];
a[j]=w;
}
㈦ C语言编程:三个字符串按大小顺序排列
#include<stdio.h>
#include<string.h>
#include<search.h>
structs_len{
intelem;intlen;
};
intcomp(constvoid*a,constvoid*b)
{
return((s_len*)a)->len<((s_len*)b)->len?1:-1;
}
intmain()
{
charword[3][20];
intlen,len_max;
unsignedintmax=0;
s_lenwlen[3];
for(len=0;len<3;len++)
{
gets(word[len]);
wlen[len].elem=len;
wlen[len].len=strlen(word[len]);
}
qsort(wlen,3,sizeof(s_len),comp);
for(len=0;len<3;len++)
{
printf("%s ",word[wlen[len].elem]);
}
return0;
}
㈧ c语言编程: 将一组数按从大到小的顺序排序
以下是输入10个整数按从大到小排序后再插入一个整数的程序。
#include <stdio.h>
int main(void)
{
int i,j,temp,sz[50];
for(i=0;i<10;i++)
{
printf(" 请输入第 %d 个整数:",i+1);
scanf("%d",&sz[i]);
}
for(i=0;i<9;i++)
for(j=i+1;j<10;j++)
if(sz[i]<sz[j])
{
temp=sz[i];
sz[i]=sz[j];
sz[j]=temp;
}
printf(" 10个整数按从大到小排序:");
for(i=0;i<10;i++)
printf(" %d",sz[i]);
printf("
请输入需要插入的整数:");
scanf("%d",&temp);
j=10;
for(i=9;i>=0;i--)
if(temp>sz[i])
j--;
if(10-j>0)
for(i=9;i>j-1;i--)
sz[i+1]=sz[i];
sz[j]=temp;
printf(" 插入整数 %d 后的数组:",temp);
for(i=0;i<11;i++)
printf(" %d",sz[i]);
return 0;
}
㈨ c语言编程: 将一组数按从大到小的顺序排序
#include <stdio.h>
main()
{
int x;
printf("请输入要排序数字个数:");
scanf("%d",&x);
int i,j,k,a,b,num[x];
printf("输入数据:");
for(i=0;i<x;i++)
scanf("%d",&num[i]);
for(j=0;j<x;j++)
{
for(k=j+1;k<x;k++)
if(num[k]>num[j])
{
a=num[j];
num[j]=num[k];
num[k]=a;
}
}
for(b=0;b<x;b++)
printf("%d ",num[b]);
return 0;
}
(9)c语言编译大小顺序扩展阅读:
include用法:
#include命令预处理命令的一种,预处理命令可以将别的源代码内容插入到所指定的位置;可以标识出只有在特定条件下才会被编译的某一段程序代码;可以定义类似标识符功能的宏,在编译时,预处理器会用别的文本取代该宏。
插入头文件的内容
#include命令告诉预处理器将指定头文件的内容插入到预处理器命令的相应位置。有两种方式可以指定插入头文件:
1、#include<文件名>
2、#include"文件名"
如果需要包含标准库头文件或者实现版本所提供的头文件,应该使用第一种格式。如下例所示:
#include<math.h>//一些数学函数的原型,以及相关的类型和宏
如果需要包含针对程序所开发的源文件,则应该使用第二种格式。
采用#include命令所插入的文件,通常文件扩展名是.h,文件包括函数原型、宏定义和类型定义。只要使用#include命令,这些定义就可被任何源文件使用。
㈩ c语言编译顺序问题
这个程序是冒泡排序法,循环是嵌套循环,里面的一个for注意是 for(j=i+1;j<=9;j++),也就是每次外面的for运行一次,里面的循环次数就少一次。每次外面的for循环一次就把最大的一个值放前面,该值后面的数再排序,就像冒泡一样。具体的你看看冒泡排序法的介绍。