C语言——将用户输入的10个元素的数组中最大的与第一个元素交换,最小的与最后一个元素交换,输出数组
运行效果:请输入10个数字:3627198054交换后的结果为:9627138450请按任意键继续_最好用最基本的方法,写出代码,谢谢了!...
运行效果:请输入10个数字:3 6 2 7 1 9 8 0 5 4
交换后的结果为:9 6 2 7 1 3 8 4 5 0
请按任意键继续_
最好用最基本的方法,写出代码,谢谢了! 展开
交换后的结果为:9 6 2 7 1 3 8 4 5 0
请按任意键继续_
最好用最基本的方法,写出代码,谢谢了! 展开
2个回答
展开全部
#include <stdio.h>
#define max 10
void change(int* p)
{
int i,maxk=0,mink=0,temp; //maxk,mink分别记录着最大和最小值的下标
for(i=1;i<max;i++)
{
if(p[i]>p[maxk])
maxk=i;
if(p[i]<p[mink])
mink=i;
}
temp=p[maxk];p[maxk]=p[0];p[0]=temp;
temp=p[mink];p[mink]=p[max-1];p[max-1]=temp;
}
int main ()
{
int num[max],i;
for(i=0;i<max;i++)
scanf("%d",num+i);
change(num);
printf("交换后:\n");
for(i=0;i<max;i++)
printf("%d\t",num[i]);
printf("\n");
return 0;
}
#define max 10
void change(int* p)
{
int i,maxk=0,mink=0,temp; //maxk,mink分别记录着最大和最小值的下标
for(i=1;i<max;i++)
{
if(p[i]>p[maxk])
maxk=i;
if(p[i]<p[mink])
mink=i;
}
temp=p[maxk];p[maxk]=p[0];p[0]=temp;
temp=p[mink];p[mink]=p[max-1];p[max-1]=temp;
}
int main ()
{
int num[max],i;
for(i=0;i<max;i++)
scanf("%d",num+i);
change(num);
printf("交换后:\n");
for(i=0;i<max;i++)
printf("%d\t",num[i]);
printf("\n");
return 0;
}
展开全部
#include<stdio.h>
int main(void)
{
int a[10],i,min,max,b,c;
printf("input 10 integers:");
for(i=0;i<10;i++)
scanf("%d",&a[i]);
min=0;max=0;
for(i=1;i<10;i++)
if(a[i]<a[min])
min=i;
b=a[min];
a[min]=a[9];
a[9]=b;
for(i=1;i<10;i++)
if(a[i]>a[max])
max=i;
c=a[max];
a[max]=a[0];
a[0]=c;
for(i=0;i<10;i++)
printf("%d ",a[i]);
return 0;
}
int main(void)
{
int a[10],i,min,max,b,c;
printf("input 10 integers:");
for(i=0;i<10;i++)
scanf("%d",&a[i]);
min=0;max=0;
for(i=1;i<10;i++)
if(a[i]<a[min])
min=i;
b=a[min];
a[min]=a[9];
a[9]=b;
for(i=1;i<10;i++)
if(a[i]>a[max])
max=i;
c=a[max];
a[max]=a[0];
a[0]=c;
for(i=0;i<10;i++)
printf("%d ",a[i]);
return 0;
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询