首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序 #include<iostream.h> void main( ) { char ch[2][5]={"6937","8254"},*p[2]; int i,j,s=0;
有如下程序 #include<iostream.h> void main( ) { char ch[2][5]={"6937","8254"},*p[2]; int i,j,s=0;
admin
2010-03-29
52
问题
有如下程序 #include<iostream.h> void main( ) { char ch[2][5]={"6937","8254"},*p[2]; int i,j,s=0; for(i=0;i<2;i++)p
=ch
; for(i=0;i<2;i++) for(j=0;p
[j]>’\0’;j+=2) s=10*s+p
[j]-’0’; cout<<s;} 该程序的输出结果是
选项
A、69825
B、63825
C、6385
D、693825
答案
4
解析
该题主要要搞清楚以下几点:
①定义了一个指针数组char*p[2]后,程序中第一个循环for(i=0;i<2;i++)p
=ch
;的作用是使指针数组的P[0]元素(它本身是一个指针)指向了二维数组ch的第一行字符串,并使指针数组的p[1]元素指向了二维数组ch的第二行字符串,这样,就使指针数组p和二维数组ch建立起了一种对应关系,以后对二维数组ch的某个元素的引用就有两种等价的形式: ch
[j]或p
[j]。②对二维数组ch的初始化,使其第一行ch[0]中存入了字符串“6937”,第二行ch[l]中的内容为字符串“8254”。③程序中第二个循环中的循环体s=s*10+p
[j]-’0’;的功能是这样的,每执行一次,将s中的值乘以10(也即,将s中的数值整体向左移动一位,并在空出来的个位上添一个o),再将当前P
[j]中的字符量转换为相应的数字,然后把这个数字加到s的个位上。④注意到内层循环的循环条件
p
[j]>’\0’是指p
[j]中的字符只要不是字符串结束标志’\0’就继续循环,语句j+=2;是使下标j每次增加2,也即一个隔一个地从p
所指向的字符串中取出字符。经过上述解析后,不难看出,该程序首先从p [0]所指向的字符串“6937”中一个隔一个地取出字符,分别是“6”和“3”,然后从p[1]所指向的字符串“8254”中一个隔一个地取出字符,分别是“8”和“5”,同时经过转换和相加运算后,结果s中的值应该是6385。
转载请注明原文地址:https://kaotiyun.com/show/Fhjp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
C语言程序的模块化通过以下哪个选项来实现
有以下程序:#includemain(){char*s=“12134”:intk=0,a=0;while(s[k+1]){k++:if(k%2==0){a=a+(s[k]一’0’+1)
有以下程序main(){chara,b,c,d;scanf("%c%c",&a,&b);c=getchar();d=getchar();printf("%c%c%c%c\n",a,b,c,d);}当执行程
若有定义:charc;intd;,程序运行时输入:c=1d=2<回车>,能把字符1输入给变量c、把整数2输入给变量d的输入语句是()。
下列数据结构中,能够按照“先进先出”原则存取数据的是()。
若变量已正确定义为int型,要通过语句seanf("%d,%d,%d",&a,&b,&C);给a赋值1、给b赋值2、给c赋值3,以下输入形式中错误的是(注:□代表一个空格符)()。
若用数组名作为函数调用时的实参,则实际上传递给形参的是()。
fun函数的功能是:通过键盘输入给x所指的整型数组所有元素赋值。在下划线处应填写的是#include#defineN5Voidfun(intx[N]){intm;for(m=N-1;m>=0;m--)scanf("
下列关于类、对象、属性和方法的叙述中,错误的是()。
随机试题
男,65岁,有高血压病史,近期发现鼻出血和牙龈出血。实验室检查APTT为55s(对照42秒),PT为20s(对照12s)。此两项实验室检查提示
34岁女性,入院2小时左手中指掌指关节处掌面,被宽3cm锐器刺伤,查体发现中指呈伸直位,感觉障碍,手指苍白发凉,Allen试验阳性。该患者的治疗方案是
凌迟刑成为法定刑,与绞刑、斩刑并用成为死刑一种是在()时期。
某化工企业在进行原料储罐检修时,需办理受限空间内动火作业许可。在办理许可时,需要检测的项目是()。
下列对工程监理单位安全责任的表述中,正确的是()。
银行业金融机构有符合《银行业监督管理法》规定的违法情形且情节特别严重或者逾期不改正的,可以责令停业整顿或者();构成犯罪的,依法追究刑事责任。
患者,男性,65岁。进行性排尿困难已5年,不能自行排尿8小时,膀胱膨隆轻压痛,首选的治疗法应是()。
西周代表了我国奴隶社会时期教育的发展水平,西周形成了完备的教育制度体系,在这个体系中分为国学和__________教育。
坚持以人为本,全面、协调、可持续的科学发展观,是我们党以邓小平理论和“三个代表”重要思想为指导,从新世纪新阶段党和国家事业发展全局出发提出的重大战略思想。树立和落实科学发展观,要注意把握好的问题是()。
警衔等级的设置是警衔制度的核心。下列自上而下排列顺序正确的是()。
最新回复
(
0
)