首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
给定程序MODI1.C中函数fun的功能是:将十进制正整数111转换成k(2≤k≤9)进制数,并按高位到低位顺序输出。 例如,若输入8和2,则应输出1000(即十进制数8转换成二进制表示是1000)。 请改正fun函数中的错误,使它能得出正
给定程序MODI1.C中函数fun的功能是:将十进制正整数111转换成k(2≤k≤9)进制数,并按高位到低位顺序输出。 例如,若输入8和2,则应输出1000(即十进制数8转换成二进制表示是1000)。 请改正fun函数中的错误,使它能得出正
admin
2015-08-23
99
问题
给定程序MODI1.C中函数fun的功能是:将十进制正整数111转换成k(2≤k≤9)进制数,并按高位到低位顺序输出。
例如,若输入8和2,则应输出1000(即十进制数8转换成二进制表示是1000)。
请改正fun函数中的错误,使它能得出正确的结果。
注意:不要改动main函数。不得增行或删行,也不得更改程序的结构!
#include
#inolude
void fun(int m, int k)
{
int aa[2 0],i ;
for(i=0; m; i++)
{
/**********found**********/
aa
= m/k;
m/=k;
}
for(;i;i--)
/************found************/
printf("%d",aa
);
}
main()
{
int b,n;
printf("\nPlease enter a number
and a base:\n");
s canf("%d %d", &n, &b);
fun(n,b);
printf("\n");
}
选项
答案
(1)aa[i]=m%k; (2)printf("%d", aa[i一1]);
解析
函数的功能是将十进制正整数m转换成k(2≤k≤9)进制数。
(1)第二个标识下的“aa
=m/k;”是进制的转换,应该是取余,所以第二个标识下“aa[j]=m/k;”应该改为“aa
=m%k;”。
(2)数制转换处理过程中所得的结果,和实际要输出的结果顺序是相反的,所以必须对存放余数的数组反向输出。原题中“printf("%d",aa
);”的下标有误。因为下标i的起始值为0,故反向输出时应该从i-1开始,因此改为“printf("%d",aa[i-1]);”。
转载请注明原文地址:https://kaotiyun.com/show/sHDp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
有下列程序:main(){intk=5;while(--k)printf("%d",k-=3);printf("\n");}执行后的输出结果是()。
下列程序的输出结果是()。main(){inti=1,j=2,k=3;if(i++==1&&(++j=3‖k++==3))printf("%d%d%d\n",i,j,k);}
有下列二叉树,对此二叉树前序遍历的结果为()。
有以下程序:#include<stdio.h>main(){char*p,*q;p=(char*)malloc(sizeof(char)*20);q=p;scanf("%s%s",p,q);p
数据库设计包括两个方面的设计内容,它们是
有如下程序main(){charch[2][5]={"6937","8254"},*p[2];inti,j,s=0;for(i=0;i
已有定义:charc;,程序前面已在命令行中包含ctype.h文件,不能用于判断c中的字符是否为大写字母的表达式是
数据库设计包括两个方面的设计内容,它们是
用筛选法可得到2~n(n
随机试题
空が暗くなってきた。雨が________そうだ。
假设基体表面附着力与比表面有关,则粗糙度越大,附着力越大。
在Word中,对于设置每行的高度为1.5倍行距,下列说法正确的是()。
我国现行合同条款下,工程按索赔目的分类的是()。
在传统的人员安全疏散设计中,设计人员主要依照规范要求保证一定的()。
对企业与其开户银行之间的未达账项,进行账务处理的时间是()时。
某公司股票的当前市价为10元,有一种以该股票为标的资产的看跌期权,执行价格为8元,到期时间为三个月,期权价格为3.5元。下列关于该看跌期权的说法中,正确的是()。
以下不是国家宏观调控手段的是()。
经过这次面试,我们认为你不适合当公务员,决定不录用你,你自己认为有哪些原因?
Howlongdidthechildrenplay?
最新回复
(
0
)