Ⅰ 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