内容正文:
5.3 字符数组的定义和使用
【基础巩固】
1.(单选)下面关于串的叙述中,正确的是( )。
A.串是一种特殊的线性表
B.串中元素只能是字母
C.空串就是空白串
D.串的长度必须大于零
2.(单选)两个字符串相等的条件是( )。
A.串的长度相等
B.含有相同的字符集
C.都是非空串
D.两个串的长度相等且对应位置的字符相同
3.(单选)以下给字符数组str定义和赋值正确的是( )。
A. char str[10]; str={"China!"};
B. char str[ ]={"China!"};
C. char str[10]; strcpy( str,"abcdefghijkl");
D. char str[10]={"abcdefghijkl"};
4.(单选)有如下程序
main()
{ char ch[80]="123abcdEFG*&";
int j;long s=0;
puts(ch);
for(j=0;ch[j]>'\0';j++)
if(ch[j]>='a'&&ch[j]<='z') ch[j]=ch[j]-'b'+'B';
puts(ch); }
该程序的功能是( )。
A.测字符数组ch的长度
B.将数字字符串ch转换成十进制数
C.将字符数组ch中的小写字母转换成大写
D.将字符数组ch中的大写字母转换成小写
【能力进阶】
5.(单选)有以下程序段
int i,n;
for(i=0;i<8;i++)
{n=rand()%5;
switch (n)
{ case 1:
case 3:printf("%d
",n); break;
case 2:
case 4:printf("%d
",n);continue;
case 0:exit(0);
}
printf("%d
",n);
}
6.(单选)当接受用户输入的含有空格的字符串时,应使用( ) 函数。
A.gets( ) B.getchar( )
C.scanf( ) D.printf( )
7.(单选)设有数组定义:char array[]="China";则strlen(array)的值为( )。
A.4 B.5
C.6 D.7
8.(单选)设有数组定义:char array[10]= "China";则数组array所占的存储空间为( )。
A.4个字节 B.5个字节
C.6个字节 D.7个字节
9. (单选)有如下程序
main( )
{ char ch[2][5]={"6937","8254"};
int i,j;long s=0;
for(i=0;i<2;i++)
for(j=0;ch[i][j]>'\0';j++)
s=10*s+ch[i][j]-'0';
printf("%ld
",s);
}
该程序的输出结果是( )。
A. 69825 B.693825
C.6385 D. 69378254
10.(单选)串采用节点大小为1的链表作为其存储结构,是指( )。
A. 链表的长度为1
B. 链表中只存放一个字符
C.链表中每个节点的数据域中只存放一个字符
D. 以上都不对
11.(单选)有如下程序
main()
{ char a[10]={'1','2','3',0,'5','6','7','8','9','\0'};
printf("%s
",a);
}
该程序的输出结果是( )。
A.123 B.1230
C.123056789 D.1230567890
【自我评价】
【教师评价】
精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
学科网(北京)股份有限公司
$
5.3 字符数组的定义和使用
【基础巩固】
1.(单选)下面关于串的叙述中,正确的是( )。
A.串是一种特殊的线性表
B.串中元素只能是字母
C.空串就是空白串
D.串的长度必须大于零
答案:A
2.(单选)两个字符串相等的条件是( )。
A.串的长度相等
B.含有相同的字符集
C.都是非空串
D.两个串的长度相等且对应位置的字符相同
答案:D
3.(单选)以下给字符数组str定义和赋值正确的是( )。