當前位置:首頁 » 編程語言 » c語言給數組賦值輸出
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

c語言給數組賦值輸出

發布時間: 2023-04-07 19:32:02

『壹』 c語言,怎麼用for 循環給數組賦值 說的簡單詳細點, 謝謝了

1、首先打開c語言項目,輸入如圖所示代碼創建一個int類型的數組。

『貳』 c語言中怎樣實現對二維數組元素進行賦值並輸出。

可以按照下面步驟進行定義二維數組並輸出:

1 定義二維指針。

2 確定數組維數,即行數和列數。

3 申請行數個一維指針大小空間,並賦值給二維指針。

4 對於每個一維指,申請列數個元素的空間,並賦值給對應的一維指針。

5 輸入或賦值數據。

6 使用雙重循環,逐個范圍存儲單元並輸出。

7 逐個釋放一維指針上的內存。

8 釋放二維指針上的內存。

以整型二維數組為例:

下面的代碼,實現先輸入二維數組的行數m和列數n,並再輸入m*n個整型數據存到動態二維數組中。最後輸出所有二維數組的元素值。

『叄』 C語言中的二維數組的賦值,輸入輸出怎麼用

代碼,實現先輸入二維數組的行數m和列數n,並再輸入m*n個整型數據存到動態二維數組中。最後輸出所有二維數組的元素值。

int main()

{

int**p;//定義二維指針。

int m,n;//行數和列數。

int i,j;

scanf("%d%d",&m,&n);//輸入行數和列數。

if(m<=0||n<=0)return-1;//行數或列數非法。

p=(int**)malloc(sizeof(int*)*m);//申請一組一維指針空間。

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

p<i>=(int*)malloc(sizeof(int)*n);//對於每個一維指針,申請一行數據的空間。

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

for(j=0;j<n;j++)

scanf("%d",&p<i>[j]);//輸入第i行第j列的數據。其中&p<i>[j]也可以寫作p<i>+j或者是*(p+i)+j.功能相同。

printf("輸入的數組為%d行%d列: ",m,n);

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

{

for(j=0;j<n;j++)//這個循環可以輸出一行元素。

printf("%d",p<i>[j]);//輸出i行j列的元素。

printf(" ");//每行輸入結束加換行符。

}

//釋放內存

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

free(p<i>);

free(p);

return 0;

}

(3)c語言給數組賦值輸出擴展閱讀:

函數:free

功能:與malloc()函數配對使用,釋放malloc函數申請的動態內存。(另:對於free(p)這句語句,如果p是NULL指針,那麼free對p無論操作多少次都不會出問題。如果p不是NULL指針,那麼free對p連續操作兩次就會導致程序運行錯誤。)

用法;void free(void*ptr);

程序例:

C/C++代碼如下:

#include<string.h>

#include<stdio.h>

#include<alloc.h>//or#include<malloc.h>

int main(void)

{

char*str;

/*allocate memory for string*/

str=(char*)malloc(10);

/*"Hello"to string*/

strcpy(str,"Hello");

/*display string*/

printf("String is%s ",str);

/*free memory*/

free(str);

str=NULL;

return 0;

}

『肆』 C語言,結構體中的數組怎麼賦值,

intmain(void){

structstudentsbao={};

printf("%d,%s ",bao.id,bao.name);//輸出是4224528,空(應該是null)

//structstudentsbao={3,"123"};可以。第一種賦值方法

//strcpy(bao.name,"bao");//可以,

//printf("%d,%s ",bao.id,bao.name);

//bao.name="bao";錯誤「stray'351'inprogram」其他是亂碼,

//bao.name[0]='a';

//bao.name[0]='/0';

//printf("%d,%s ",bao.id,bao.name);

/*這樣可以,*/

//chararr[10]="baobao";

////bao.name=arr;//error""

//scanf("%s",bao.name);//可以,

//printf("%d,%s ",bao.id,bao.name);

//所以scanf那一類函數都可以。

//還有就是memcpy函數也是可以的

return0;

}

(4)c語言給數組賦值輸出擴展閱讀

C語言結構體數組的直接賦值及數組的長度計算:

#include<stdio.h>

//自定義一個字元串的結構體,包含字元串和字元串長度兩個變數

typedefstructStr{

charch[100];

intlength;//char數組(字元串)的長度

}myStr;

//剛開始聲明變數時每個變數的字元串長度length都為0

//這里以長度為10的數組為例,數組長度是1000

//對第0個到第9個結構體數組的長度同時賦值為0

myStrmyStr1[10]={

[0...9]={

.length=0,

}

};

intmain(){

inti;

for(i=0;i<10;i++){

printf("%d ",myStr1[i].length);

}

return0;

}

『伍』 C語言題目:定義一個一維數組,並給數組賦值

一位數組賦值的幾種方式
int
a[10]={1,2,3,4,5,6,7,8,9,10};
.一般初始化,例:
int
a[10]={3,10,5,3,4,5,6,7,8,9};
int
array[5]={2,3,4,5,6};
其結果是給每一個數組元素都指定了初值。
2.部分元素初始化,其餘元素均為零。
例:
int
a[10]={7,8,9,67,54};
僅給前5個元素賦初值,後5個元素初值為0。
3.全部元素均初始化為1。
int
a[10]
=
{1,1,1,1,1,1,1,1,1,1};
不允許簡寫為 int
a[10]={1};或int
b[10]={1*10};
同學們想一想上述定義a和b數組後,初始化結果是什麼?
注意:當程序不給數組指定初始值時,編譯器作如下處理:
(1)部分元素初始化,編譯器自動為沒有初始化的元素初始化為0。
(2)數值數組如果只定義不初始化,編譯器不為數組自動指定初始值,即初值為一些隨機值(值不確定)。
4.如果全部元素均指定初值,定義中可省略元素的個數。
例:
int
a[5]={9,28,3,4,5};可以寫為:
int
a[
]={9,28,3,4,5};
數組元素的引用
c語言規定,不能整體引用數值數組,只能逐個引用數組元素;
元素引用方式:數組名[下標表達式]
例:a[0]
=
a[5]
+
a[7]
-
a[2*3]
「下標表達式」可以是任何非負整型數據。
特別強調:1.一個數組元素,實質上就是一個變數,它具有和相同類型單個變數一樣的屬性,可以對它進行賦值和參與各種運算。
2.在c語言中,數組作為一個整體,不能參加數據運算,只能對單個的元素進行處理。