//练习1:在被调函数中计算一维数组的和,并返回给主调函数,在函数中打印
#include <stdio.h>
int fun();
int main(int argc, const char *argv[])
{
int arr[20]={1,2,3,4,5,6,7,8,66,44,3,33};
printf("一维数组的和为%d\n",fun(arr,20));
return 0;
}
int fun(int arr[],int l)
{
int i,sum=0;
for(i=0;i<l;i++)
{
sum=sum+arr[i];
}
return sum;
}
//练习2:在主函数输入字符串,在自定义函数计算字符串中空格的个数
//把个数返回
#include <stdio.h>
#include <string.h>
int count();
int main(int argc, const char *argv[])
{
int i,k;
char arr[20];
printf("请输入一个字符串:");
gets(arr);
k=strlen(arr);
int n=count(arr);
printf("总共有%d个空格\n",n);
return 0;
}
int count(char arr[])
{
int j=0,cou=0;
while(arr[j]!='\0')
{
if(arr[j]==' '){
cou++;
}
j++;
}
return cou;
}
//练习3:在主函数输入二维数组,计算最大值,最小值,
//返回最大值和最小值的差
#include <stdio.h>
int fun();
int main(int argc, const char *argv[])
{
int arr[20][20];
int i,j,line,row,sub;
printf("请输入行数和列数");
scanf("%d%d",&line,&row);
printf("请输入数组元素:");
for(i=0;i<line;i++)
{
for(j=0;j<row;j++)
{
scanf("%d",&arr[i][j]);
}
}
sub=fun(arr,line,row);
printf("最大值与最小值的差是%d\n",sub);
return 0;
}
int fun(int arr[20][20],int line,int row)
{
int max,k,l,min;
max=arr[0][0];min=arr[0][0];
for(k=0;k<line;k++)
{
for(l=0;l<row;l++)
{
if(max<arr[k][l]){
max=arr[k][l];
}
if(min>arr[k][l]){
min=arr[k][l];
}
}
}
return max-min;
}