C语言。关于数组的问题。十万火急。。。
题目是:现在有一个已经排好序的数组arr[]={90,80,70,60,50}要求,输入一个数,要和数组里面的比较。然后还要按数组的顺序排列。例如输入75就要显示arr[...
题目是:
现在有一个已经排好序的数组
arr[]={90,80,70,60,50}
要求,输入一个数,要和数组里面的比较。然后还要按数组的顺序排列。
例如输入75
就要显示arr[]={90,80,75,70,60,50}
。各位高手。看到的给我解答。。谢谢了哦~~~ 展开
现在有一个已经排好序的数组
arr[]={90,80,70,60,50}
要求,输入一个数,要和数组里面的比较。然后还要按数组的顺序排列。
例如输入75
就要显示arr[]={90,80,75,70,60,50}
。各位高手。看到的给我解答。。谢谢了哦~~~ 展开
展开全部
#include <stdio.h>
void main()
{
int arr[6]={90,80,70,60,50},n,i,t;
printf("原数组为:");
for(i=0;i<5;i++)
printf("%d ",arr[i]);
printf("\n请输入一个整数:");
scanf("%d",&n);
for(i=0;i<5;i++)
if(arr[i]<n)
{
t=i;
break;
}
for(i=4;i>=t;i--)
arr[i+1]=arr[i];
arr[t]=n;
printf("排列后的数组为:");
for(i=0;i<6;i++)
printf("%d ",arr[i]);
printf("\n");
}
这样直接运行就可以了,不知道是你需要的结果吗,如果不是再联系我.
void main()
{
int arr[6]={90,80,70,60,50},n,i,t;
printf("原数组为:");
for(i=0;i<5;i++)
printf("%d ",arr[i]);
printf("\n请输入一个整数:");
scanf("%d",&n);
for(i=0;i<5;i++)
if(arr[i]<n)
{
t=i;
break;
}
for(i=4;i>=t;i--)
arr[i+1]=arr[i];
arr[t]=n;
printf("排列后的数组为:");
for(i=0;i<6;i++)
printf("%d ",arr[i]);
printf("\n");
}
这样直接运行就可以了,不知道是你需要的结果吗,如果不是再联系我.
展开全部
重复定义数组是不行的,定义两个数组是可以的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
int arr[] = {90, 80, 70, 60, 50};
int num;
scanf("%d", &num);
//存结果
int arrResult[] = (int*)malloc([sizeof(arr) + sizeof(arr[0])];
bool isSet = false;
for (int i = 0; i < sizeof(arr)/sizeof(arr[0]); i++)
{
if (num < arr[i])
arrResult[i] = arr[i];
else
{
arrResult[i] = num;
for (int j = i; j < sizeof(arr)/sizeof(arr[0]); j++)
{
arrResult[j + 1] = arr[j];
}
isSet = true;
break;
}
}
if (!isSet)
{
arrResult[sizeof(arr)/sizeof(arr[0])] = num;
}
//输出
for (int k = 0; k < sizeof(arr)/sizeof(arr[0]) + 1; k++)
{
printf("%d ", arrResult[k]);
}
int num;
scanf("%d", &num);
//存结果
int arrResult[] = (int*)malloc([sizeof(arr) + sizeof(arr[0])];
bool isSet = false;
for (int i = 0; i < sizeof(arr)/sizeof(arr[0]); i++)
{
if (num < arr[i])
arrResult[i] = arr[i];
else
{
arrResult[i] = num;
for (int j = i; j < sizeof(arr)/sizeof(arr[0]); j++)
{
arrResult[j + 1] = arr[j];
}
isSet = true;
break;
}
}
if (!isSet)
{
arrResult[sizeof(arr)/sizeof(arr[0])] = num;
}
//输出
for (int k = 0; k < sizeof(arr)/sizeof(arr[0]) + 1; k++)
{
printf("%d ", arrResult[k]);
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询