C语言编程题目 对已知整数数组a[]的元素按从小到大的顺序连续编号(即,值相同的元素有相同编号),
答案:1 悬赏:40 手机版
解决时间 2021-01-31 11:23
- 提问者网友:謫仙
- 2021-01-31 00:20
C语言编程题目 对已知整数数组a[]的元素按从小到大的顺序连续编号(即,值相同的元素有相同编号),
最佳答案
- 五星知识达人网友:痴妹与他
- 2021-01-31 01:49
//思路:用指针数组进行排序,保存排序后的下标到c中。即a[c[0:N-1]]是升序的
// 然后依次比较c[i]为下标的有序数组a[c[0:N-1]]的各元素,进行顺序编号
#include
#include
#include
#define N 10
void printIntArr(int a[], int n);//打印整型跟数组a的前n个值
//交换两个int*型指针的值
void swap2intPointer(int **x, int **y){
int *temp = *x;/
//最后一步:进行记录
i=0;
j=1;
while(i {
while(i {
b[c[i]]=j;
i++;
}
b[c[i]]=j++;
i++;
}
if(a[c[N-2]]!=a[c[N-1]])
b[c[N-1]]=j;
//打印数组元素大小编号
printf("原来数组元素的大小编号:
");
for(i=0;i {
printf("%3d ",b[i]);
}
puts("
");
return 0;
}
//打印整型数组a的前元素
void printIntArr(int a[], int n)
{
if(n<=0) return;
for(int i=0;i printf("%3d ", a[i]);
putchar('
');
return;
}
// 然后依次比较c[i]为下标的有序数组a[c[0:N-1]]的各元素,进行顺序编号
#include
#include
#include
#define N 10
void printIntArr(int a[], int n);//打印整型跟数组a的前n个值
//交换两个int*型指针的值
void swap2intPointer(int **x, int **y){
int *temp = *x;/
//最后一步:进行记录
i=0;
j=1;
while(i
while(i
b[c[i]]=j;
i++;
}
b[c[i]]=j++;
i++;
}
if(a[c[N-2]]!=a[c[N-1]])
b[c[N-1]]=j;
//打印数组元素大小编号
printf("原来数组元素的大小编号:
");
for(i=0;i
printf("%3d ",b[i]);
}
puts("
");
return 0;
}
//打印整型数组a的前元素
void printIntArr(int a[], int n)
{
if(n<=0) return;
for(int i=0;i
putchar('
');
return;
}
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