C语言编程题目,求大神解答

2024-11-18 19:57:48
推荐回答(3个)
回答1:

#include 
void main()
{
 int i,array[10],temp;
 int max,min,max_number,min_number;
 printf("请输入一组数据(10个):\n");
 for (i=0;i<10;i++)
 {
  scanf("%d,",&array[i]);//把数采集到数组
 }
 max=array[0];
 min=array[0];
 max_number=0;
 min_number=0;
 for (i=0;i<10;i++)//找到最大值和最小值的位置
 {
  if (array[i]>max)
  {
   max_number=i;
  }
  if (array[i]  {
   min_number=i;
  }
 }
 //////////交换位置//////////////
 temp=array[min_number];
 array[min_number]=array[max_number];
 array[max_number]=temp;
 /////////////输出///////////////
 printf("结果输出\n");
 for (i=0;i<10;i++)
 {
  printf("%d",array[i]);
  if (i!=9)
  {
   printf(",");
  }
 }
 printf("\n");
}

回答2:

#include

#define LEN 10

void fun_arr(int a[],int len);
void print_arr(int a[],int len);
void exchange_value(int *a,int *b);
int main(int argc,char** argv)
{
int arr[LEN];
int i = 0;

printf("输入%d个数:",LEN);
for (i = 0; i < LEN; ++i)
{
scanf("%d",&arr[i]);
}
fun_arr(arr,LEN);
print_arr(arr,LEN);
return 0;
}

void fun_arr(int a[],int len)
{
int min = 0;
int max = 0;
int i = 0;
int j = 0;
for (i = 0; i < LEN-1; ++i)
{

for (j = i+1; j < LEN; ++j)
{
if (a[min] > a[j])
{
min = j;
}
if(a[max] < a[j])
{
max = j;
}
}
}
exchange_value(&a[min],&a[max]);
}

void exchange_value(int *a,int *b)
{
int temp ;
temp = *a;
*a = *b;
*b = temp;
}

void print_arr(int a[],int len)
{
int i = 0;
for (i = 0; i < len; ++i)
{
printf("%d\t",a[i]);
}
}

回答3:

东方方法