正文
c语言整型数组升序降序,c语言整型数组赋值
小程序:扫一扫查出行
【扫一扫了解最新限行尾号】
复制小程序
【扫一扫了解最新限行尾号】
复制小程序
c语言数组的排序
可以采用冒泡排序的方法。以下给题主一个对既定数组进行升序、降序排序的代码
#include stdio.h
#include time.h
#define elemType int /*元素类型*/
#define LEN 100 /*数组长度上限*/
#define ASC 0 /*升序*/
#define DESC 1 /*降序*/
/*冒泡排序*/
/*参数说明:*/
/*elemType arr[]:排序目标数组*/
/*int len:元素个数*/
/*int order:排序方式;升序(由小到大):ASC;降序(由大到小):DESC*/
void bubbleSort (elemType arr[], int len, int order) {
int i, j, temp;
for (i = 0; i len - 1; i++)
for (j = 0; j len - 1 - i; j++) {
if (order == ASC) { /*升序*/
if (arr[j] arr[j+1]) {
temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
}
}
else if (order == DESC) { /*降序*/
if (arr[j] arr[j+1]) {
temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
}
}
}
}
/*打印数组*/
void printArr (elemType arr[], int len) {
int i;
for (i=0; ilen; i++)
printf ("%d\t",arr[i]);
putchar ('\n');
}
int main (void) {
elemType arr[LEN] = {3,5,1,7,2,9,6,8,10,4};
int len;
len = 10;
puts ("初始数组:");
printArr (arr,len);
putchar ('\n');
puts ("升序排列:");
bubbleSort (arr, len, ASC); /*升序冒泡排序*/
printArr (arr,len);
putchar ('\n');
puts ("降序排列:");
bubbleSort (arr, len, DESC); /*降序冒泡排序*/
printArr (arr,len);
putchar ('\n');
getch (); /*屏幕暂留*/
return 0;
}
运行结果
C语言数组七个数升序排列和降序排列怎么编程?
1、打开visual C++ 6.0-文件-新建-文件-C++ Source File。
2、定义数组和变量:#includestdio.hmain(){char a[100], b[100], c[200], *p;int i = 0, j = 0, k = 0;。
3、输入字符串: printf("please input string a:\n");scanf("%s", a); /*输入字符串1放入a数组中*/。
4、输入字符串:printf("please input string b:\n");scanf("%s", b); /*输入字符串2放入b数组中*/。
5、给字符串进行排序。
6、链接字符串并输出:if (a[i] == '\0') /*判断a中字符是否全都复制到c中*/
p = b + j; /*p指向数组b中未复制到c的位置*/。
7、输出最后的结果。
C语言作业:编写程序实现整型数组的排序
#includestdio.h
#includestdlib.h
#define shengxu 0
void RandonArray(int a[],int n)
{
int i;
srand(time(NULL));
for(i=0;in;i++)
{
a[i]=rand();
}
}
void SortArray(int a[],int n)
{
int i,j,t;
for(i=0;in-1;i++)
{
for(j=0;jn-i-1;j++)
{
if(shengxu)
{
if(a[j]a[j+1])
{
t=a[j+1];
a[j+1]=a[j];
a[j]=t;
}
}
else
{
if(a[j]a[j+1])
{
t=a[j+1];
a[j+1]=a[j];
a[j]=t;
}
}
}
}
}
void OutputArray(int a[],int n)
{
int i;
for(i=0;in;i++)
{
printf("%d,",a[i]);
}
}
int main()
{
int i,n,*a;
char msg[]={-56,-25,-71,-5,-78,-55,-60,-55,-93,-84,-57,-21,-72,-8,-50,
-46,50,48,48,-78,-58,-72,-69,-93,-95,0};
printf("%s\n\n",msg);
printf("请输入要随机产生的数组的元素个数:");
scanf("%d",n);
a=(int*)calloc(n,sizeof(int));
RandonArray(a,n);
printf("%s排序前数组各元素的值是:\n",shengxu ? "升序" : "降序");
OutputArray(a,n);
SortArray(a,n);
printf("\n%s排序后数组各元素的值是:\n",shengxu ? "升序" : "降序");
OutputArray(a,n);
free(a);
printf("\n");
system("PAUSE");
return EXIT_SUCCESS;
}
c语言,,输入若干个整数,如何让他们安升序或降序排列,用数组做
#includestdio.h
#define N 10
void main()
{ int a[N],i,j,k;
for ( i=0;iN;i++ ) scanf("%d",a[i]);
for ( i=0;iN-1;i++ )
for ( j=i+1;jN;j++ )
if ( a[i]a[j] ) //降序,如改成 a[i]a[j]则为升序
{ k=a[i]; a[i]=a[j]; a[j]=k; }
for ( i=0;iN;i++ ) printf("%d ",a[i]);
printf("\n");
}
关于c语言整型数组升序降序和c语言整型数组赋值的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。