第七章字符数组与指针练习题参考答案2.docx

上传人:b****6 文档编号:16216708 上传时间:2023-07-11 格式:DOCX 页数:11 大小:17.59KB
下载 相关 举报
第七章字符数组与指针练习题参考答案2.docx_第1页
第1页 / 共11页
第七章字符数组与指针练习题参考答案2.docx_第2页
第2页 / 共11页
第七章字符数组与指针练习题参考答案2.docx_第3页
第3页 / 共11页
第七章字符数组与指针练习题参考答案2.docx_第4页
第4页 / 共11页
第七章字符数组与指针练习题参考答案2.docx_第5页
第5页 / 共11页
第七章字符数组与指针练习题参考答案2.docx_第6页
第6页 / 共11页
第七章字符数组与指针练习题参考答案2.docx_第7页
第7页 / 共11页
第七章字符数组与指针练习题参考答案2.docx_第8页
第8页 / 共11页
第七章字符数组与指针练习题参考答案2.docx_第9页
第9页 / 共11页
第七章字符数组与指针练习题参考答案2.docx_第10页
第10页 / 共11页
第七章字符数组与指针练习题参考答案2.docx_第11页
第11页 / 共11页
亲,该文档总共11页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

第七章字符数组与指针练习题参考答案2.docx

《第七章字符数组与指针练习题参考答案2.docx》由会员分享,可在线阅读,更多相关《第七章字符数组与指针练习题参考答案2.docx(11页珍藏版)》请在冰点文库上搜索。

第七章字符数组与指针练习题参考答案2.docx

第七章字符数组与指针练习题参考答案2

第七章 字符数组与字符串

【题7.29】下面是对s的初始化,其中不正确的是。

A)chars[5]={“abc”};B)chars[5]={‘a’,‘b’,‘c’};

C)chars[5]=“”;D)chars[5]=“abcdef”;

【题7.30】下面程序段的运行结果是。

charc[5]={‘a’,‘b’,‘\0’,‘c’,‘\0’};

printf(“%s”,c);

A)‘a’‘b’B)abC)abc

【题7.31】对两个数组a和b进行如下初始化

chara[]=“ABCDEF”;

charb[]={‘A’,‘B’,‘C’,‘D’,‘E’,‘F’};

则以下叙述正确的是。

A)a与b数组完全相同B)a与b长度相同

C)a和b中都存放字符串D)a数组比b数组长度长

提示:

‘\0’是字符串结束的标志

【题7.32】有两个字符数组a、b,则以下正确的输入格式是。

A)gets(a,b);B)scanf(“%s%s”,a,b);

C)scanf(“%s%s”,&a,&b);D)gets(“a”),get(“b”);

【题7.33】有字符数组a[80]和b[80],则正确的输出形式是。

A)puts(a,b);B)printf(“%s%s”,a[],b[]);

C)putchar(a,b);D)puts(a),puts(b);

【题7.34】下面程序段的运行结果是。

chara[7]=“abcdef”;

charb[4]=“ABC”;

strcpy(a,b);

printf(“%c”,a[5]);

A)空格B)\0C)eD)f

提示:

复制后a[0]=‘A’,a[1]=‘B’,a[2]=‘C’,a[3]=‘\0’,a[4]=‘e’,a[5]=‘f’,a[6]=‘\0’,

【题7.35】有下面的程序段

chara[3],b[]=“China”;

a=b;

printf(“%s”,a);

则。

A)运行后将输出ChinaB)运行后将输出Ch

C)运行后将输出ChiD)编译出错

提示:

数组名是常量

【题7.36】下面程序段的运行结果是。

charc[]=“\t\n\\\0will\n”;

printf(“%d”,strlen(c));

A)14B)3C)9D)字符串中有非法字符,输出值不确定

提示:

strlen函数,求字符数符串的长度。

【题7.37】判断字符串a和b是否相等,应当使用。

