fun(int *a,int n){int i,j=0,p; p=j; for(i=j;i<n;i++) if(a[i]<a[p])___; p=i; return(p);} 最小值所在

如题所述

第1个回答  2012-02-14
// 返回整形数数组a中的最小值。
int fun(int *a,int n) {
int i,j = 0,p;
p = j;
for(i = j;i < n;i++)
if(a[i] < a[p]) p = i;
return(p);
}追问

应该是p=i

追答

是的,注意语句尾部要分号“;”。

追问

#include
main()
{char a[]="morning",t; int i, j=0;
for(i=1;i<7;i++) if(a[j]<a[i]) j=i;
t=a[j];a[j]=a[7]; a[7]=a[j];
puts[a];
}求结果

追答

for()循环结束后,j指向具有最大ASCII值的元素'r’,接下来要与a[7]交换,a[7] = '\0',交换后的数组为mo\0ning,所以输出结果是:mo。

...*a,int n){int i,j=0,p; p=j; for(i=j;i<n;i++) if(a[i]<a[p...
\/\/ 返回整形数数组a中的最小值。int fun(int *a,int n) { int i,j = 0,p;p = j;for(i = j;i < n;i++)if(a[i] < a[p]) p = i;return(p);}

...i,j=0,p; p=j; for(i=j;i<n;i++) if(a[i]<a[p]) p=i; return(p...
int a,就是机器入口,进入这个机器的数据只能是int类型的。fun函数对传进的参数进行处理,再输出来,输出就用return 返回。表示输出。所以,return 表示函数处理的结果输送出来。fun 的前面用了int修饰,表示返回的数据是int类型。

...fun(int *a,int i,int j) { int t; if(i<j) { t=a[i];a[i]=a[j...
开过程是从数组指定两位置开始比较大小,按降序两两交换,交换完毕后分别向中间逼近再重复。你问的为什么数组能带进去指针是你理解错了,数组名a可以用来表示数组的初始地址,数组按顺序存储在一片内存上,a是个地址,*a地址指的内容。

void fun(int *a,int n) { int i,j,k,t; for(i=0;i<n-1;i+=2) { k...
void fun(int *a,int n){ int i,j,k,t;for(i=0;i<n-1;i+=2){ k=i;for(j=i;j<n;j+=2) \/这是一个for循环 if(a[j]>a[k]) k=j; \/比较a[j]、a[k],若a[j]>a[k],则把j赋给k t=a[i]; a[i]=a[k]; a[k]=t; \/进行传值 } } main(){ int...

C语言编码题:输入一个整型数组,数组元素有正数有负数。数组中连续的一...
void fun(int *a, int n) \/\/ 数组,长度 { int maxSum=a[0];int p0=0, p1=0;int i,j,sum;for (i=0; i<n; i++){ sum=0;for (j=i; j<n; j++){ sum+=a[j];if (sum>maxSum){ maxSum=sum;p0=i;p1=j;} } } while (p0<p1) printf("%d," a[p0++]);pr...

c++问题 2. 编写程序,输入一个6×6的二维整型数组,并输出该数组的平均值...
std;void fun(int *a[],int n){int i,j;for(i=0;i<n;i++)for(j=0;j<6;j++)cin>>a[i][j];}void show(int *a[],int n){int max,min;double aver=0,sum=0;max = min = a[0][0];for(int i=0;i<n;i++)for(int j=0;j<6;j++){sum=sum+a[i][j];...

...fun(int *a,int n) int i,j,k,t; for(i=0;i<n-1;i+=2)
if(a[j]>a[k]){ k=j;t=a[i];a[i]=a[k];a[k]=t;} 如上 加一个{}就行了

c语言 请编写函数fun
void fun(int *a,int *n){ int i,j=0;for(i=2;i<100;i++)if((i%7==0||i%11==0)&&i%77!=0)\/\/应该改为&&,&是二进制的与操作 a[j++]=i;n=j;} void main(){ int a[50];int n;fun(a,&n);for (int i=0;i!=n;++i){ if (i%5==0&&i!=0){ printf("\\n...

void fun(int *a,int i,int j) { int t; if(i<j) { t=a[i];a[i]=a...
void fun(int *a,int i,int j){ int t;if(i<j){ t=a[i];a[i]=a[j];a[j]=t;i++;j--;for(i=0;i<4;i++)是不是某种排序算法,似乎是从两边开始的,好像是快速排序。

...n, int *a) {int i, j, p, t; for (j = 0; j<n-1 ; j++
fun函数负责排序,putarr函数负责输出 fun (int n, int *a) \/\/接受main函数传进来的参数 {int i, j, p, t; \/\/设置临时变量 \/\/开始2个循环 for (j = 0; j<n-1 ; j++) \/\/取数组元素的第一个元素做为比较的第一个数(这样说有局限性,因为是循环哦,不过容易理解){p = j...

相似回答