当前所在位置:珠峰网资料 >> 计算机 >> 软件水平 >> 正文
2015年计算机软件水平程序员笔试考前练习精选(9)
发布时间:2012/11/4 15:15:12 来源:城市网学院 编辑:admin

   试题
    阅读以下说明和C代码,将应填入__(n)__处的字句写在答题纸的对应栏内。
    [说明]
    函数 MultibaseOutput(long n,int B)的功能是:将一个无符号十进制整数 n 转换成 B(2≤B≤16)进制数并输出。该函数先将转换过程中得到的各位数字入栈,转换结束后再把 B 进制数从栈中输出。有关栈操作的诸函数功能见相应函数中的注释。C代码中的符号常量及栈的类型定义如下:
    #define KAXSIZE 32
    typedef struct{
    int *elem;  /* 栈的存储区 */
    int max;   /* 栈的容量,即找中最多能存放的元素个数 */
    int top;   /* 栈顶指针 */
    }Stack;
    [C代码]
    int lnitStack(Stack *S,int n)  /* 创建容量为n的空栈 */
    { S->elem = (int *)matloc(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 (init Stack(&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(“Kd”,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]

    试题
    在 COMET 型计算机上可以使用试卷上所附的 CASL 汇编语言。阅读下列程序说明和 CASL 程序,把应填入程序中__(n)__ 处的字句,写在答卷的对应栏内。
    [程序说明]
    这是一个在某项比赛中计算每一位选手最终得分的子程序。计分办法如下:
    (1)十名评委,在 0~100 的整数范围内给选手评分。
    (2)十个得分中,除去一个最高分(如有同样两个以上最高分也只除去一个),除去一个最低分( 如有同样两个以上最低分也只除去一个 ),剩下的八个得分取平均值为该选手的最终得分。(平均值按四舍五入原则取成整数)
    进入此子程序时,GR1 内存放十个评委评分的起始地址。返回主程序时,该选手的得分存放在 GR0 内,GR1~GR3中的值均保持不变。
    [问题]
    xue.netda提示: 在程序中的 ①~⑧ 处各填入一条正确的指令,以完成此程序。除非必要,标号栏不要填写。
    [程序]
    标号操作码操作数
    FINAL START
    PUSH 0,GR1
    PUSH 0,GR2
    PUSH 0,GR3
    LD GR0,0,GR1
    ST GR0,MAX
    ST GR0,MIN
    __①__
    NEXT LEAGR2,-1,GR2
    JZEMEAN
    __②__
    LD GR3,0,GR1
    __③__
    CPA GR3,MAX
    JMIGOONl
    ST GR3,MAX
    GOONl CPA GR3,MIN
    JPZ GOON2
    ST GR3,MIN
    GOON2 __④__
    MEAN SUBGR0,MAX
    SUB GRO,MIN
    __⑤__
    SRAGR0,3
    __⑥__
    __⑦__
    __⑧__
    RET
    MAXDS1
    MINDS1
    FOURDC4
    END
    答案:
    (1)LEA GR2,10
    (2)LEA GR1,1,GR1
    (3)ADD GR0,0,GR1
    (4)JMP NEXT
    (5)ADD GR0,FOUR
    (6)POP GR3
    (7)POP GR2
    (8)POP GR1

广告合作:400-664-0084 全国热线:400-664-0084
Copyright 2010 - 2017 www.my8848.com 珠峰网 粤ICP备15066211号
珠峰网 版权所有 All Rights Reserved