A)if(a==b)B)if(a=b)

C)if(strcpy(a,b))D)if(strcmp(a,b))

提示:

只有strcmp函数才能判别2个字符串的关系。

【题7.38】判断字符串s1是否大于字符串s2,应当使用。

A)if(s1>s2)B)if(strcmp(s1,s2))

C)if(strcmp(s2,s1)>0)D)if(strcmp(s1,s2)>0)

【题7.39】下面程序段是输出两个字符串中对应字符相等的字符。

请选择填空。

charx[]=“programming”;

chary[]=“Fortran”;

inti=0;

while(x[i]!

=‘\0’&&y[i]!

=‘\0’)

{

if(x[i]==y[i])printf(“%c”,【1】);

elsei++;

}

【1】A)x[i++]B)y[++i]C)x[i]D)y[i]

【题7.40】下面描述正确的是。

A)两个字符串所包含的字符个数相同时,才能比较字符串

B)字符个数多的字符串比字符个数少的字符串大

C)字符串“STOP”与“STOP”相等

D)字符串“That”小于字符串“The”

【题7.41】下述对C语言字符数组的描述中错误的是。

A)字符数组可以存放字符串

B)字符数组的字符串可以整体输入、输出

C)可以在赋值语句中通过赋值运算符“=”对字符数组整体赋值

D)不可以用关系运算符对字符数组中的字符串进行比较

【题7.42】有已排好序的字符串a,下面的程序是将字符串s中的每个字符按a中元素的规律插入到a中。

请选择填空。

#include

main()

{

chara[20]=“cehiknqtw”;

chars[]=“fbla”;

inti,k,j;

for(k=0;s[k]!

=‘\0’;k++)

{

j=0;

while(s[k]>=a[j]&&a[j]!

=‘\0’)j++;

for(【1】)【2】;

a[j]=s[k];

}

puts(a);

}

【1】A)i=strlen(a)+k;i>=j;i--B)i=strlen(a);i>=j;i--

C)i=j;i<=strlen(a)+k;i++D)i=j;i<=strlen(a);i++

【2】A)a[i]=a[i+1]B)a[i+1]=a[i]

C)a[i]=a[i-1]D)a[i-1]=a[i]

【题7.43】下面程序的功能是将已按升序排好序的两个字符串a和b中的字符按升序归并到字符串c中。

请选择填空。

#include

main()

{

chara[]=“acegikm”;

charb[]=“bdfhjlnpq”;

charc[80],*p;

inti=0,j=0,k=0;

while(a[i]!

=‘\0’&&b[j]!

=‘\0’)

{

if(a[i]

else{【2】}

k++;

}

c[k]=‘\0’;

if(【3】)p=b+j;

elsep=a+i;

strcat(c,p);

puts(c);

}

【1】A)c[k]=a[i];i++;B)c[k]=a[j];i++;

C)c[k]=a[i];j++;D)c[k]=a[j];j++;

【2】A)c[k]=a[i];i++;B)c[k]=a[j];i++;

C)c[k]=a[i];j++;D)c[k]=a[j];j++;

【3】A)a[i]==‘\0’B)a[i]!

=‘\0’

C)a[i-1]==‘\0’D)a[i-1]!

=‘\0’

【题7.44】下面程序的功能是将字符串s中所有的字符‘c’删除。

请选择填空。

#include

main()

{

chars[80];

inti,j;

gets(s);

for(i=j=0;s[i]!

=‘\0’;i++)

if(s[i]!

=‘c’)【1】;

s[j]=‘\0’;

puts(s);

}

【1】A)s[j++]=s[i]B)s[++j]=s[i]

C)s[j]=s[i];j++D)s[j]=s[i]

【题7.45】下面程序的功能是从键盘输入一行字符,统计其中有多少个单词,单词之间用空格分隔。

请选择填空。

#include

main()

