首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请编写函数fun(),该函数的功能是:移动字符串中的内容,移动的规则是把第1到第m个字符,平移到字符串的最后,把第m+1到最后的字符移到字符串的前部。 例如,字符串中原有的内容为ABCDEFGHIJK,m的值为 3,移动后,字符串中的内容应该是DEF
请编写函数fun(),该函数的功能是:移动字符串中的内容,移动的规则是把第1到第m个字符,平移到字符串的最后,把第m+1到最后的字符移到字符串的前部。 例如,字符串中原有的内容为ABCDEFGHIJK,m的值为 3,移动后,字符串中的内容应该是DEF
admin
2010-05-05
88
问题
请编写函数fun(),该函数的功能是:移动字符串中的内容,移动的规则是把第1到第m个字符,平移到字符串的最后,把第m+1到最后的字符移到字符串的前部。
例如,字符串中原有的内容为ABCDEFGHIJK,m的值为 3,移动后,字符串中的内容应该是DEFGHIJKABC。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
试题程序:
#include <stdio. h>
#include <string.h>
#define N 80
void fun (char *w, int m)
{
}
main ( )
{
char a[N]= "ABCDEFGHIJK";
int m;
printf ("The origina string : \n");
puts (a);
printf("\n\nEnter m: ");
scanf ("%d", &m);
fun (a, m);
printf (" \nThe string after moving : \n");
puts (a);
printf ("\n\n");
}
选项
答案
void fun(char *w,int m) { int i,j; char t; for(i=1;i<=m;i++) /*进行m次的循环左移*/ {t=w[0]; for(j=1/w[j]!=’\0’;j++) /*从第2个字符开始以后的每个字符都依次前移一个字符*/ w[j-1]=w[j]; w[j-1]=t; /*将第1个字符放到最后一个字符中*/ } }
解析
我们在学习C语言的时候,应该广泛地应用到循环的方法,本题应采用“循环左移”的算法。即从第2个字符开始以后的每个字符都依次前移一个字符,而原来的第1个字符放在串中的最后一个字符。当要平移m个字符时,则要进行m次的循环左移。内嵌的循环的作用是完成从第2个字符开始以后的每个字符都依次前移一个字符,w[j-1]=t的作用是将第1个字符放到最后一个字符中。
转载请注明原文地址:https://www.kaotiyun.com/show/SHID777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
我国是统一的多民族国家,下列关于我国国家结构形式的表述,不正确的是()。
中国探月计划迅速发展,下列对中国航天领域描述错误的是()。
化学与日常生活密切相关,下列说法错误的是()。
下列人物与研究成果对应错误的一项是()。
甲挑唆乙(甲、乙均已成年)去打正在熟睡的狗,狗被激怒后追乙,恰巧丙经过,乙便躲在丙的身后,狗将丙咬伤。根据《侵权责任法》的有关规定,下列表述错误的是()。
市场在资源配置中发挥着越来越重要的作用,但面对世界金融危机,市场的失灵引起了各国政府的重视。市场不具有的功能是()。
根据菲利普斯曲线.降低通货膨胀率的办法是()。
能直接证明门捷列夫元素周期表理论正确的是(,)。
有一类分数,每个分子与分母的和是100,如果分子减K.分母加K,得新的分数约分后等于,其中K是正整数,则该类分数中分数值最小的是()。
随机试题
若三相异步电动机采用变频调速时,当频率降低,转速将()。
已知某企业2007年产品产量为500万件,产品总成本3000万元,其中,固定成本500万元,则该企业2007年单位产品变动成本为
下列关于素质的冰山模型的描述中,不正确的是()
美国国家卫生研究院的失眠分类是
A.臀大肌无力B.臀中肌无力C.股四头肌无力D.踝背屈肌肌力下降E.中枢神经系统损伤鸭步是由于
以下说法错误的是()
做内生肌酐清除率检查,实验前3日的饮食是
()科目编码必须按财政部的统一编码方案进行编制。
根据《侵权责任法》的有关规定,下列表述正确的是()。
Windows2000文件名的最大长度是______。
最新回复
(
0
)