訪問數(shù)組元素是間接訪問
//輸入數(shù)組各元素
//一個(gè)形參是數(shù)組初澎,一個(gè)是數(shù)組的長度
void getArray(int a[],int n)
{
int i;
for(i=0;i<n;i++)
{
scanf("%d",&a[i]);
}
}
void putArray(int a[],int n)
{
int i;
for(i=0;i<n;i++)
{
printf("%d",a[i]);
}
}
int main()
{
int a[8];
getArray(a,8);
putArray(a,8);
}
int main()
{
int a[8];
getArray(a,8);
putArray(a,8);
adjust(a,8);
putArray(a,8);
}
void getArray(int a[],int n)
{
int i;
for(i=0;i<n;i++)
{
scanf("%d",&a[i]);
}
}
void putArray(int a[],int n)
{
int i;
for(i=0;i<n;i++)
{
printf("%4d",a[i]);
}
printf("\n");
}
//將長度為n的數(shù)組,掃描數(shù)組然后找出最大和最小值的下標(biāo)
//最小值和首元素交換
//最大元素和最后元素交換
void adjust(int a[],int n)
{
int maxIdx=0,minIdx=0; //定義存儲(chǔ)最值的下標(biāo)
int i;
int t ;
for(i=1;i<n-1;i++)
{
if(a[i]>a[maxIdx])
maxIdx = i;
else if(a[i]<a[minIdx])
minIdx = i;
}
t = a[minIdx];
a[minIdx]=a[0];
a[0]=t;
if(maxIdx==0)
maxIdx = minIdx;
t = a[maxIdx];
a[maxIdx] = a[n-1];
a[n-1] = t;
}
//當(dāng)最大元素在a[0]時(shí)
//最小在a[2]時(shí)
//5 3 1 2----> 1 3 2 5
=============================================
//求輸入的數(shù)字是否為素?cái)?shù)
int isPrime(int n)
{
int k ;
for(k=2;k<n;k++)
{
if(n%k==0)
return 0;
}
return 1;
}
int cntPrime(int a[],int n)
{
int i;
int cot = 0;
for(i=0;i<n;i++)
{
if( isPrime(a[i]))
++cot;
}
return cot;
}