Ⅰ c语言编写程序实现求一维数组(8个元素)元素之和。
你的数组只有定义了维数为7,但是你却往b地址开始的内存里面读入了8个数,然后算的时候,也是算的8个数字的和,所以会出错,。 修改办法:把两处<=7 都改成 <7 就行了!
int l( int* a, int num )
{
int i=0,j=0;
for(;i<num;i++)
j=j+a[i];
return j;
}
void main()
{
int b[7] = { 0 };
for ( int i = 0; i < 7; ++i )
{
scanf( "%d", &b[i] );
}
int kk = l( b, 7 );
printf( "%d", kk );
system("pause");
}
Ⅱ C语言如何计算一维数组个数
以上代码中sizeof(a)的结果是40,而sizeof(int)的结果是4,len就是10,即数组a所占int型的个数;
你可以进行循环判断,当a[i]至a[9]都为0时,有效数值的个数为i