首页
试卷库
试题库
当前位置:
X题卡
>
所有题目
>
题目详情
类Stock的定义中有两处错误,请指出错误所在行号并给出该行修改后的完整结果。
查看本题答案
包含此试题的试卷
初级程序员《填空集》真题及答案
点击查看
你可能感兴趣的试题
阅读以下说明和Java代码将解答写在对应栏内 [说明] 已知类Stock和类JavaMain都定
阅读以下说明和Java代码将解答写在对应栏内[说明]已知类Stock和类JavaMain都定义在Ja
类Stock的定义中有两处错误请指出错误所在行号并给出该行修改后的完整结果
三下面是一个完整的土地估价技术报告标注略的为正常内容;不考虑排版格式的错误阅读后请指出错误点并说明原
阅读以下说明和C程序代码将解答写在答题纸的对应栏内 【说明】下面是一个待修改的C程序其应该完成的功
试题八 阅读以下说明和Java代码 [说明] 已知类Stock和类JavaMain都定义在Java
类Stock的定义中有两处错误请指出错误所在行号并给出该行修改后的完整结果
[说明]已知类Stock和类cxyjava都定义在cxyjava.jav__件中类Stock的定义中
三下面是一个完整的土地估价技术报告标注略的为正常内容;不考虑排版格式的错误阅读后请指出错误点并说明原
阅读以下说明和Java代码回答问题[说明] 已知类Stock和类cxyjava都定义在cxyjav
阅读下列HTML文本和说明在该文本中存在5处错误指出错误所在的行号错误的原因以及改正方法
请指出错误所在行号并给出该行修改后的完整结果
试题六共15分 阅读以下说明和C++代码将解答写入答题纸的对应栏内 [说明] 类Stock的定义中
阅读以下说明和Java代码回答问题[说明] 已知类Stock和类cxyjava都定义在cxyjav
以下试题六至试题八任选一题 阅读下列说明和C++代码请回答问题1至问题3 【说
试题八 阅读以下说明和Java代码将解答写入答题纸的对应栏内 [说明] 已知类Stock和类Jav
阅读以下应用说明图和C++代码根据要求回答问题1至问题3 [说明]已知以下C++程序运行时的输出结
阅读以下说明和C++代码将解答写入对应栏内 [说明] 类Stock的定义中有三处错误分别在代码的
已知类Stock和类JavaMain都定义在JavaMain.jav__件中类Stock的定义中有四
阅读以下说明和Java代码请回答问题1和问题2 【说明】 己知类Stock和类
热门试题
更多
阅读下列程序说明和C代码把应填入其中n处的字句写在答卷的对应栏内 【说明】 程序利用选择排序算法对数组a中的N个整数按照从小到大的顺序排列并将排序结果显示出来【程序】 #defineN10main{ void1int ia[N]fori=0i<10i++/*输入*/ scanf%d&a[i]2 fori=0i<Ni++ /*输出*/printf%3da[i] }voidselectSonintx[]intn {intijkt forinti=03i++ {k=i forj=i+1j<nj++ if4k=j if5 {t=x[i]x[i]=x[k]x[k]=t}} }
阅读下列程序说明和C代码把应填入其中n处的字句写在答卷的对应栏内 【说明】 程序利用选择排序算法对数组a中的N个整数按照从小到大的顺序排列并将排序结果显示出来【程序】 #defineN10main{ void1int ia[N]fori=0i<10i++/*输入*/ scanf%d&a[i]2 fori=0i<Ni++ /*输出*/printf%3da[i] }voidselectSonintx[]intn {intijkt forinti=03i++ {k=i forj=i+1j<nj++ if4k=j if5 {t=x[i]x[i]=x[k]x[k]=t}} }
与单向链表相比双向链表______
阅读下列程序说明和C程序把应填入其中n处的字句写在对应栏内 【程序说明】 对角线下元素全为0的矩阵称为上三角矩阵设对于一个n×n的上三角矩阵a为节约存贮只将它的上三角元素按行主序连续存放在数组b中下面的函数trans在不引入工作数组的情况下实现将a改为按列主序连续存放在数组b中 设n=5 b=123456789101112131415 经调用trans函数后b变为 b=126371048111359121415 函数tans对数组元素的存贮位置作调整调整过程中存在若干个循环传送链 bi1→bi2→bij→bi11≤j<n 例如考察调整后的数组元素b2值为6与该元素相关的位置调整将形成下面的循环传送链 b2→b3→b6→→b12→b9→b5→b2 关键是确定循环传送链的下标i1i2ij以及在考察调整后的元素bkk34时能判定bk是已被传送过的某传送链上的元素 函数ctrkn计算调整后的数组b的第k个元素bk在原数组b中的位置该位置作为函数ctrkn的返回值函数ctr根据k确定它在矩阵中的行号i和列号j注意行号和列号均从 0算起然后按矩阵存放原则计算出它在b中的位置【程序】 transbnintnb[]{ intmkrccrrintw m=n+1*n/2-4k=2 whilem>0{ r=ctrkn ifr==km-- else { cc=krr=rwhile 1 { cc=rrrr=ctrccn }if 2 { cc=krr=rw=b[k] while3 { b[cc]=b[rr]m-- cc=rrrr=ctfccn } b[cc]-w4 } }k++ }}ctrkn intkn{intij i=kj=0while5 i-=++j returni*n+j-i*i+1/2}
阅读下列程序说明和C代码把应填入其中n处的字句写在对应栏内 【说明】 下面的程序能够计算不同图形的面积程序中把每个图形的数据定义成结构类型利用共同体类型描述2种图形的数据程序根据输入参数代表的图形类型求出图形的面积并输出 【程序】structCircle{ floatxy/*圆心位置*/ floatr/*圆半径*/}struct Rectangle{floatwidth /*矩形宽*/floatlength /*矩形长*/}unionshape {structCirclecircle/*圆数据结构*/ structRectanglerectangle/*矩形数据结构*/ }main{ unionshapeafloatarea intiprintfinputnumber 1circle2rectangle3end/n scanf%d&iwhile1 /*循环接收输入并计算输出*/ {switchi {case 1printfinputradius/n scanf%f2/*共同体类型变量接收输入*/ area=3.1415926*3 printftheareaofcircle=%f/narea break case2printfinputwidthandlength:/n seanf%f%f4 /*共同体类型变量接收输入*/ area=5 printftheareaofrectangle=%f/narea break }printfinput number1circle2rectangle3end/n scanf%d&i} }
阅读下列程序说明和C代码把应填入其中n处的字句写在答卷的对应栏内 1说明】函数create能够建立具有任意行和任意列的动态二维整数数组 【函数4.1程序】#includestdio.hint* *createintrowintcol{ int**xix=int **1for 2x[i]=int*malloccol* sizeofint3 }【函数4.2说明】 函数main能够判断输入年是否为闰年【函数4.2程序】 main{intyearnscanfinputyear %d&yearn=4||5 ifn==1printf%disaleap year/nyearelseprintf%disnotaleap year/nyear}
阅读以下说明和C代码将应填入n处的字句写在对应栏内 【说明】 在一图像处理系统中开发者定义了一个图像结构ImageCon其中定义了图像应该具有的属性当图像件的内容或状态发生变化时与之相关联的ImageView结构的值都需要发生改变一个ImageCon结构能够关联一组ImageView结构当ImageCon结构的内容或状态发生变化时所有与之相关联的ImageView结构都将被更新这种应用被称为观察者模式以下代码采用C语言实现能够正确编译通过 【C代码】#include<stdio.h>#define OBS_MAXNUM20/*一个ImageCon变量最多能够关联的ImageView变量的个数*/typedefvoid 1strucImageCon*structImageView* structImageView{funcupdate /*ImageView结构采用的更新函数*/ /*其他的结构字段省略*/} structImageCon{2 myObs[OBS_MAXNUM] /*存储所有与ImageCon相关联的ImageView结构指针*/intindex /*与ImageCon结构变量相关联的ImageView结构变量的个数*/}void attachstructImageCon*IMGstructImageView*ob{ /*关联Obersver结构ob与ImageCon结构IMG*/int loop=0 ifIMG→index>=OBS_MAXNUM||ob==NULLreturn forloop=0loop<IMG→indexloop++ ifIMG→myObs[loop]==obreturn IMG→myObs[IMG→index]=ob IMG→index++}voiddetachstructImageCon *IMGstructImageView*ob{ /*解除IMG结构与ob结构间的关系*/intloop ifob==NULLreturn forloop=0loop<IMG→indexloop++{ ifIMG→myObs[loop]==ob{ ifloop<=IMG→index-2 IMG→myObs[loop]=IMG→myObs[3] IMG→myObs[IMG→index-1]=NULL IMG→index-- breack }} }voidupdatelstructImageCon*IMGstructImageView *ob{/*更新ob结构的值更新代码省略*/}void update2structImageCon*IMGstructImageView*ob{ /*更新ob结构的值更新代码省略*/}void notifyObsstructImageCon*IMG{ /*当IMG结构的值发生变化时通知与之关联的所有ImageView结构变量*/int loopforloop=0loop<IMG→indexloop++{ IMG→myObs[loop]→update4 }} voidmain{structImageCon IMG/*定义一ImageCon变量*/structImageView explorer1explorer2/*定义两个ImageView变量*/ /*初始化与ImageCon变量相关的ImageView变量个数为0*/ IMG.index=0 explorer1.update=updatel/*设置explorerl变量的更新函数*/ explorer2.update=update2/*设置explorer2变量的更新函数*/ attach&IMG&explorer1/*关联explorer1与IMG对象*/ attach&IMG&explorer1/*关联explorer1与IMG对象*/ /*其他代码省略*/5 return}
阅读以下说明和C代码将应填入n处的字句写在对应栏内 【说明】 在一图像处理系统中开发者定义了一个图像结构ImageCon其中定义了图像应该具有的属性当图像件的内容或状态发生变化时与之相关联的ImageView结构的值都需要发生改变一个ImageCon结构能够关联一组ImageView结构当ImageCon结构的内容或状态发生变化时所有与之相关联的ImageView结构都将被更新这种应用被称为观察者模式以下代码采用C语言实现能够正确编译通过 【C代码】#include<stdio.h>#define OBS_MAXNUM20/*一个ImageCon变量最多能够关联的ImageView变量的个数*/typedefvoid 1strucImageCon*structImageView* structImageView{funcupdate /*ImageView结构采用的更新函数*/ /*其他的结构字段省略*/} structImageCon{2 myObs[OBS_MAXNUM] /*存储所有与ImageCon相关联的ImageView结构指针*/intindex /*与ImageCon结构变量相关联的ImageView结构变量的个数*/}void attachstructImageCon*IMGstructImageView*ob{ /*关联Obersver结构ob与ImageCon结构IMG*/int loop=0 ifIMG→index>=OBS_MAXNUM||ob==NULLreturn forloop=0loop<IMG→indexloop++ ifIMG→myObs[loop]==obreturn IMG→myObs[IMG→index]=ob IMG→index++}voiddetachstructImageCon *IMGstructImageView*ob{ /*解除IMG结构与ob结构间的关系*/intloop ifob==NULLreturn forloop=0loop<IMG→indexloop++{ ifIMG→myObs[loop]==ob{ ifloop<=IMG→index-2 IMG→myObs[loop]=IMG→myObs[3] IMG→myObs[IMG→index-1]=NULL IMG→index-- breack }} }voidupdatelstructImageCon*IMGstructImageView *ob{/*更新ob结构的值更新代码省略*/}void update2structImageCon*IMGstructImageView*ob{ /*更新ob结构的值更新代码省略*/}void notifyObsstructImageCon*IMG{ /*当IMG结构的值发生变化时通知与之关联的所有ImageView结构变量*/int loopforloop=0loop<IMG→indexloop++{ IMG→myObs[loop]→update4 }} voidmain{structImageCon IMG/*定义一ImageCon变量*/structImageView explorer1explorer2/*定义两个ImageView变量*/ /*初始化与ImageCon变量相关的ImageView变量个数为0*/ IMG.index=0 explorer1.update=updatel/*设置explorerl变量的更新函数*/ explorer2.update=update2/*设置explorer2变量的更新函数*/ attach&IMG&explorer1/*关联explorer1与IMG对象*/ attach&IMG&explorer1/*关联explorer1与IMG对象*/ /*其他代码省略*/5 return}
由关键字序列1273625182构造一棵二叉排序树初始为空第一个关键字作为根节点插入此后对于任意关键字若小于根节点的关键字则插入左子树中若大于根节点的关键字则插入右子树中且左右子树均为二叉排序树该二叉排序树的高度层数为______
阅读下列程序说明和C代码把应填入其中n处的字句写在答卷的对应栏内 1说明】函数create能够建立具有任意行和任意列的动态二维整数数组 【函数4.1程序】#includestdio.hint* *createintrowintcol{ int**xix=int **1for 2x[i]=int*malloccol* sizeofint3 }【函数4.2说明】 函数main能够判断输入年是否为闰年【函数4.2程序】 main{intyearnscanfinputyear %d&yearn=4||5 ifn==1printf%disaleap year/nyearelseprintf%disnotaleap year/nyear}
阅读下列程序说明和C程序把应填入其中n处的字句写在对应栏内 【程序说明】 对角线下元素全为0的矩阵称为上三角矩阵设对于一个n×n的上三角矩阵a为节约存贮只将它的上三角元素按行主序连续存放在数组b中下面的函数trans在不引入工作数组的情况下实现将a改为按列主序连续存放在数组b中 设n=5 b=123456789101112131415 经调用trans函数后b变为 b=126371048111359121415 函数tans对数组元素的存贮位置作调整调整过程中存在若干个循环传送链 bi1→bi2→bij→bi11≤j<n 例如考察调整后的数组元素b2值为6与该元素相关的位置调整将形成下面的循环传送链 b2→b3→b6→→b12→b9→b5→b2 关键是确定循环传送链的下标i1i2ij以及在考察调整后的元素bkk34时能判定bk是已被传送过的某传送链上的元素 函数ctrkn计算调整后的数组b的第k个元素bk在原数组b中的位置该位置作为函数ctrkn的返回值函数ctr根据k确定它在矩阵中的行号i和列号j注意行号和列号均从 0算起然后按矩阵存放原则计算出它在b中的位置【程序】 transbnintnb[]{ intmkrccrrintw m=n+1*n/2-4k=2 whilem>0{ r=ctrkn ifr==km-- else { cc=krr=rwhile 1 { cc=rrrr=ctrccn }if 2 { cc=krr=rw=b[k] while3 { b[cc]=b[rr]m-- cc=rrrr=ctfccn } b[cc]-w4 } }k++ }}ctrkn intkn{intij i=kj=0while5 i-=++j returni*n+j-i*i+1/2}
阅读下列程序说明和C代码把应填入其中n处的字句写在对应栏内 【说明】 下面的程序能够计算不同图形的面积程序中把每个图形的数据定义成结构类型利用共同体类型描述2种图形的数据程序根据输入参数代表的图形类型求出图形的面积并输出 【程序】structCircle{ floatxy/*圆心位置*/ floatr/*圆半径*/}struct Rectangle{floatwidth /*矩形宽*/floatlength /*矩形长*/}unionshape {structCirclecircle/*圆数据结构*/ structRectanglerectangle/*矩形数据结构*/ }main{ unionshapeafloatarea intiprintfinputnumber 1circle2rectangle3end/n scanf%d&iwhile1 /*循环接收输入并计算输出*/ {switchi {case 1printfinputradius/n scanf%f2/*共同体类型变量接收输入*/ area=3.1415926*3 printftheareaofcircle=%f/narea break case2printfinputwidthandlength:/n seanf%f%f4 /*共同体类型变量接收输入*/ area=5 printftheareaofrectangle=%f/narea break }printfinput number1circle2rectangle3end/n scanf%d&i} }
线性表采用顺序存储结构若表长为m且在任何一个合法插入位置上进行插入操作的概率相同则插入一个元素平均移动______个元素
阅读下列程序说明和C程序把应填入其中n处的字句写在对应栏内 【程序说明】 已知某二叉树的前序遍历和中序遍历序列可以得到该二叉树的结构本程序实现了根据这两个遍历序列生成一棵链接表示的二叉树 构造二叉树的算法要点是由前序遍历序列该序列的第一个元素是根结点元素该元素将中序遍历序列分成左右两部分那些位于该元素之前的元素是它的左子树上的元素位于该元素之后的元素是它的右子树上的元素对于左右子树由它们的前序遍历序列的第一个元素可确定左右子树的根结点参照中序遍历序列又可进一步确定子树的左右子树元素如此递归地参照两个遍历序列最终构造出二叉树 两个遍历序列作为主函数main的参数为简单起见程序假定两个遍历序列是相容的主函数调用函数restore建立二叉树函数restore以树子树的前序遍历和中序遍历两序列及序列长为参数采用递归方法建立树子树函数postorder实现二叉树的后序遍历序列输出用来验证函数restore建立的二叉树 【程序】#includestdio.h> #include<stdlib.h>#defineMAX100typedef structnode{chardata struetnode*llink*rlink}TNODE charpred[MAX]inod[MAX]TNODE*restore Char*char*intmainintargcChar**argv {TNODE*root ifargc<3exit0 strcpypredargv[1] strcpyinodargv[2] root=restorepredinodstrlenpredpostorderroot printf/n/n}TNODE* restoreChar*pposchar*iposintn{ /*参数包括前序遍历序列数组和中序遍历数组*/TNODE* ptrChar*rpos intkifn<=0returnNULL ptr=TNODE*mallocsizeofTNODE ptr→data=1 for2rpos=iposrpos<ipos+nrpos++ if*rpos==*pposbreak k=3 ptr→llink=restoreppos+14k ptr→rlink=restore5+krpos+ 1n-1-kreturnptr }postorderTNODE*ptr{ ifptr==NULLreturn postorderptr→llink postorderptr→rlink prinft%cptr→data}
阅读以下程序说明和C程序将应填入n处的字句写在对应栏内 【程序说明】 某网络由n个端点组成这些端点被物理地分成若干个分离的端点组同一组内的两件端点i和j它们或直接相连或间接相连端点i和端点j间接相连是指在这两件端点之间有一个端点相连序列其中端点i和j分别与这相连序列中的某个端点直接相连网络的n个端点被统一编号为01n-1本程序输入所有直接相连的端点号对分别求出系统各分离端点组中的端点号并输出 程序根据输入的直接相连的两件端点号建立n个链表其中第i个链表的首指针为s[i]其结点是与端点i直接相连的所有端点号 程序依次处理各链表在处理s[i]链表中用top工作链表重新构造s[i]链表使s[i]链表对应系统中的一个端点组其中结点按端点号从小到大连接 【程序】#inelude#defineN100 typeefstructnode{intdata structnode*link}NODE NODE*s[N]intijntNODE *q*p*x*y*topmain{ printfEnternamberofcomponents. scanf%d&nfori=0i<ni++ printfEnterpairs./n whilescanf%d%d&i&j==2{ /*输入相连端点对生成相连端点结点链表*/ p=NODE*mallocsizeofNODE p→data=jp→link=s[i]s[i]=p p=NODE*mallocsizeofNODE p→data=ip→link=s[j]s[j]=p} fori=0i<ni++/*顺序处理各链表*/ fortop=s[i]1top!=NULL {/*将第i链表移入top工作链表并顺序处理工作链表的各结点*/ q=top 2 ifs¨[j=q→data]!=NULL{ /将j链表也移入工作链表*/ forp=s[j]p→link!=NULLp=p→link p→link=toptop=s[j] 3 } /*在重新生成的第i链表中寻找当前结点的插入点*/ fory=s[i]4x=yy=y→link ify!=NULL&&y→data==q→data freeq/*因重新生成的第i链表已有当前结点当前结点删除*/ else{ 5 ify==s[i]s[i]=q elsex→link=q }} fori=0i<ni++ {/*输出结果*/ ifs[i]==NULLcontinue forp=s[i]p!=NULL{ printf/t%dp→data q=p→linkfreepp=q }printf/n }}
阅读以下说明和C程序将应填入n处的字句写在对应栏内 【说明】 并行计算中需要将N个作业分配给N个处理器同时去完成每个处理器都能承担这N个作业但耗时不同下面的程序用回溯法计算总耗时最小的一种作业分配方案在该方案中为每个处理器分配1个不同的作业 程序中N个作业从0开始依次编号N个处理器也从0开始依次编号主要的变量说明如下 c[i][j]将作业i分配给处理器j的耗时 job[i]值为0表示作业i未分配值为j表示作业i分配给处理器j processor[k]值为0表示处理器k未分配作业值为1表示处理器k已分配作业 mincost最小总耗时【C程序】 #include<stdio.h>#defineN8/*N表示作业数和处理器数*/ intc[N][N]unsignedint mincost=65535/*设置min的初始值大于可能的总耗时*/int job[N]temp[N]processor[N]voidAssignintkunsignedint cost{inti if1&&cost<mincost{ mincost=cost fori=0i<Ni++temp[i]=job[i] }else{ fori=0i<Ni++/*分配作业k*/ if2&& cost+c[k][i]<mincost{ processor[i]=1job[k]=3 Assign4cost+c[k][i] 5job[k]=0 }/*if*/ }}/*Assign*/ voidmain{int ij fori=0i<Ni++{/*设置每个作业由不同处理器承担时耗时及全局数组的初值*/ processor[i]=0job[i]=0temp[i]=0 forj=0j<Nj++ scanf%d&c[i][j]} Assign00/*从作业0开始分配*/ printf/n最小耗时=%d/nmincost fori=0i<Ni++printfJob%disassigned toProcessor%d/nitemp[i]}/*main*/
采用哈希或散列技术构造查找表时需要考虑冲突碰撞的处理冲突是指______
在执行递归过程时通常使用的数据结构是______
阅读下列程序说明和C程序把应填入其中n处的字句写在对应栏内 【程序说明】 已知某二叉树的前序遍历和中序遍历序列可以得到该二叉树的结构本程序实现了根据这两个遍历序列生成一棵链接表示的二叉树 构造二叉树的算法要点是由前序遍历序列该序列的第一个元素是根结点元素该元素将中序遍历序列分成左右两部分那些位于该元素之前的元素是它的左子树上的元素位于该元素之后的元素是它的右子树上的元素对于左右子树由它们的前序遍历序列的第一个元素可确定左右子树的根结点参照中序遍历序列又可进一步确定子树的左右子树元素如此递归地参照两个遍历序列最终构造出二叉树 两个遍历序列作为主函数main的参数为简单起见程序假定两个遍历序列是相容的主函数调用函数restore建立二叉树函数restore以树子树的前序遍历和中序遍历两序列及序列长为参数采用递归方法建立树子树函数postorder实现二叉树的后序遍历序列输出用来验证函数restore建立的二叉树 【程序】#includestdio.h> #include<stdlib.h>#defineMAX100typedef structnode{chardata struetnode*llink*rlink}TNODE charpred[MAX]inod[MAX]TNODE*restore Char*char*intmainintargcChar**argv {TNODE*root ifargc<3exit0 strcpypredargv[1] strcpyinodargv[2] root=restorepredinodstrlenpredpostorderroot printf/n/n}TNODE* restoreChar*pposchar*iposintn{ /*参数包括前序遍历序列数组和中序遍历数组*/TNODE* ptrChar*rpos intkifn<=0returnNULL ptr=TNODE*mallocsizeofTNODE ptr→data=1 for2rpos=iposrpos<ipos+nrpos++ if*rpos==*pposbreak k=3 ptr→llink=restoreppos+14k ptr→rlink=restore5+krpos+ 1n-1-kreturnptr }postorderTNODE*ptr{ ifptr==NULLreturn postorderptr→llink postorderptr→rlink prinft%cptr→data}
阅读下列程序说明和C代码把应填入其中n处的字句写在对应栏内 【说明】 下面的程序能够计算不同图形的面积程序中把每个图形的数据定义成结构类型利用共同体类型描述2种图形的数据程序根据输入参数代表的图形类型求出图形的面积并输出 【程序】structCircle{ floatxy/*圆心位置*/ floatr/*圆半径*/}struct Rectangle{floatwidth /*矩形宽*/floatlength /*矩形长*/}unionshape {structCirclecircle/*圆数据结构*/ structRectanglerectangle/*矩形数据结构*/ }main{ unionshapeafloatarea intiprintfinputnumber 1circle2rectangle3end/n scanf%d&iwhile1 /*循环接收输入并计算输出*/ {switchi {case 1printfinputradius/n scanf%f2/*共同体类型变量接收输入*/ area=3.1415926*3 printftheareaofcircle=%f/narea break case2printfinputwidthandlength:/n seanf%f%f4 /*共同体类型变量接收输入*/ area=5 printftheareaofrectangle=%f/narea break }printfinput number1circle2rectangle3end/n scanf%d&i} }
数据结构中的树最适合用来表示______的情况
数组A[-5..50..8]按列存储若第一个元素的首地址为100且每个元素占用4个存储单元则元素A[23]的存储地址为______
阅读以下程序说明和C程序将应填入n处的字句写在对应栏内 【程序说明】 某网络由n个端点组成这些端点被物理地分成若干个分离的端点组同一组内的两件端点i和j它们或直接相连或间接相连端点i和端点j间接相连是指在这两件端点之间有一个端点相连序列其中端点i和j分别与这相连序列中的某个端点直接相连网络的n个端点被统一编号为01n-1本程序输入所有直接相连的端点号对分别求出系统各分离端点组中的端点号并输出 程序根据输入的直接相连的两件端点号建立n个链表其中第i个链表的首指针为s[i]其结点是与端点i直接相连的所有端点号 程序依次处理各链表在处理s[i]链表中用top工作链表重新构造s[i]链表使s[i]链表对应系统中的一个端点组其中结点按端点号从小到大连接 【程序】#inelude#defineN100 typeefstructnode{intdata structnode*link}NODE NODE*s[N]intijntNODE *q*p*x*y*topmain{ printfEnternamberofcomponents. scanf%d&nfori=0i<ni++ printfEnterpairs./n whilescanf%d%d&i&j==2{ /*输入相连端点对生成相连端点结点链表*/ p=NODE*mallocsizeofNODE p→data=jp→link=s[i]s[i]=p p=NODE*mallocsizeofNODE p→data=ip→link=s[j]s[j]=p} fori=0i<ni++/*顺序处理各链表*/ fortop=s[i]1top!=NULL {/*将第i链表移入top工作链表并顺序处理工作链表的各结点*/ q=top 2 ifs¨[j=q→data]!=NULL{ /将j链表也移入工作链表*/ forp=s[j]p→link!=NULLp=p→link p→link=toptop=s[j] 3 } /*在重新生成的第i链表中寻找当前结点的插入点*/ fory=s[i]4x=yy=y→link ify!=NULL&&y→data==q→data freeq/*因重新生成的第i链表已有当前结点当前结点删除*/ else{ 5 ify==s[i]s[i]=q elsex→link=q }} fori=0i<ni++ {/*输出结果*/ ifs[i]==NULLcontinue forp=s[i]p!=NULL{ printf/t%dp→data q=p→linkfreepp=q }printf/n }}
若线性表241331615188采用散列Hash法进行存储和查找设散列函数为HKey=Keymod11则构造散列表时发生冲突的元素为______其中的mod表示整除取余运算
用二分法来检索数据最确切的说法是______
若二维数组P[1..50..8]的首地址为base数组元素按行存储且每个元素占用1个存储单元则元素P[33]在该数组空间的地址为______
阅读下列程序说明和C代码把应填入其中n处的字句写在答卷的对应栏内 【说明】 程序利用选择排序算法对数组a中的N个整数按照从小到大的顺序排列并将排序结果显示出来【程序】 #defineN10main{ void1int ia[N]fori=0i<10i++/*输入*/ scanf%d&a[i]2 fori=0i<Ni++ /*输出*/printf%3da[i] }voidselectSonintx[]intn {intijkt forinti=03i++ {k=i forj=i+1j<nj++ if4k=j if5 {t=x[i]x[i]=x[k]x[k]=t}} }
阅读以下程序说明和C程序将应填入n处的字句写在对应栏内 【程序说明】 某网络由n个端点组成这些端点被物理地分成若干个分离的端点组同一组内的两件端点i和j它们或直接相连或间接相连端点i和端点j间接相连是指在这两件端点之间有一个端点相连序列其中端点i和j分别与这相连序列中的某个端点直接相连网络的n个端点被统一编号为01n-1本程序输入所有直接相连的端点号对分别求出系统各分离端点组中的端点号并输出 程序根据输入的直接相连的两件端点号建立n个链表其中第i个链表的首指针为s[i]其结点是与端点i直接相连的所有端点号 程序依次处理各链表在处理s[i]链表中用top工作链表重新构造s[i]链表使s[i]链表对应系统中的一个端点组其中结点按端点号从小到大连接 【程序】#inelude#defineN100 typeefstructnode{intdata structnode*link}NODE NODE*s[N]intijntNODE *q*p*x*y*topmain{ printfEnternamberofcomponents. scanf%d&nfori=0i<ni++ printfEnterpairs./n whilescanf%d%d&i&j==2{ /*输入相连端点对生成相连端点结点链表*/ p=NODE*mallocsizeofNODE p→data=jp→link=s[i]s[i]=p p=NODE*mallocsizeofNODE p→data=ip→link=s[j]s[j]=p} fori=0i<ni++/*顺序处理各链表*/ fortop=s[i]1top!=NULL {/*将第i链表移入top工作链表并顺序处理工作链表的各结点*/ q=top 2 ifs¨[j=q→data]!=NULL{ /将j链表也移入工作链表*/ forp=s[j]p→link!=NULLp=p→link p→link=toptop=s[j] 3 } /*在重新生成的第i链表中寻找当前结点的插入点*/ fory=s[i]4x=yy=y→link ify!=NULL&&y→data==q→data freeq/*因重新生成的第i链表已有当前结点当前结点删除*/ else{ 5 ify==s[i]s[i]=q elsex→link=q }} fori=0i<ni++ {/*输出结果*/ ifs[i]==NULLcontinue forp=s[i]p!=NULL{ printf/t%dp→data q=p→linkfreepp=q }printf/n }}
阅读以下说明和C程序将应填入n处的字句写在对应栏内 【说明】 并行计算中需要将N个作业分配给N个处理器同时去完成每个处理器都能承担这N个作业但耗时不同下面的程序用回溯法计算总耗时最小的一种作业分配方案在该方案中为每个处理器分配1个不同的作业 程序中N个作业从0开始依次编号N个处理器也从0开始依次编号主要的变量说明如下 c[i][j]将作业i分配给处理器j的耗时 job[i]值为0表示作业i未分配值为j表示作业i分配给处理器j processor[k]值为0表示处理器k未分配作业值为1表示处理器k已分配作业 mincost最小总耗时【C程序】 #include<stdio.h>#defineN8/*N表示作业数和处理器数*/ intc[N][N]unsignedint mincost=65535/*设置min的初始值大于可能的总耗时*/int job[N]temp[N]processor[N]voidAssignintkunsignedint cost{inti if1&&cost<mincost{ mincost=cost fori=0i<Ni++temp[i]=job[i] }else{ fori=0i<Ni++/*分配作业k*/ if2&& cost+c[k][i]<mincost{ processor[i]=1job[k]=3 Assign4cost+c[k][i] 5job[k]=0 }/*if*/ }}/*Assign*/ voidmain{int ij fori=0i<Ni++{/*设置每个作业由不同处理器承担时耗时及全局数组的初值*/ processor[i]=0job[i]=0temp[i]=0 forj=0j<Nj++ scanf%d&c[i][j]} Assign00/*从作业0开始分配*/ printf/n最小耗时=%d/nmincost fori=0i<Ni++printfJob%disassigned toProcessor%d/nitemp[i]}/*main*/
阅读以下说明和C代码将应填入n处的字句写在对应栏内 【说明】 在一图像处理系统中开发者定义了一个图像结构ImageCon其中定义了图像应该具有的属性当图像件的内容或状态发生变化时与之相关联的ImageView结构的值都需要发生改变一个ImageCon结构能够关联一组ImageView结构当ImageCon结构的内容或状态发生变化时所有与之相关联的ImageView结构都将被更新这种应用被称为观察者模式以下代码采用C语言实现能够正确编译通过 【C代码】#include<stdio.h>#define OBS_MAXNUM20/*一个ImageCon变量最多能够关联的ImageView变量的个数*/typedefvoid 1strucImageCon*structImageView* structImageView{funcupdate /*ImageView结构采用的更新函数*/ /*其他的结构字段省略*/} structImageCon{2 myObs[OBS_MAXNUM] /*存储所有与ImageCon相关联的ImageView结构指针*/intindex /*与ImageCon结构变量相关联的ImageView结构变量的个数*/}void attachstructImageCon*IMGstructImageView*ob{ /*关联Obersver结构ob与ImageCon结构IMG*/int loop=0 ifIMG→index>=OBS_MAXNUM||ob==NULLreturn forloop=0loop<IMG→indexloop++ ifIMG→myObs[loop]==obreturn IMG→myObs[IMG→index]=ob IMG→index++}voiddetachstructImageCon *IMGstructImageView*ob{ /*解除IMG结构与ob结构间的关系*/intloop ifob==NULLreturn forloop=0loop<IMG→indexloop++{ ifIMG→myObs[loop]==ob{ ifloop<=IMG→index-2 IMG→myObs[loop]=IMG→myObs[3] IMG→myObs[IMG→index-1]=NULL IMG→index-- breack }} }voidupdatelstructImageCon*IMGstructImageView *ob{/*更新ob结构的值更新代码省略*/}void update2structImageCon*IMGstructImageView*ob{ /*更新ob结构的值更新代码省略*/}void notifyObsstructImageCon*IMG{ /*当IMG结构的值发生变化时通知与之关联的所有ImageView结构变量*/int loopforloop=0loop<IMG→indexloop++{ IMG→myObs[loop]→update4 }} voidmain{structImageCon IMG/*定义一ImageCon变量*/structImageView explorer1explorer2/*定义两个ImageView变量*/ /*初始化与ImageCon变量相关的ImageView变量个数为0*/ IMG.index=0 explorer1.update=updatel/*设置explorerl变量的更新函数*/ explorer2.update=update2/*设置explorer2变量的更新函数*/ attach&IMG&explorer1/*关联explorer1与IMG对象*/ attach&IMG&explorer1/*关联explorer1与IMG对象*/ /*其他代码省略*/5 return}
热门题库
更多
中级信息系统管理工程师
初级程序员
中级软件设计师
初级网络管理员
初级信息处理技术员
中级数据库系统工程师
中级多媒体应用设计师
高级系统分析师
高级网络规划设计师
高级系统架构师
中级信息系统监理师
初级通信工程师
中级通信工程师
通信新技术、新业务知识
无线通信专业技术
移动通信专业技术