首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读下列函数说明和C代码,将应填入(n)处的字句写在对应栏内。 【说明】 函数void rcr(int a[],int n,int k)的功能是:将数组a中的元素s[0]~9[n-1]循环向右平移k个位置。 为了达到总移动次数不超过n的要求,每
阅读下列函数说明和C代码,将应填入(n)处的字句写在对应栏内。 【说明】 函数void rcr(int a[],int n,int k)的功能是:将数组a中的元素s[0]~9[n-1]循环向右平移k个位置。 为了达到总移动次数不超过n的要求,每
admin
2009-02-15
70
问题
阅读下列函数说明和C代码,将应填入(n)处的字句写在对应栏内。
【说明】
函数void rcr(int a[],int n,int k)的功能是:将数组a中的元素s[0]~9[n-1]循环向右平移k个位置。
为了达到总移动次数不超过n的要求,每个元素都必须只经过一次移动到达目标位置。在函数rcr中用如下算法实现:首先备份a[0]的值,然后计算应移动到a[0]的元素的下标 p,并将a[P]的值移至a[0];接着计算应移动到a[p]的元素的下标q,并将a[q]的值移至 a[p];依次类推,直到将a[0]的备份值移到正确位置。
若此时移动到位的元素个数已经为n,则结束;否则,再备份a[1]的值,然后计算应移动到a[1]的元素的下标p,并将a[p]的值移至9[1];接着计算应移动到a[p]的元素的下标q,并将a[q]的值移至a[p];依次类推,直到将a[1]的备份值移到正确位置。
若此时移动到位的元素个数已经为n,则结束;否则,从a[2]开始,重复上述过程,直至将所有的元素都移动到目标位置时为止。
例如,数组a中的6个元素如图1(a)所示,循环向右平移两个位置后元素的排列情况如图1(b)所示。
void rcr( int a[] ,int n,int k)
{ int i,j,t,temp,count;
count =0; /*记录移动元素的次数*/
k=k%n;
if((1)){ /*若k是n的倍数,则元素无须移动;否则,每个元素都要移动*/
i=0
while(count<n) {
j=i;t=i;
temp =a[1]; /*备份a
的值*/
/*移动相关元素,直到计算出a
应移动到的目标位置*/
while((j=(2))! =i){
a[t]=a[j];
t=(3);
count++;
}
(4)= temp;count ++;
(5);
}
}
}
选项
答案
(1)k或k!=0 (2)(j-k+n)%n或(t-k+n)%n (3)j (4)a[t]或等价表达式 (5)i++或等价表达式
解析
(1)判断k执行k=k%n后是否为0,即是否是n的倍数,应填入k或k!=0。(2)j表示要移动到a[t]的元素的位置,于是j和t的关系为j=(t-k+n)%n;当执行完j=i,t=i后,j=t,于是此处可填入(j-k+n)%n或(t-k+n)%n。(3)将a[j]移动到a[t]后,需要将 t指向j,即此处填入j。(4)将暂存在temp中的值移动到a[t]中。即此处填入a[t]或等价表达式。(5)此处while循环的递增条件,显然应该是i++或其他等价表达式。
转载请注明原文地址:https://kaotiyun.com/show/zojZ777K
本试题收录于:
程序员下午应用技术考试题库软考初级分类
0
程序员下午应用技术考试
软考初级
相关试题推荐
文件ABC.bmp存放在F盘的T文件夹中的G子文件夹下,它的完整文件标识符是______。
以下叙述中,针对应用需求,(68)选用了不适当的信息处理方法。
某学生要进行数据结构、操作系统和计算机组成原理三门课的考试。已知数据结构成绩是85分、操作系统成绩是87分,希望总分达到240分,需要求出计算机组成原理成绩应考的分数。此类问题可以使用Excel中的(53)功能来解决。
在Excel的A1单元格中输入函数“=LEFT(“信息处理技术员”,2)”,按回车键后,A1单元格中的值为()。
字符串编辑有3种基本操作:在指定位置插入一个字符、在指定位置删除一个字符、在指定位置用另一个字符替换原来的字符。将字符串ABCDE,编辑成ECDFE,至少需要执行(6)次基本操作。
下列选项中,既是输入设备又是输出设备的是(6)。
以下关于信息存储的叙述中,不正确的是(66)。
一般来说,收集到的数据经过清洗后,还需要进行分类、排序等工作。这样做的好处主要是(65)________________。
将四个元素a,b,c,d分成非空的两组,不计组内顺序和组间顺序,共有()种分组方法。
在Excel2007中,(43)________________不是计算从A1到A6单元格中数据之和的公式。
随机试题
引发爆炸事故的直接原因可归纳为机械、物质或环境的不安全状态和()。
绿色植物是最高级的营养级,动物次之。
以下哪项不是动眼神经所支配
下列药物在使用时,需缓慢静脉滴注,注意监测心率、心律,复查心电图的是
合成糖原时,葡萄糖基的直接供体是
下列哪些选项属于行政给付?
以保险标的的价值确定与否为标准,可将保险分为定值保险与不定值保险。()
假设某年6月底某品种国债的现货收盘价为112.15元,折算率定为1.10,有一客户拥有该债券面值1000手,则该客户可融入的资金量为( )元。
若变量已正确定义,有以下程序段:i=0;do{printf(“9/6d,”,i);}while(i++);printf(“%d\n”,i);其输出结果是()。
2013年下半年,某市房地产市场一片繁荣。该市居民钱某见状欲将多年经商的积蓄投资于房产,遂四处寻找合适房源。2013年10月5日,钱某从孙某手中以每平方米2万元的价格购得二手房一套。后发现孙某只是该房屋的租户并非该房屋的所有人,但该房屋的所有人阮某对孙某的
最新回复
(
0
)