当前位置:首页 » 编程软件 » 数字排列编程

数字排列编程

发布时间: 2022-06-04 05:30:35

1. 怎样通过计算机编程将一列数从大到小排列

编程中有很多“排序”算法,比如每次把一列数循环访问一遍,记录下最大的数,输出,并从这列数中去除。如此反复,每次都取出剩余数列中最大的数,直到所有数都被输出。这列数就被从大到小排列了。这就是最简单的一种排序。

2. 数字排列组合编程

这么难

3. 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)数字排列编程扩展阅读:

代码还可以设计,如下:

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

}

4. 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;

}

(4)数字排列编程扩展阅读:

include用法:

#include命令预处理命令的一种,预处理命令可以将别的源代码内容插入到所指定的位置;可以标识出只有在特定条件下才会被编译的某一段程序代码;可以定义类似标识符功能的宏,在编译时,预处理器会用别的文本取代该宏。

插入头文件的内容

#include命令告诉预处理器将指定头文件的内容插入到预处理器命令的相应位置。有两种方式可以指定插入头文件:

1、#include<文件名>

2、#include"文件名"

如果需要包含标准库头文件或者实现版本所提供的头文件,应该使用第一种格式。如下例所示:

#include&lt;math.h&gt;//一些数学函数的原型,以及相关的类型和宏

如果需要包含针对程序所开发的源文件,则应该使用第二种格式。

采用#include命令所插入的文件,通常文件扩展名是.h,文件包括函数原型、宏定义和类型定义。只要使用#include命令,这些定义就可被任何源文件使用。

5. 数字排列(程序)怎样编

#include <iostream>

void print(int *arr, int length) {
for (int i = 0; i < length; ++i) {
std::cout << *(arr + i);
}
std::cout << std::endl;
}

void swap(int *arr1, int *arr2) {
int temp = *arr1;
*arr1 = *arr2;
*arr2 = temp;
}

void permutate(int *arr, int length, int *subArr, int subLen) {
if (subLen == 1) { print(arr, length); }
else {
for (int i = 0; i < subLen; ++i) {
swap(subArr, subArr + i);
permutate(arr, length, subArr + 1, subLen - 1);
swap(subArr, subArr + i);
}
}
}

void permutate(int *arr, int length) {
permutate(arr, length, arr, length);
}

int main()
{
int n;
std::cout << "enter a number n: (1 <= n <= 9)" << std::endl;
std::cin >> n;
int *arr = new int[n];
for (int i = 0; i < n; ++i) {
arr[i] = i + 1;
}
permutate(arr, n);
delete [] arr;
return 0;
}

6. 把 4个数字用编程大方法由大到小排序。

将四个数字用编程方法由大到小排序,程序如下:
dim a as single,b as single,c as single,d as single
a=val(inputbox("输入a:"))
b=val(inputbox("输入b:"))
c=val(inputbox("输入c:"))
d=val(inputbox("输入d:"))

if a<b then m=a:a=b:b=m
if a<c then m=a:a=c:c=m
if a<d then m=a:a=d:d=m
if b<c then m=b:b=c:c=m
if b<d then m=b:b=d:d=m
if c<d then m=c:c=d:d=m
print a,b,c,d

7. c语言编程:对10个数冒泡排序(升序)。

#include<stdio.h>

intmain(){

intnumber[10]={95,45,15,78,84,51,24,12,34,23};

for(int j=0;j< 9;j++)

for(int i=0;i< 9 -j;i++) {

if(a[i]>a[i+1]) {

int temp=a[i];

a[i]=a[i+1];

a[i+1]=temp; }

}

for(int i=0;i< 10;i++){

printf(“%d”,a[i]); }

}

插入排序

已知一组升序排列数据a[1]、a[2]、……a[n],一组无序数据b[1]、b[2]、……b[m],需将二者合并成一个升序数列。

首先比较b[1]与a[1]的值,若b[1]大于a[1],则跳过,比较b[1]与a[2]的值,若b[1]仍然大于a[2],则继续跳过,直到b[1]小于a数组中某一数据a[x],则将a[x]~a[n]分别向后移动一位,将b[1]插入到原来a[x]的位置这就完成了b[1]的插入。

b[2]~b[m]用相同方法插入。

快速排序

快速排序是大家已知的常用排序算法中最快的排序方法。已知一组无序数据a[1]、a[2]、……a[n],需将其按升序排列。首先任取数据a[x]作为基准。

比较a[x]与其它数据并排序,使a[x]排在数据的第k位,并且使a[1]~a[k-1]中的每一个数据<a[x],a[k+1]~a[n]中的每一个数据>a[x],然后采用分治的策略分别对a[1]~a[k-1]和a[k+1]~a[n]两组数据进行快速排序。

希尔排序

已知一组无序数据a[1]、a[2]、……a[n],需将其按升序排列。

首先取一增量d(d<n),将a[1]、a[1+d]、a[1+2d]……列为第一组,a[2]、a[2+d]、a[2+2d]……列为第二组……,a[d]、a[2d]、a[3d]……列为最后一组以次类推,在各组内用插入排序,然后取d'<d,重复上述操作,直到d=1。

8. C#编程,数字排序

你应该是想随便输入一些字符,在从大到小排序吧
//冒泡排序
int[] scores=new int[5];
int i, j;//循环变量
int temp;//临时变量
Console.WriteLine("输入5个数字:");
for (i = 0; i < 5; i++)
{
Console.WriteLine("输入第{0}数",i+1);
scores[i] = int.Parse(Console.ReadLine());
}
//开始排序
for (i = 0; i < scores.Length - 1;i++ )
{
//将最大元素交换到最后
for (j = 0; j < scores.Length - 1 - i; j++)
{
if (scores[j] > scores[j + 1])
{

temp = scores[j];
scores[j] = scores[j + 1];
scores[j + 1] = temp;
}
}
}
//输出结果
for (i = 0; i < 5; i++)
{
Console.WriteLine("{0}\t",scores[i]);
}
Console.ReadLine();
大到小排序也相同

热点内容
安卓和csharp哪个发展好 发布:2024-05-18 18:09:30 浏览:526
换编程题库 发布:2024-05-18 18:00:58 浏览:562
如何使用服务器ip直连网站 发布:2024-05-18 18:00:49 浏览:432
三星n7100哪个安卓版本好用 发布:2024-05-18 17:55:41 浏览:489
万国觉醒采集脚本源码 发布:2024-05-18 17:55:39 浏览:947
sqlserver加字段 发布:2024-05-18 17:54:53 浏览:928
安卓手机如何清除应用记录 发布:2024-05-18 17:31:37 浏览:639
查看存储过程权限 发布:2024-05-18 17:18:33 浏览:192
php类self 发布:2024-05-18 17:15:03 浏览:895
手机2b2t的服务器地址是多少 发布:2024-05-18 17:14:56 浏览:189