首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有以下程序: #include <iostream> #include <string> using namespace std; int main ( ) { char b1[8] = "abcdefg";
有以下程序: #include <iostream> #include <string> using namespace std; int main ( ) { char b1[8] = "abcdefg";
admin
2010-03-29
41
问题
有以下程序: #include <iostream> #include <string> using namespace std; int main ( ) { char b1[8] = "abcdefg"; char b2[8],*pb=b1+3; while (--pb>=b1) strcpy (b2, Pb) ; cout<<strlen (b2) <<end1; return 0; } 程序运行后的输出结果是( )。
选项
A、8
B、3
C、1
D、7
答案
8
解析
本题考查常用字符串函数的熟悉程度。先来了解程序中的两个字符串函数:
①函数strcpy()的函数原型为:char*strcpy(char*strDest,const char*strSrC) ;,其功能是复制strSrc所有字符到strDest,并返回strDest。
②函数strlen()的函数原型为:size t strlen(const char *string);,其函数功能为:返回string的长度,不包括结束字符’\0’。
再看程序:程序首先定义了一个字符数组b1和一个指针pb,并让指针pb指向数组中的b1[3]。由于在while语句中,每次循环都是把指针pb所指向的字符串复制到数组b2中,所以可以不考虑循环的中间过程,直接分析最后一次循环。循环体中的最后一次循环条件是pb==b1,即指针pb指向了数组元素b1[0],此时把指针pb所指向的字符串复制到数组b2中,就相当于把数组b1中的字符串复制到数组b2中。所以最后数组b2中保存的就是数组b1中的字符串,其长度为7(不包括字符串结束符号’\0’)。
转载请注明原文地址:https://kaotiyun.com/show/9Xjp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有以下程序main(){inta=1,b=2,c=3,d=0;if(a==1&&b++==2)if(b!=2‖c--!=3)printf("%d,%d,%d\n",a,b,c);el
在数据库设计中,将E-R图转换成关系数据模型的过程属于()。
T列叙述中正确的是
有如下程序#include#defineD(x)4*x+1main(){inti=2,j=4;printf("%d\n",D(i+j));}程序运行后的输出结果是()。
设已有定义:floatx;则以下对指针变量p进行定义且赋初值的语句中正确的是()。
下面不属于结构化程序设计原则的是
已知字符’A’的ASCII代码值是65,字符变量c1的值是’A’,c2的值是’D’。则执行语句printf("%d,%d",c1,c2-2);的输出结果是
下列选项中能正确定义数组的语句是()。
若变量已正确定义,以下选项中非法的表达式是
随机试题
肺痈溃脓期,病情顺逆的转化,应观察
这个标志是何含义?
下列保险中,属于政策保险的有()。
证券公司注册地中国证监会派出机构应当按照有关规定对申报材料进行审查,并自中国证监会决定受理其申报材料后( )个工作日内,将对申报材料的书面意见报送到中国证监会。
只有在没有现金净流量为正的项目的时候才会支付股利的方式是()。
下列关于波士顿矩阵表述不正确的是()。
在某次交通整治民意代表座谈会的代表中,一个是黑龙江人,两个是北方人,一个是广东人,有两个人只负责客运业务,三个人只从事货物运输。如果以上的介绍涉及了该次座谈会的所有代表,则参加这次座谈会的代表()。
某商店10月1日开业后,每天的营业额均以100元的速度上涨,已知该月15号这一天的营业额为5000元,问该商店10月份的总营业额为多少元?()
小王的旅行箱密码为3位数,且三个数字全是非0的偶数,而且这个三位数恰好是小王今年年龄的平方数。则小王今年()岁。
社会意识形式有意识形态和非意识形态之分。下列属于意识形态的是
最新回复
(
0
)