首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码。补充函数convert(long S,long*str),使之从低位开始取出长整型变量S中奇数位上的数,依次存放在数str中。 例如,当S中的数为:7654321时,
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码。补充函数convert(long S,long*str),使之从低位开始取出长整型变量S中奇数位上的数,依次存放在数str中。 例如,当S中的数为:7654321时,
admin
2020-07-23
58
问题
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码。补充函数convert(long S,long*str),使之从低位开始取出长整型变量S中奇数位上的数,依次存放在数str中。
例如,当S中的数为:7654321时,str中的数为:7531。
注意:请勿改动主函数。
#include
void convert(long s,long*str)
{
}
Void main()
{
long s,res;
cout<<"Please enter s:
"<
cin>>s;
convert(s,&res);
cout<<"The result is:
"<
return;
}
选项
答案
long s1=10; *str=s%10;//先取个位数 while(s>0) { s=s/100; //每次除以100, *str=s%10*s1+*str; //取除以100后的个位数,str增加1位 s1=s1*10; }
解析
(1)由审题分析可知,奇数位即为个位数、百位数、万位数……,取个位数比较简单,s%10便得到了个位数。获取百位数可由s/100后,再和10取余得到,同样万位数可由s/10000,再和10取余得到,从百位数开始后面的奇数位都是在上次的基础上再除以100后再取余数,因此可利用循环。
(2)在循环外先取s的个位数,然后进入循环,s=s/100,获取除以100的个位数方法为s%10,这个数是*str的高一位,乘以它所在*str中的位置的权值,然后和以前的值相加便得到这次*str值,如此循环,直到s为0为止。
转载请注明原文地址:https://kaotiyun.com/show/W1yp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有如下类声明和函数声明classBase{intm;public:intn;protected:intp;};classDer
下列关于运算符重载的描述中,错误的是
下列语句或语句序列中有语法错误的是
有如下类定义:classMyClass{public:_____________private:intdata;};若要为MyCla
有如下类声明和函数声明classBase{intm;public:intn;protected:intp;};classDer
有如下程序:#includeusingnamespacestd;voidfun(inti){cout
下列关于派生类构造函数和析构函数的说法中,错误的是()。
设c1和c2是类MyClass的对象,若将运算符"+"和"*"作为类MyClass的成员函数重载,则表达式c1+c2*c1等价于
下列运算符中,不能作为成员函数重载的是
随机试题
()是指识别和分析不确定的因素,并对这些因素采取应对措施。
患者身灼肢温,汗热味咸而黏,如珠如油,虚烦躁扰,舌红而干,脉疾无力,其证型是()
堆积密度
男性,45岁。右下肢麻木、发凉1年,每行走200m后需停下来休息一段时间。查体:右下肢皮肤温度较对侧低,右足背动脉搏动较对侧弱。右下肢动脉造影示中小动脉多节段狭窄。诊断为
病理检查申请单的作用是
患者,男,35岁。胃溃疡伴有慢性出血,大便潜血(+),患者近日感无力、心悸,临床诊断:慢性失血性贫血。关于铁剂的说法,错误的是
会计报表附注是对单位一定会计期间内财务、成本等情况进行分析总结的书面报告。
根据企业所得税法的规定,下列表述正确的是( )。
6
InterculturalLearningManyteachersmaywonder"whatIamactuallydoing"sometimes.Itdoesn’tseemenoughtoteachgramm
最新回复
(
0
)