c語言,給不知道元素個數的陣列的所有元素賦相同的值

2021-03-03 20:48:16 字數 1955 閱讀 6018

1樓:匿名使用者

void func(int a,int n) /*a是不知道元素個數的整形陣列,n是你要賦的值*/

{int x,i;

x=sizeof(a)/2;

for(i=0;i此函

數可以實回現你的目的答~

2樓:匿名使用者

可以利用系統函式memset(陣列名,初值,sizeof(陣列名));來整體賦相同的初值。

但是要注版意:必須在程式開權

頭引入標頭檔案#include才可以使用系統中定義的memset函式。如同要使用sin()等數學函式時必須引入標頭檔案#include一樣。

3樓:夢想窗外

#include

#include

void main()

, i;

/*將數

組a的所有元

素設定回

為答20 */

for (i = 0; i < sizeof(a)/sizeof(a[0]); ++i)

putchar('\n');

system("pause");}

4樓:匿名使用者

可以先用strlen求得長度吧,然後再賦值不就行了。

c語言中,如何把陣列裡面的每一項都初始化為同一個值?

5樓:幻翼高達

需要準備的材bai料分別有:電

du腦、c語言編譯器zhi。

1、首先,開啟c語言編譯dao器,新建專一個初始.cpp檔案,屬例如:test.cpp。

2、在test.cpp檔案中,輸入c語言**:

int a[3];

memset(a, 0, sizeof(a));

printf("%d", a[0]);

printf("%d", a[1]);

printf("%d", a[2]);

3、編譯器執行test.cpp檔案,此時成功將陣列每一項都初始化為0。

6樓:文化廚子

舉例說明:

int a[20] = ;

這樣,陣列a中的每一個元素都被初始化為0了。

7樓:

或許你可以呼叫用memset()函式試試,例如:memset(arr,0,sizeof(arr));

不過memset這是對每個位元組賦值,所以只能是賦0或者-1,別的話只能用迴圈了

8樓:匿名使用者

申請一個struct template; typedef struct template tem_t; struct tem_t arr[100];就搞定了。

9樓:士兄揚羽

#include "stdio.h"

#include "conio.h"

int main(void)

;for(i=0;i<=99;i++)

a[i]=1;

for(i=0;i<=99;i++)

getch();

return 0;

}個人感覺bai就只有用迴圈du才zhi

能做。。。不知

dao道別人內有好方法嗎?容

10樓:匿名使用者

對啊 用迴圈啊 沒別的方法 迴圈也不費勁

11樓:匿名使用者

c++ can do it:

#include

..int arr[100];

std::fill(arr, arr+100, 1);..

12樓:傻男孩摩羯

這個0是一個特殊情況,這個0是把陣列的第一個元素初始化為零,剩餘的元素系統會自動用0補齊,如果你把0改為1的話,你除錯的時候會發現,只有第一個元素為1,剩下的都是0

c語言函式呼叫求陣列各元素的階乘急

include long long int fun int x int main void for int i 0 i 7 i printf n return 0 long long int fun int x else return x fun x 1 c語言函式呼叫 求任意數階乘和!急急急急 i...

C語言中的陣列具有的特性是 A 所有元素具有相同的資料型別B 元素下標從1開始

a 所有元素具有相同的資料型別 正確.定義陣列形式為 type name size 每個元素的型別都是type.b 元素下標從1開始 錯誤,從0開始.c 所有元素佔用連續的記憶體 正確.陣列佔記憶體連續.從陣列名即首地址開始.d 陣列名是一個地址常量 正確.陣列名值為陣列首地址,型別為一個常量陣列指...

C語言對於給定的N各元素的陣列要求從中找出

有兩種方法可以實現 1 對陣列進行從小到大排序,排序方法任意。在排序後,陣列的第k個元素即為第k小的元素。2 對於n值較大,k值較小的情況,1中的時間開銷偏大。這時可以用額外的空間開銷,來換取更高的效率。方法為 a 開闢一個k個元素的臨時空間m b 取陣列中的第一個元素,置於m中 c 取第二個元素,...