题目是这个样子的
这个是我写的代码
这个是运行出来的结果我不知道错哪里了
大家能不能分享一下自己的看法呀
加密前后的对应关系错了
你要知道 z 对应 A 怎么可能是 a[i]=a[i]-31,你这个只满足了a-y的范围
#include<stdio.h>
#include<string.h>
int main() {
char a[1001];
gets_s(a, 1000);
for (int i = 0; a[i] != '\0'; ++i) {
if (a[i] >= 'a' && a[i] <= 'z') {
a[i] = (a[i] - 'a' + 1) % 26 + 'A';
}
else if (a[i] >= 'A' && a[i] <= 'Z') {
a[i] = (a[i] - 'A' + 1) % 26 + 'a';
}
}
for (int i = 0; a[i] != '\0'; ++i)
printf("%c", a[i]);
}