|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
#include<stdio.h>
int main()
{
char a[10] = { 0 }, i = 0, n,b=0;
while (i < 10)
{
scanf("%c", &n);
a[i] = n;
i++;
printf("%c", n);//原文
while ((a[i] >= 'a') &&(a[i]<= 'z') || (a[i] >= 'A') &&(a[i]<= 'Z'))
{
if ((a[i] = 'a' + b) || (a[i] = 'A' + b))
a[i]= a[i] + 25 - b;
b++;
if (b>26)
printf("%c", a[i]);//密码
i++;
if(i>10)
break;
}
}
return 0;
}
将原文以此规律翻译
第i个字母变成第(26-i+1)个,例如a变成z
为什么我不能输出密码
本帖最后由 番杰 于 2021-11-19 21:27 编辑
- #include<stdio.h>
- #include<string.h>
- int main()
- {
- char a[1024] , i = 0;
- scanf("%s", &a);
-
- printf("原文:%s\n", a);//原文
- while (i<strlen(a))
- {
- if( (a[i] >= 'a') &&(a[i]<= 'z'))
- {
- a[i] = (25 - (a[i] - 'a') ) + 'a';
- i++;
- }
- else if ((a[i] >= 'A') &&(a[i]<= 'Z'))
- {
- a[i] = (25 - (a[i] - 'A') ) + 'A';
- i++;
- }
- else
- i++;
-
- }
- printf("密码:%s", a);//密码
-
- return 0;
- }
复制代码
|
|