首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi2.cpp。请完成函数fun(int x),该函数功能是将x的值转换成二进制数输出到屏幕,并且在函数中调用写函数WriteFile()将结果输出到modi2.txt文件中。 例如:x=13,13的二进制数字为1
使用VC6打开考生文件夹下的源程序文件modi2.cpp。请完成函数fun(int x),该函数功能是将x的值转换成二进制数输出到屏幕,并且在函数中调用写函数WriteFile()将结果输出到modi2.txt文件中。 例如:x=13,13的二进制数字为1
admin
2015-11-25
17
问题
使用VC6打开考生文件夹下的源程序文件modi2.cpp。请完成函数fun(int x),该函数功能是将x的值转换成二进制数输出到屏幕,并且在函数中调用写函数WriteFile()将结果输出到modi2.txt文件中。
例如:x=13,13的二进制数字为1101,则输出到屏幕的为1101。
注意:不要改动main()数,不得增行或删行,也不得更改程序的结构。
#include<iostream>
#iaclude<fstream>
#include<cmath>
using narnespace std;
void WriteFile(char* str)
{
ofstream out1;
out1.open("modi2.txt",ios_base::binary|ios_base::app);
for(int i=0;str
!=0;i++)
out1.put(str
);
out1.close();
}
void fun(int x)
{
}
void ClearFile()
{
ofstream out1;
out1.open("modi2.txt");
out1.close();
}
int main()
{
ClearFile();
fun(13);
return 0;
}
选项
答案
char str[32]; int i: for(i=30;>=0;i--)//计算二进制 { if(x%2)str[i]=’1’; //求余,如果余不为零字符串str第i位为1 else str[i]=’0’; //否则为0 x>>=1; if(!x)break; } str[31]=’\0’; //串加尾符 cout<<&str[i]<<endl; WriteFile(&str[i]);
解析
【审题分析】
(1)该程序功能是实现十进制转换成二进制数。十进制到二进制的转换是对十进制的数字进行2的取余运算,余数不为零则取1,否则为0,然后对余数进行循环取余运算,直到余数为0。
(2)从已给部分源程序的main主函数开始入手,核心函数fun(int x)中的x参数为输入的十进制数。
【解题思路】
(1)定义存放二进制的字符串str。
(2)然后利用for循环对十进制数字x进行取余运算,直到余数为0结束。
(3)如果取余结果为0,则二进制字符串这个字符位的值为0,否则为1。
(4)最后调用WriteFile将运算结果存入文件。
转载请注明原文地址:https://kaotiyun.com/show/nYNp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
若要定义一个只允许本源文件中所有函数使用的全局变量,则该变量需“要使用的存储类别是()。
下列程序的输出结果为()。#include<iostream.h>#include<iomanip.h>voidmain(){cout.precision(4);cout<<123.127;
下列程序的运行结果是#include<iostream.h>voidfun(int*a,int*B){int*k;k=a;a=b;b=k;}void
如果表达式x*y+z中,“*”是作为友元函数重载的,“+”是作为友元函数重载的,则该表达式还可为
下面的语句中错误的是
有以下程序#include<iostream.h>voidfun(inta,intb,intc){a=456,b=567,c=678;}voidmain(){
以下程序中调用cin函数给变量a输入数值的方法是错误的,其错误原因是#include<iostream.h>voidmain(){int*p,*q,a,b;p=&a;
下列说法中,不属于数据模型所描述的内容的是
对于下面的程序,说法正确的是 #include<iostream.h> voidmain() {intx=3,y=4,z=2; if(X=y+z)cout<<"x=y+Z"; elsecout<<"x!=y+Z";}
有以下程序:#include<iostream>usingnamespacestd;classsample{private:intx;public:voidsetx(i
随机试题
财务报表的编制基础是指财务报表是在持续经营基础上还是非持续经营基础上编制的。()
现成偏误是指根据个别现成的事例来直接推导普遍规律,从而形成偏误认识的认知方式。根据上述定义,以下不属于现成偏误的是:
中国共产党领导中国人民实现了一个又一个“不可能”,创造了一个又一个难以置信的奇迹。奇迹是干出来的,社会主义是干出来的。中国共产党和中国人民有雄心、有自信继续奋斗,朝着实现“两个一百年”奋斗目标、实现中华民族伟大复兴的中国梦奋勇前进。实践充分证明,中国人民一
患者,女,61岁。左下颌颈部肿痛5日,伴发热,无寒战,诊断为急性蜂窝织炎,其最危险的后果是()
下列哪些选项属于设计单位的质量责任和义务?
A、 B、 C、 D、 C
苏格拉底法
Whatisthewoman’sattitudetowardeachofthefollowingactivitiesofstudy?ChooseFOURanswersfromtheboxandwritetheco
Whatwillthewomandotomorrow?
每个人一生中都该有个志向,否则他的精力便会浪费掉。每个青年人都力求成为一个有成就的人物。【T1】一个青年人只期望富有或只专心于求得权力与名望是不明智的。(nor;indulgein)一个青年人希望做个有成就者,结果常常会实现。狄斯拉里(Disr
最新回复
(
0
)