解析 int sum(int array[],int len) { int sum=0; for (int i=0;i<len;i++) sum=sum+array[i]; return sum; } [解析] 本题主要考查考生对于数组访问和for循环语句的掌握。应该注意的是,长度为len的数组array的下标范围为0到 len-1,而不是从1到len,所以循环控制变量的初始值为0。
函数fun()的定义如下: void fun(int a[ ],int n) { int F=n; while(F>0) { int k=F-1; F=0; for(int j=1;j<=k;j++) { if(a[j]>a[j+1]) { int temp=a[i]; a[j]=a[i+1]; a[j+1]=temp; F=j; } } } return;...
本题要求函数 fun 用来求 int 类型的数组中所有偶数的和,同时形参已经给出,因此: 1.定义函数 fun,接收两个参数:数组名和数组长度。 2.在 fun 函数内部,使用循环遍历数组元素。 3.对于每个遍历到的数组元素,判断是否为偶数。 4.如果是偶数,则将其累加到一个变量 sum 中。 5.循环结束后,返回 sum,表...
以下函数能求出数组的长度吗?void fun(char str[]){ int len = sizeof(str)/sizeof(str[0]);} 相关知识点: 试题来源: 解析 解析:不能,数组作为参数传递给函数时,数组名被退化为指针, 因此函数中的sizeof(str)实际是在求一个指针的sizeof,答案为4, 因此不能计算出数组的长度。
下列函数中,传入的参数是int数组及其长度,说法正确的是: A、 发生整数溢出时,malloc一定会失败 B、 发生整数溢出时,malloc也可能成功,并产生溢出 C、将len的类型int换成unsigned int即可修复整数问题 D、 以上说法都不对 正确答案 点击免费查看答案 试题上传试题纠错 ...
有一个整数数组,长度为9,数组里的值是多少不清楚,但是知道数组中有8个值是相等,其中一个小于其他8个值,目前有一个标准函数,compare(int[] a, int[] b),返回0(相等)、1(大于)、-1(小于),最少调用compare标准函数几次一定能够找出不同的值,请描述具体步骤,并用代码实现,语言不限 ...
在函数中是做不到的,因为传入的数组实际只有数组的首地址,这就好比你站在一个列车的车头,看不到车尾,你也就得不到长度。
函数v()max()的原型为int v()max(int a[],int n),其功能是求一个int型数组的最大元素值。已知data是int型数组,其长度为10,并已正确赋值。以下语句中的函数调用正确的是: A.printf(";MAX=%d";,v()max(10,&;data[0]))B.printf(";MAX=%d";,v()max(&;data[0],10))C.printf(";MAX=%d";...
初始化也可只针对部分函数 static int b[4][3]={{1,2,3},{},{4,5}} 2.顺序赋初值 类型名 数组名[行长度][列长度]; int a[3][3]={1,2,3,4,5,6,7,8,9} 省略行长度(要有初值表) 对全部元素赋初值 int a[][3]={1,2,3,4,5,6,7,8,9} ...
include <stdio.h> int t,j;void main(){ int change(int x,int y);int a[5]={1,2,3,4,5};int i;for(i=0;i<3;i++){ change(a[i],a[4-i]);a[i]=j; a[4-i]=t;} for(i=0;i<5;i++)printf("%d",a[i]);} int chage(int x){ t=x;j=y;return j;retur...