首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有以下程序: #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
50
问题
有以下程序: #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全国计算机二级
相关试题推荐
有以下程序#include<stdio.h>structtt{intx;structtt*y;)*p;structtta[4]={20,a+1,15,a+2,30,a+3,17,a};main
以下各项中,当x为大于1的奇数时,值为0的表达式是()。
软件测试的目的是
下列选项中,当x为大于1的奇数时,值为0的表达式是()。
在快速排序法中,每经过一次数据交换(或移动)后()。
若有定义语句:inta=3,b=2,c=1;,以下选项中错误的赋值表达式是()。
若有定义“intx,y;”并已正确给变量赋值,则以下选项中与表达式“(x-y)?(x++):(y++)”中的条件表达式(x.y)等价的是
有以下定义:inta;longb;doublex,y;则以下选项中正确的表达式是
以下程序段中不能统计出一行中输入字符个数(不包含回车符)的是()。
下列特征中不是面向对象方法的主要特征的是()。
随机试题
上下颌第三磨牙口外投照片可观察的项目不包括A.第三磨牙的形态B.第三磨牙萌出情况C.第三磨牙阻生方向D.儿童第三磨牙牙胚发育情况E.下颌下腺导管结石情况
如图6-19所示,180°等直径弯管放置在水平面内,直径D=50mm,流速v=8m/s,不计损失,弯管所受水的水平作用力为()。
关于生产安全事故应急预案管理,下列说法正确的是()。
下列我们日常生产生活所需的产品中,不属于发酵工程产品的是()。
“多一把衡量的尺子,就会多出一批好学生”理论依据是()
学前儿童自我意识真正形成的标志是()
(2018年山东)一位西方旅行家如果于20世纪初来到中国,他不可能看到下列哪一处景观?()
以下选项中,能用作数据常量的是()。
DarwinandHisTheoryDarwinwasbornin1809asthesonofaphysician.Heearlierplannedtobecomea【1】intheChurchofEn
ManchesterUnitedreachedtheagreementlastweekwithRoyalMadridoverthe______ofBeckham
最新回复
(
0
)