C——计算数组的元素个数

50 阅读1分钟

1、编一个函数printArr,打印传入的数组中的所有元素

代码如下:

#include <stdio.h>
void printArr(int arr[],int n){
	for(int i=0;i<n;i++){
		printf("%d\n",arr[i]);
	}
}
int main(){
	int arr1[5]={1,2,3,4,5};
	int arr2[3]={7,8,9};
	
	printArr(arr1,5);
	printArr(arr2,3);
    
    return 0;
}

运行结果如下:

image.png

任务1:定义一个函数,它的参数是int数组,它的返回值是数组中的所有元素的和。

int getArrSum(int arr[], int len){ }

任务2:定义一个函数,它的参数是int数组,它的返回值是数组中的所有元素的最大值。

int getArrMax(int arr[], int len){ }

任务3:定义一个函数,它的参数是int数组,和要查找的值。如果在这个数组中,能找到,则返回第一个找到的值的下标;如果找不到,返回-1

int findValue(int arr[], int len, int val) {

代码如下:

#include <stdio.h>
int getArrSum(int arr[],int len){
	int sum = 0;
	for(int i = 0;i<len;i++){
		sum += arr[i];
	}
	return sum;
}


int getArrMax(int arr[],int len){
	int max = 0;
	for(int i = 0;i<len;i++){
		if (arr[i] > max){
			max = arr[i];
		}
	}
	return max;
}

int findValue(int arr[],int len,int val){
	for(int i = 0;i<len;i++){
		if(arr[i] == val){
			return i;
		}
	}
	return -1;
}

int main(){
	int testArr[]={12,45,7,89,23,56};
	int len = sizeof(testArr)/sizeof(testArr[0]);
	int sum = getArrSum(testArr,len);
	printf("数组元素总和:%d\n",sum);
	int max = getArrMax(testArr,len);
	printf("数组的最大值:%d\n",max);
	int findVal1 = 89; 
	int index1 = findValue(testArr, len, findVal1);
	if (index1 != -1) { 
    printf("值 %d 的下标:%d\n", findVal1, index1); 
} else { 
	printf("未找到值 %d\n", findVal1); 
} int findVal2 = 100; 
	int index2 = findValue(testArr, len, findVal2); 
	if (index2 != -1) { 
	printf("值 %d 的下标:%d\n", findVal2, index2); 
} else { 
	printf("未找到值 %d\n", findVal2); 
} 
	return 0;

}

运行结果如下:

image.png