{

chars[80],c1,c2=‘’;

inti=0,num=0;

gets(s);

while(s[i]!

=‘\0’)

{

c1=s[i];

if(i==0)c2=‘’;

elsec2=s[i-1];

if(【1】)num++;

i++;

}

printf(“Thereare%dwords.\n”,num);

}

【1】A)c1==‘’&&c2==‘’B)c1!

=‘’&&c2==‘’

C)c1==‘’&&c2!

=‘’D)c1!

=‘’&&c2!

=‘’

【题7.46】下面程序的运行结果是。

#include

main()

{

charch[7]={“12ab56”};

inti,s=0;

for(i=0;ch[i]>=‘0’&&ch[i]<=‘9’;i+=2)

s=10*s+ch[i]-‘0’;

printf(“%d\n”,s);

}

A)1B)1256C)12ab56D)1

2

5

6

【题7.47】当运行以下程序时,从键盘输入:

aabb

ccdd

表示回车),则下面程序的运行结果是。

#include

main()

{

chara1[5],a2[5],a3[5],a4[5];

scanf(“%s%s”,a1,a2);

gets(a3);

gets(a4);

puts(a1);

puts(a2);

puts(a3);

puts(a4);

}

/*提示:

scanf(“%s”)是以空格、回车为结束标志;

gets()仅是以回车作为结束标志,a3中接收到的是‘\n’

puts()函数具有输出结束后自动加换行的功能*/

A)aaB)aaC)aabbD)aabb

bbbbccccdd

ccccdddd

dd

题7.48】当运行以下程序时,从键盘输入:

ab

c

def

表示回车),则下面程序的运行结果是。

#include

#defineN6

main()

{

charc[N];

inti=0;

for(;i

for(i=0;i

}

A)abcdefB)aC)bD)ab

Bcc

cdd

d

e

f

【题7.49】当运行以下程序时,从键盘输入:

AhaMAAha表示回车),则下面程序的运行结果是。

#include

main()

{

chars[80],c=‘a’;

inti=0;

scanf(“%s”,s);

while(s[i]!

=‘\0’)

{

if(s[i]==c)s[i]=s[i]-32;

elseif(s[i]==c-32)s[i]=s[i]+32;

i++;

}

puts(s);

}

A)ahAMaB)AhAMaC)AhAMaahAD)ahAMaahA

【题7.50】下面程序的运行结果是。

#include

main()

{

chara[80]=“AB”,b[80]=“LMNP”;

inti=0;

strcat(a,b);

while(a[i++]!

=‘\0’)b[i]=a[i];

puts(b);

}

A)LBB)ABLMNPC)ABD)LBLMNP

【题7.51】下面程序的运行结果是。

#include

main()

{

charstr[]=“SSSWLIA”,c;

intk;

for(k=2;(c=str[k])!

=‘\0’;k++)

{

switch(c)

{

case‘I’:

++k;break;

case‘L’:

continue;

default:

putchar(c);continue;

}

putchar(‘*’);

}

}

A)SSW*B)SW*C)SW*AD)SW

【题7.52】下面程序的运行结果是。

#include

main()

{

chara[]=“morning”,t;

inti,j=0;

for(i=1;i<7;i++)

if(a[j]

j=i;

t=a[j];

a[j]=a[7];

a[7]=a[j];

puts(a);

}/*提示:

原a[7]中存放的是‘\0’*/

A)mogninrB)moC)morningD)mornin

参考答案:

【题7.29】D【题7.30】B【题7.31】D【题7.32】B【题7.33】D

【题7.34】D【题7.35】D【题7.36】B【题7.37】D【题7.38】D

【题7.39】A【题7.40】D【题7.41】C【题7.42】BB【题7.43】ADA

【题7.44】A【题7.45】B【题7.46】A【题7.47】B【题7.48】D

【题7.49】A【题7.50】D【题7.51】B【题7.52】B

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 自然科学 > 物理

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2