- 1、本文档共8页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第6章陣列
第6章:陣列
1. 請使用圖例說明什麼是陣列?
A. 陣列(Arrays)是一種程式語言的基本資料結構,屬於一種循序性的資料結構。日常生活最常見的範例是一排信箱,如下圖所示:
上述圖例是公寓或社區住家的一排信箱,郵差依信箱號碼投遞郵件,住戶依信箱號碼取出郵件。簡單的說,陣列是將C語言資料型態的變數集合起來,使用一個名稱代表,然後以索引值來存取元素,每一個元素相當於一個變數,如下圖所示:
上述圖例的data[8]陣列是一種固定長度的結構,每一個元素可以是C語言基本或延伸資料型態,陣列大小在編譯階段就已經決定,並不能隨意更改。
在陣列的每一個「陣列元素」(Array Elements)是使用「索引」(Index)存取,C語言的索引值是從0開始到陣列長度減1,。students[],
short students[100];
假設上述陣列的記憶體開始位置是1000,請回答下列問題,如下所示:
整數所佔用用的記憶體是____位元組。
students[10]的記憶體開始位置。
students[35]的記憶體開始位置。
A. 2、10、1
4. 請寫出下列陣列宣告或初值的程式碼,如下所示:
請寫出擁有10元素的int陣列且所有元素初值為20的程式碼。
int data[44];
請寫出指定下列陣列元素的初值為0的程式碼,如下所示:
int testArray[12][10];
A. 下列陣列宣告或初值的程式碼,如下所示:
擁有10元素的int陣列且所有元素初值為20的程式碼。for ( i = 0; i 10; i++) arr[i] = 20;
指定下列陣列元素的初值依序為1~44的程式碼,如下所示:
int data[44];
for ( i = 0; i 44; i++) data[i] = i+1;
指定下列陣列元素的初值為0的程式碼,如下所示:
int testArray[12][10];
for ( i = 0; i 12; i++ )
for ( j = 0; j 10; j++ )
testArray[i][j] = 0;
5. 在第6-3節的二維陣列範例是一張功課表,請使用二維陣列儲存功課表,然後計算總共上課的時數。
A. C程式如下所示:
#include stdio.h
#include stdlib.h
int main() {
/* 學生功課表, 使用課程代碼 */
int courses[6][5]={0, 2, 0, 2, 0,
1, 4, 1, 4, 1,
5, 0, 5, 0, 5,
0, 0, 0, 0, 0,
3, 0, 3, 0, 3,
0, 0, 0, 0, 0 };
int sum = 0;
int i,j;
for ( i = 0; i 6; i++ )
for ( j = 0; j 5; j++ )
if ( courses[i][j] != 0 ) /* 是否有課 */
sum++;
printf(上課總節數: %d\n, sum);
system(PAUSE);
return 0;
}
6. 請設計C程式建立2個各5個元素的一維陣列arr1和arr2,其初值如下所示,然後建立5個元素的一維陣列result,使用迴圈計算arr1和arr2相同索引元素的和,將它存入陣列result,#include stdio.h
int main(void) {
int arr1[5] = {2, 34, 33, 23, 67};
int arr2[5] = {3, 56, 10, 20, 73};
int i, result[5];
for ( i = 0; i 5; i++ )
result[i] = arr1[i] + arr2[i];
printf(索引\tarr1\tarr2\tresult\n);
for ( i = 0; i 5; i++ )
printf(%d\t%d +\t%d =\t%d\n,i,arr1[i],arr2[i],result[i]);
getchar();
return 0;
}
7. 請設計C程式宣告3X3的二維陣列,陣列值使用亂數產生,其範圍是1~50,#include stdio.h
#include stdlib.h
int m
文档评论(0)