C语言的题~帮帮忙~急

来源:百度知道 编辑:UC知道 时间:2024/06/08 18:28:30
设有一数列,包含10 个数,已按升序排好。现要求编一程序,它能够把从指定位置开始的n个数按逆序重新排列并输出新的完整数列。进行逆序处理时要求使用指针方法。(例如:原数列为2,4,6,8,10,12,14,16,18,20,若要求把从第4个数开始的5个数按逆序重新排列,则得到新数列为2,4,6,16,14,12,10,8,18,20。)

这种问题我建议你自己去做一下,这是迟早都要锻炼的。

#include <stdio.h>

int main()
{
int a[10]={2,4,6,8,10,12,14,16,18,20};

int i;
for(i=3;i<(3+5)/2;i++)
{
int t=a[i];
a[i]=a[10-i];
a[10-i]=t;
}

for(i=0;i<10;i++)
{
printf("%d ",a[i]);
}

printf("\n");
return 0;
}

#include <stdio.h>

void main()
{
int i,j,k,data1,data2,temp;
int a[10]={2,4,6,8,10,12,14,16,18,20};
printf("Please input you want begain sit:");
scanf("%d",&data1);
printf("input the end sit:");
scanf("%d",&data2);
for(i=data1-1;i<data2+data1-1;i++)
{
for(j=i;j<data1+data2;j++)
{
if(a[j]>a[i])
{
temp=a[i];
a[i]=a[j];
a[j]=temp;
}
}
}
for(i=0;i<10;i++)