c语言第七章数组课后练习题答案
- 格式:doc
- 大小:44.00 KB
- 文档页数:28
c语言第七章数组课后练习题答案
第七章数组
学习目的与要求:
1 、重点掌握一维数组的定义和引用;
、基本掌握二维数组的定义和引用;
、重点掌握字符型数组的定义与引用;
、能正确使用字符串处理函数;
、学会使用数组解决实际问题。
重点:
1 、一维数组的定义与引用;
、二维数组的定义与引用;
、字符数组的定义与引用;
第1讲
知识归纳:
1、一维数组的定义:类型说明符数组名[ 常量表达式 ] ;
数组名后必须用方括弧 [ ] ,用其他括弧均错误;
方括弧中的常量表达式表示数组的元素个数;
方括弧中的常量表达式,必须是能计算出具体数值,且不改变的常量,不能是变量;
2、一维数组的引用:
数组名[ 下标 ] //下标从0
如 int a[10] ;
//可以引用的数组元素为不是本数组元素;
3、一维数组的初始化:
int a[3] ;
a = { 1,3,} ;
可以给数组的部分元素赋值,不赋值的元素,默认值为int 0, char, ??, float 0.0 ;
如 int a [3]= {1,} ; //a[0] =1 ; a[1]= ; a[2]= 0 ;
在对数组全部元素赋初值时,可以不指定元素个数;
可以在循环控制下,给数组各元素赋值;
如:int a[10] ;
for
a [ i ] = i ;
基础训练
一、选择题
1、在c语言中,引用数组元素时,其数组下标的数据类型允许是。
A)整型常量 B)整型表达式 )整型常量或整型表达式
D)任何类型的表达式
2、要说明一个有10个int元素的数组,应当选择语句。 ) int a[10]; B) int a; C) int a[9] D) int a[11]
3、以下对数组的正确定义是:。
A) float b[5.0] ) float b[5] C) float b D) float b[]
4、对以下说明语句的正确理解是。
int a[10]={6,7,8,9,10};
A)将5个初值依次赋给a[1]至a[5]
C语言复习题
)将5个初值依次赋给a[0]至a[4]
C)将5个初值依次赋给a[6]至a[10]
D)因为数组长度与初值的个数不相同,所以此语句不正确
5、已知:int a[10];则对a数组元素的正确引用是。
A) a[10] B) a[3.5] C) a ) a[10-10]
6、以下能对一维数组a进行正确初始化的语句是。
A) int a[10]=; B)int a[10]={} ) int a[]={0}; D) int a[10]={10*1};
7、以下能对一维数组a进行正确初始化的语句是。
A) A) int a[5]; B)int a[3];
a={0,1,2,3,4}; for
scanf;
C) int a[3]={0,1,2,3};) int a[5];
for
scanf;
二、填空题
1、构成数组的各个元素必须具有相同的类型。C语言中数组的下标必须是整正数、0或整型表达式。如果一维数组的长度为n ,则数组下标的最小值为,最大值为。
2、在C语言中,一维数组的定义方式为:类型说说明符数组名。
3、已知数组b定义为int b[ ]={9,6,3};,则b的各元素的值分别是,
最小下标是
4、在C
5、已知数组T为一有10T中的10个元素的值的语句为:
for
{
int a[3]={3*0};
int i;
for scanf;
for a[0]=a[0]+a[i];
printf;
}
2、下面程序,请指出存在错误的行号
1 1 main
{
int a[3];
int i;
scanf;
for a[0]=a[0]+a[i];
printf;
}
3、下面程序,请指出存在错误的行号
1 1 main
{
int a[3];
int i;
for scanf;
for a[0]=a[0]+a[i]);
printf;
C语言复习题
}
第2讲
知识归纳:
1、二维数组的定义:
类型说明符数组名[ 常量表达式 1 ][常量表达式2] ;
常量表达式1------可以形象理解为行数;
常量表达式2-----可以形象理解为列数;
二维数组中元素存放顺序是:先存放第一行的元素,再存放第二行的元素,依次类推;
2、二维数组的引用:
数组名[ 下标 ] [ 下标 ]
//下标从0开始,可以是整型常量或整型表达式;
注意:数组元素引用时,不要超出数组范围;
如 int a[] [4] ;
//可以引用的数组元素为a[0][0]……a[2][3] , a[3][4]不是本数组元素;
可以在循环控制下,给二维数组各元素赋值;
如:int a[3] [4];
for
for
a [ i ] = i * j;
3、二维数组的初始化:
可以在定义数组后,立刻赋值;如 int a [3][4] = { 1,3,,7,9,11} ;
但下面这样是错误的:
int a[3][4] ;
a = { 1,3,,7,9,11} ;