C语言 位数大小排序

2022-05-20 17:42:26   第一文档网     [ 字体: ] [ 阅读: ] [ 文档下载 ]
说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。下载word有问题请添加QQ:admin处理,感谢您的支持与谅解。点击这里给我发消息

#第一文档网# 导语】以下是®第一文档网的小编为您整理的《C语言 位数大小排序》,欢迎阅读!
位数,排序,大小,语言

1. 位数大小排序

子函数功能说明:输入一个五位整数,对此整数中的五个数值进行从大到小的顺序排序,形成一个新的五位整数。同时需要编写主函数和其它相关子函数进行调试。

主要算法思想:将输入的五位数分解出五个数,利用数组把五个数从小到大排序,然后组和 成新的五位数。建立子函数f1求新五位数。

关键数据类型:x(输入的五位数),y(新的五位数)都是 long int 算法框图:主函数 子函数

开始

开始

i=0

x





输入五位数xi<5



求新x

i=0j=0

return x结束



输出原五位数

x

i<5



i<5-i



a[j]>a[j+1]

i++

调用子函数f1

X[i]=x%10X=x/10





输出新五位数y

i++

aj]a[j+1]交换

j++





结束





源代码:

#include

/*子函数求新的五位数*/ long f1(long x){ int a[5],i,j,t; for(i=0;i<5;i++) /*提取五个数字*/ {a[i]=x%10;x=x/10;} for(i=0;i<5;i++) /*从小到大排列数字*/ for(j=0;j<5-i;j++) if(a[j]>a[j+1]) {t=a[j];a[j]=a[j+1];a[j+1]=t;} x=10000*a[4]+1000*a[3]+100*a[2]+10*a[1]+a[0];/*求和组成新五个数字*/ return x; }

main(){ long x,y; printf("输入一个五位数:");


}

scanf("%ld",&x);

printf("\n原五位数:%ld",x); y=f1(x); /* 调用子函数*/ printf("\n新五位数:%ld",y);

调试、运行情况正常,如输入14253,则输出:原五位数:14253 新五位数:54321




本文来源:https://www.dywdw.cn/a65e6e204b35eefdc8d33390.html

相关推荐
推荐阅读