编程异位
直接对字符串按字符加减密钥的位数就可以了。
#include
<iostream.h>
#define
MAX
1000
//加密
char
*
Encryption(char
*E,int
Key)
{
for(int
i=0;*(E+i);i++)
{
*(E+i)
+=
Key;
if(*(E+i)>'z')
*(E+i)
-=
('z'-'a')+1;
}
return
E;
}
//解密
char
*
Decryption(char
*E,int
Key)
{
for(int
i=0;*(E+i);i++)
{
*(E+i)
-=
Key;
if(*(E+i)<'a')
*(E+i)
+=
('z'-'a')+1;
}
return
E;
}
void
main()
{
char
a[MAX];
int
key;
cout<<"输入字符串:"<<endl;
cin
>>
a;
cout<<"输入密钥:"<<endl;
cin
>>key;
cout<<"加密输出:"<<Encryption(a,key)<<endl;
cout<<"解密输出:"<<Decryption(a,key)<<endl;
}
B. 关于C++编程中的 循环移位问题(急啊)
voidrotation(intarr[],intlen,intoffset){
int*temp=newint[len];
//如果offset比数组还长,取余
offset%=len;
//做rotation
inti=0;
intj=offset;
while(i!=len){
temp[i++]=arr[j++];
if(j==len)j%=len;
}
//最后拷回去
for(inti=0;i<len;++i){
arr[i]=temp[i];
}
//new完要delete
delete[]temp;
}
C. c语言 >>移位问题
注意:这里不是表示 移位
而是表示读取
相当于C语言的 gets()函数
或者类似于scanf()
你这个就可以实现,有什么问题?
D. 西门子PLC编程中的移位指令有什么作用,感觉好抽象,专家解释下
做数据处理,比如生产线上废品的检测,从进口剔废口的距离,就可以用移位处理
E. c语言编程:字符串替换与移位
帮你写好了
#include<stdio.h>
#include<string.h>
#define size 100
void main()
{
char a[size],temp;
int i, len;
printf("输入字符串:\n");
gets(a);
printf("原来的字符串为:\n");
puts(a);
len = strlen(a);
for(i=0; i<len; i++)
{
if(a[i]=='a')
{
a[i]='e';
}
else if(a[i]=='e')
{
a[i]='a';
}
else if(a[i]=='d')
{
a[i]='t';
}
else if(a[i]=='t')
{
a[i]='d';
}
}
printf("转换后的字符串为:\n");
puts(a);
temp = a[len-1];
for(i=1; i<len; i++)
{
a[len-i] = a[len-i-1];
}
a[0] = temp;
printf("循环右移1位后字符串为:\n");
puts(a);
}
F. C++编程定义检验是否为字母异位词的函数,求助,应该怎么打啊0-0~题目如图
#include<iostream>
#include<string>
usingnamespacestd;
boolisAnagram(stringstr1,stringstr2);
intmain()
{
stringstr1,str2;
getline(cin,str1);
getline(cin,str2);
cout<<boolalpha<<isAnagram(str1,str2)<<endl;
return0;
}
boolisAnagram(stringstr1,stringstr2)
{
intlen1=str1.length();
intlen2=str2.length();
if(len1!=len2) returnfalse;
boolfind;
for(inti=0;i<len1;i++)
{
find=false;
for(intj=0;j<len2;j++)
{
if(str1[i]==str2[j])
{
str1[i]='