2021年计算机软件水平考试程序员练习试题3.docVIP

  • 6
  • 0
  • 约4.39千字
  • 约 12页
  • 2021-03-26 发布于湖北
  • 举报

2021年计算机软件水平考试程序员练习试题3.doc

2021年计算机软件水平考试程序员练习试题3 ●试题一 阅读下列说明和流程图,将应填入(n)处的语句写在答题纸的对应栏内。 【说明】 下列流程图用于从数组K中找出一切满足:K(I)+K(J)=M的元素对(K(I),K(J))(1≤I≤J≤N)。假定数组K中的N个不同的整数已按从小到大的顺序排列,M是给定的常数。 【流程图】 此流程图1中,比较K(I)+K(J)∶M最少执行次数约为 (5) 。 图1 ●试题二 阅读下列函数说明和C代码,将应填入(n)处的字句写在答题纸的对应栏内。 【说明】 函数print(BinTreeNode*t;DateType &x)的功能是在二叉树中查找值为x的结点,并打印该结点所有祖先结点。在此算法中,假设值为x的结点不多于一个。此算法采用后序的非递归遍历形式。因为退栈时需要区分右子树。函数中使用栈ST保存结点指针ptr以及标志tag,Top是栈顶指针。 【函数】 void print(BinTreeNode*t;DateType &x){ stack ST;int i,top;top=0;∥置空栈 while(t!=NULL &&t-data!=x‖top!=0) {while(t!=NULL && t-data!=x) { ∥寻找值为x的结点 (1) ; ST[top].ptr=t; ST[top].tag=0; (2) ; } if(t!=

文档评论(0)

1亿VIP精品文档

相关文档