首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读以下说明和C代码,将应填入(n)处的字句写在对应栏内。 【说明】 函数MultibaseOutput(long n,int B)的功能是:将一个无符号十进制整数n转换成 B(2≤B≤16)进制数并输出。该函数先将转换过程中得到的各位数字入栈,转换
阅读以下说明和C代码,将应填入(n)处的字句写在对应栏内。 【说明】 函数MultibaseOutput(long n,int B)的功能是:将一个无符号十进制整数n转换成 B(2≤B≤16)进制数并输出。该函数先将转换过程中得到的各位数字入栈,转换
admin
2009-02-15
36
问题
阅读以下说明和C代码,将应填入(n)处的字句写在对应栏内。
【说明】
函数MultibaseOutput(long n,int B)的功能是:将一个无符号十进制整数n转换成 B(2≤B≤16)进制数并输出。该函数先将转换过程中得到的各位数字入栈,转换结束后再把B进制数从栈中输出。有关栈操作的诸函数功能见相应函数中的注释。C代码中的符号常量及栈的类型定义如下:
#define MAXSIZE 32
typedef struct {
int * elem; /*栈的存储区*/
int max; /*栈的容量,即栈中最多能存放的元素个数*/
int top; /*栈顶指针*/
}Stack;
【代码】
int InitStack(Stack * S,int n) /*创建容量为n的空栈*/
{ S -> elem = (int*) malloc(n*sizeof(int));
if(S -> elem == NULL) return-1
S->max=n;(1)=0;return 0;
}
int Push (Stack * s,int item) /*将整数item压入栈顶*/
{ if(S->top==S->max){printf("Stack is full! \n");return-1;}
(2)= item; return 0
}
int StackEmpty(Stack S) { return(! S. top)? 1:0; }/*判断栈是否为空*/
int Pop(Stack * S) /*栈顶元素出栈*/
{ if(! S->top) { printf("Pop an empty stack! \n") ;return -1;}
return (3);
}
void MultibaseOutput(long n,int B)
{ int m;Stack S
if (InitStack(&S, MAXSIZE)) {printf ("Failure! \n"); return;}
do {
if( Push( &S,(4))){printf("Failure! \n"); return;}
n=(5);
}while(n!=0);
while(!StackEmpty(S)){ /*输出B进制的数*/
m = Pop(& S);
if(m<10) printf("%d",m) ;/*小于10,输出数字*/
else printf("%c",m+55); /*大于或等于10,输出相应的字符*/
}
printf( "\n") ;
}
选项
答案
(1)S->top (2)S->elem[S->top++] (3)S->elem[--S->top] (4)n%B (5)n/B
解析
(1)此处初始化栈顶指针,即S->top=0。(2)此处语句是入栈操作,即先将入栈元素放入栈顶,然后修改栈顶指针。(3)此处语句是出栈操作,即修改栈顶指针,然后弹出栈顶元素。(4)此处语句求得将要入栈的数字,即用n%B得到B进制下第一位数字。(5)此处语句修改n的大小以继续求得更高位的数字。
转载请注明原文地址:https://kaotiyun.com/show/sojZ777K
本试题收录于:
程序员下午应用技术考试题库软考初级分类
0
程序员下午应用技术考试
软考初级
相关试题推荐
“Windows是一个多任务操作系统”指的是_______。
Word2007默认的文件扩展名是(37)。
在Excel中,与函数“=AVERAGE(A1:A3)”等价的是______。
在Excel当前工作表中有学生的数据表(包含学号、姓名、专业、课程、成绩等字段),为查询指定专业下每门课程的平均成绩,下列选项中最合适的方法是______。
字符串编辑有3种基本操作:在指定位置插入一个字符、在指定位置删除一个字符、在指定位置用另一个字符替换原来的字符。将字符串ABCDE,编辑成ECDFE,至少需要执行(6)次基本操作。
某一个PPT文档共有8张幻灯片,现选中第4张幻灯片,改变幻灯片背景设置后,单击“应用”按钮,则______。
在Excel2003中,A1到E6单元格的值如下图所示,若在A7单元格中输入函数“=COUNTA(A1:E6)”,按回车键后,则A7单元格显示的值为(44)。
在Word2007文档编辑时,使用(39)________________选项卡中的“分隔符”命令,可以在文档中指定位置强行分页。
根据某机构的统计与推测,我国人口中男性和女性各个年龄段的百分比如下图。根据该图,以下叙述中正确的是________________。
LCD显示器的响应时间为(2)时,显示的效果更好。
随机试题
关于框架柱的轴压比,下列说法中正确的是
社会主义市场经济的根本特征是()
女,50岁。因在家燃烧煤气取暖突然昏倒。患者面色潮红,口唇呈樱桃红,脉快,多汗,神志不清伴发热。患者最可能是
如果左心和降主动脉提前显影,则一般会存在
药物利托君
心阳不振、心悸、脉结代者当用
患者,女性,45岁,护士为其静脉注射25%葡萄糖溶液。静脉注射过程中,护士发现患者局部疼痛、肿胀明显,试抽无回血,可能的原因是
以下不符合现行税务行政处罚和税务行政诉讼有关政策规定的有()。
企业关联债资比例超过标准比例需要说明符合独立交易原则的,应当准备资本弱化特殊事项文档。资本弱化特殊事项文档包括()。
英、美、法资产阶级革命后资产阶级报业进程如何?它们受什么因素制约?
最新回复
(
0
)