把字符串中所有字母改成该字母的下一个字母,要求大写字母仍为大写,小写字母仍为小写,用c语言写
时间: 2024-05-15 19:18:41 浏览: 64
可以使用C语言中的字符操作函数,如下所示:
```c
#include <stdio.h>
#include <string.h>
void shiftString(char str[]) {
int len = strlen(str);
for (int i = 0; i < len; i++) {
// 如果是大写字母,将其转换为下一个大写字母
if (str[i] >= 'A' && str[i] <= 'Z') {
str[i] = (str[i] - 'A' + 1) % 26 + 'A';
}
// 如果是小写字母,将其转换为下一个小写字母
else if (str[i] >= 'a' && str[i] <= 'z') {
str[i] = (str[i] - 'a' + 1) % 26 + 'a';
}
// 其他字符不变
else {
continue;
}
}
}
int main() {
char str[] = "Hello, World!";
printf("Original string: %s\n", str);
shiftString(str);
printf("Shifted string: %s\n", str);
return 0;
}
```
这个程序会将字符串中的所有字母都向后移动一个位置,大写字母仍保持大写,小写字母仍保持小写。例如,"Hello, World!" 会变成 "Ifmmp, Xpsme!"。
阅读全文