09-11-13:C语言字符串的循环右移
来源:互联网 发布:lol物品数据库哪里有 编辑:程序博客网 时间:2024/06/05 04:08
//实现的功能
//input: abcdefg
// 2
//output: fgabcd
//input: abcdefg
// -2
//output: cdefgab
#include <stdio.h>
int main() {
char a[100], b[100];
int n;
/*
* 输入字符串,保存到a中
*/
printf("Please input your string: ");
scanf("%s", a);
printf("/n");
/*
* 输入移位次数,保存到n中
*/
scanf("%d", &n);
/*
* 获得字符串的长度
*/
int string_length;
for (string_length = 0; a[string_length] != '/0'; ++string_length)
;
/*
* 移位
*/
int i, j;
if (n > 0) {
for (i = string_length + n; i >= n; i--)
a[i] = a[i-n];
for (i = 0; i < n; i++)
a[i] = a[string_length+i];
}
else if (n < 0) {
for (i = string_length; i <=string_length-n; i++)
a[i] = a[i-string_length];
for (i = 0; i <= string_length; i++)
a[i] = a[i-n];
}
else
;
a[string_length] = '/0';
printf("/n%s/n", a);
return 0;
}
#include <stdio.h>
#include <stdlib.h>
- void loopMove(char *pStr,int steps)
- {
- int length=0,i=0;
- char *sub=pStr,*str;
- while (*pStr!='/0')
- {
- length++;
- pStr++;
- }
- pStr--;
- if (steps>length)
- steps=steps-length;
- str=(char *)malloc(steps);
- for (i=0;i<steps;i++)
- str[i]=sub[length-steps+i];
- for (i=0;i<length-steps;i++)
- sub[length-i-1]=sub[length-steps-i-1];
- for (i=0;i<steps;i++)
- sub[i]=str[i];
- }
- int main()
- {
- char a[]="abcdef";
- loopMove(a,7);
- printf("%s/n",a);
- return 0;
- }
- 09-11-13:C语言字符串的循环右移
- C语言 字符串循环右移
- 【C语言】字符串右循环移位
- 【C语言】字符串右循环移位
- 字符串的循环右移
- 字符串的循环右移
- 字符串循环右移c实现
- 字符串循环右移
- 字符串循环右移
- 字符串循环右移
- 字符串循环右移
- 字符串循环右移
- 字符串循环右移
- 字符串循环右移
- 字符串循环右移
- 字符串循环右移
- 字符串循环右移
- 字符串循环右移
- 学习SqlDataAdapter——【之一】
- JCS实现分布式缓存共享
- 将数组里的成员升序排列
- 制作 Pocket PC/Smartphone软件安装包
- Linux内存管理-函数详解
- 09-11-13:C语言字符串的循环右移
- OKI 5860sp 的控制命令
- #define总结-#define用法集锦 (网上资料汇集)
- 2009.11.13
- mysql alter 语句用法,添加、修改、删除字段等
- 拜师了。。。
- VBS控制Excel常见方法
- 冒泡排序算法
- AS3学习笔记