#include "stdio.h"
int i;
int main()
{
void input(int d[10]);
void change(int b[10]);
void output(int c[10]);
int d[10];
input(d);
change(d);
output(d);
return 0;
}
void input(int d[10])
{
for(i=0;i<10;i++)
scanf("%d",&d[i]);
}
void change(int b[10])
{
int temp,m=b[0],n=b[0],s,t;
for(i=0;i<10;i++)
{
if(m>b[i+1])
{
m=b[i+1];
s=i+1;
}
if(n<b[i+1])
{
n=b[i+1];
t=i+1;
}
}
temp=b[0];
b[0]=b[s];
b[s]=temp;
temp=b[9];
b[9]=b[t];
b[t]=temp;
}
void output(int c[10])
{
for(i=0;i<10;i++)
printf("%d",c[i]);
}
请问错哪了?
#include "stdio.h"
int i;
int main()
{
void input(int d[10]);
void change(int b[10]);
void output(int c[10]);
int d[10];
input(d);
change(d);
output(d);
return 0;
}
void input(int d[10])
{
for(i=0;i<10;i++)
scanf("%d",&d[i]);
}
void change(int b[10])
{
int temp,min=b[0],max=b[0],s,t;//这里定义为min和max好区分
for(i=0;i<10;i++)
{
if(min>=b[i]) //因为你已经定义第一个元素给他了就用不着再+1了,你+1后反而会溢出
{
min=b[i];
s=i;
}
if(max<=b[i])
{
max=b[i];
t=i;
}
}
temp=b[0];
b[0]=b[s];
b[s]=temp;
temp=b[9];
b[9]=b[t];
b[t]=temp;
}
void output(int c[10])
{
for(i=0;i<10;i++)
printf("%3d",c[i]);
printf("\n");
}
c语言编程:输入10个整数,将其中最小的数与第一个数对换,把最大的数...
void input(int number[10]); \/\/此函数向首地址为number的数组输入10个元素 void max_min_value(int array[10]); \/\/此函数交换array数组的对应元素 void output(int array[10]); \/\/此函数输出array数组的10个元素 void input(int number[10]){ int i;printf("请输入十个元素:\\n"...
C语言提问:输入10个整数,将其中最小的数与第一个数对换,把最大的数...
include<stdio.h> void input(int a[10]){ int i;for (i=0;i<10;i++){ scanf("%d",&a[i]);} } void exchange(int a[10]){ int i,min,max,temp,big,small;min = max = a[0];for (i=0;i<10;i++){ if (maxa[i]){ min = a[i];small = i;} } temp=a[0];...
求教:C语言输入10个整数,将其中最小的数与第一个数字对换,把最大的数字...
include<iostream> include<cmath> using namespace std;int main(){ int b=0,c=10,i,k;int a[10]={0};\/\/用的4.9.9.2版本,数组从下标为1开始 for(i=1;i<=10;i++){ cin>>a[i];b=max(b,a[i]);c=min(c,a[i]);} a[1]=b;a[10]=c;for(k=1;k<=10;k++){ c...
C语言编程:输入十个整数,将其中最小的数和第一个数对换位置,最大...
include<stdio.h> void input(int a[10]){ int i;for(i=0;i<10;i++){ scanf("%d",&a);} } void exchange(int a[10]){ int i,min,max,temp,big,small;min=max=a[0];for(i=0;i<10;i++){ if(max<a){ max=a;big=i;} if(min>a){ min=a;small=i;} } temp=a[...
C语言,输入10个整数,将其中最小的数与第一个数对换,把最大的数与最后...
地址是array+9,所以我觉得是这里出了问题,因为p指向的array+10的地址储存的是个未知的值,下面再进行交换的时候再用*p作为中间量进行值的交换时可能就会出问题。所以我建议楼主在上面这段代码下写个:printf("now,*p=%d\\n",*p);看*p是否能够正确打印出来。再定义一个整型变量temp作为中间变量应该...
C语言:输入10个整数,将其中最小的数与第一个数对换,把最大的数与最后...
cin>>m;} void key(int*m){ int max=m[0],min=m[0],n=0,k=0,z;for(int i=1;i<10;i++){ if(max<m){ max=m;n=i;} } for(int i=1;i<10;i++){ if(min>m){ min=m;k=i;} } if(n==0&&k==9){ z=m[0];m[0]=m[9];m[9]=z;} else if(n==0&&k!
C语言。输入10个整数,将其中最小的数与第一个数对换,把最大的数与最后...
include <stdio.h>#include <stdlib.h>void deal(int a[10]){ int i,temp; int *p,*pmax,*pmin; p=pmax=pmin=a; for(i=0; i<10; i++,p++) { if(*p>*pmax) pmax=p; if(*p<*pmin) pmin=p; } temp=a[0]; a[0]=*pmin; *pmin=temp; if(pm...
C语言编程:输入十个整数,将其中最小的数和第一个数对换位置,最大...
全程用指针处理的程序:main(){int a[10],i,t;int*p,*q;printf("请在下面输入10个数字:\n");for(i=0;i<10;i++)scanf("%d",p+i);p=q=a;for(i=1;i<10;i++){if(*(a+i)<*p)p=a+i;else if(*(a+i)>*q)q=a+i;} if(p!=a){t=*a;a=*p;p=t;} if(q!=...
输入十个数,将其中最小的数与第一个数对换,把最大的数与最后一个数对 ...
a[i]);} putchar('\\n');} int main(void){ int i,a[10];for (i = 0; i < 10; i++) { scanf("%d",a+i);} chg(a,10);prt(a,10);return 0;} \/\/---
输入10个整数,将其中最小的数与第一个数对换,把最大的数与最后一个数...
int max(int x,int y);\/\/少了这两行 int min(int a, int b);int i,m,n,e,f,a[10];for(i=0;i<=9;i++)\/\/多了分号 scanf("%d",&a[i]);{ for (i=1,m=a[0];i<=9;i++)\/\/多了分号 if(max(m,a[i])>m)m=max(m,a[i]);} { for (i=1,n=a[0];i<=9...