|
楼主 |
发表于 2022-7-14 19:46:42
|
显示全部楼层
本题建议用函数编写
源码:
- #include<iostream>
- #include<string.h>
- using namespace std;
- int trans(char t)
- {
- int k,f;
- k=int(t);
- if(k>=65 and k<=90)
- {
- f=k-65;
- return f;
- }
- if(k>=97 and k<=122)
- {
- f=k-97;
- return f;
- }
- }
- int main(){
- char m[1000],key[100],c[1000];
- char s;
- int i,a,b,tt;
- int j=0;
- cin>>key>>c;
- for (i=0;i<strlen(c);i++)
- {
- s=key[j];
- a=trans(s);
- b=int(c[i]);
- tt=b-a;
- if(b>=65 and b<=90)
- {
- if(tt<65)
- m[i]=char(tt+26);
- else
- m[i]=char(tt);
- }
- else if(b>=97 and b<=122)
- {
- if(tt<97)
- m[i]=char(tt+26);
- else
- m[i]=char(tt);
- }
- j++;
- if(j>strlen(key)-1)
- j=0;
- }
- cout<<m;
- return 0;
- }
复制代码
|
|