首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请编写函数fun,其功能是:移动字符串中的内容,移动的规则是把第1~m个字符,平移到字符串的最后,把第m+1到最后的字符移到字符串的前部。 例如,字符串中原有的内容为"ABCDEFGHI-JK",m的值为3,移动后,字符串中的内容应该是"DEFGH
请编写函数fun,其功能是:移动字符串中的内容,移动的规则是把第1~m个字符,平移到字符串的最后,把第m+1到最后的字符移到字符串的前部。 例如,字符串中原有的内容为"ABCDEFGHI-JK",m的值为3,移动后,字符串中的内容应该是"DEFGH
admin
2018-03-28
45
问题
请编写函数fun,其功能是:移动字符串中的内容,移动的规则是把第1~m个字符,平移到字符串的最后,把第m+1到最后的字符移到字符串的前部。
例如,字符串中原有的内容为"ABCDEFGHI-JK",m的值为3,移动后,字符串中的内容应该是"DEFGHIJKABC"。
注意:部分源程序在文件PROG1.C中。
请勿改动main函数和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
试题程序:
#include<stdio.h>
#include<string.h>
#define N 80
void fun(char*w,int m)
{
}
void main()
{
FILE * wf;
char a[N]="ABCDEFGHIJK",b
[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");
/*********found*********/
wf=fopen("out.dat","w");
fun(b,3);
fprintf(wf,"%s",b);
fclose(wf);
/*********found*********/
}
选项
答案
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个字符放到最后一个字符中*/ } }
解析
本题应采用“循环左移”的算法,多层循环用于控制移动的字符的个数,即需进行多少次循环,内嵌循环的作用是将从第2个字符以后的每个字符依次前移一个位置,最后将第1个字符放到最后一个字符中。
转载请注明原文地址:https://kaotiyun.com/show/5Jxp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
以下程序段的输出结果是【 】。inti=9; printf("%o\n",i);
有以下程序段:intx=3;do{printf("%d",x-=2);}while(!(--x));其输出结果是______。
下列关于字符串的说法中错误的是
下列程序输出结果是()。#includemain(){chara[]={’a’,’b’,’c’,’d’,’e’,’f’,’\0’};inti,j;i=sizeof(a);
若有以下程序main(){intp,a=5;if(p=a!=0)printf("%d\n",p);elsepfintf("%d\n",p+2);}执行后输出结果是
下面语句中不能定义一个数组,元素值依次分别为1,1,1,0,0的是______。
已知inta=2,b=3;则执行表达式a=a<b后,变量a的值为()。
下面程序的功能是:将字符数组a中下标值为偶数的元素从小到大排列,其他元素不变。请填空。#include<stdio.h>#include<string.h>main(){chara[]="clanguage",t;
以下选项中可作为C语言合法整数的是()。
设fp为指向某二进制文件的指针,且已读到此文件末尾,则函数feof(fp)的返回值为()。
随机试题
病毒性心肌炎常见体征有
全国人民代表大会常务委员会的组成人员不得兼任( )的职务。
施工平行承发包对费用控制的特点体现在( )。
在Excel中输入字符串时,若该字符串的长度超过单元格的显示宽度,则超过的部分有可能()。
资产评估收费应当遵循()原则。
阅读下文。回答86—90题。科学家在7000名志愿者的协助下,联合研制成功了“电子大脑”。这是科学史上第一次制成能够“解读”思维的“人脑图”。设计者说,这是一项未来技术,将帮助人类理解人体最复杂的“机器”的工作原理。美国洛杉矶大学神经细胞扫
销售促进
某字长为8bit的计算机中,x和y为无符号整数,已知x=68,y=80,x和y分别存放在寄存器A和B中。请回答下列问题(要求最终用十六进制表示二进制序列)。若x和y相加后的结果存放存寄存器C中,则寄存器C中的内容是什么?运算结果是否正确?此时,零标志Z
二次型f(x1,x2,x3)=-2x1x2+6x1x3-6x2x3的秩为2。(Ⅰ)求参数c及此二次型对应矩阵的特征值;(Ⅱ)指出方程f(x1,x2,x3)=1表示何种二次曲面。
对计算机操作系统的作用描述完整的是()。
最新回复
(
0
)