C语言循环语句如何将输入的字符串的ASCII码加3转化为另一个字符串后输出
时间: 2024-10-19 16:04:26 浏览: 28
C语言训练程序_统计字符串中ASII值为偶数奇数的个数
在C语言中,你可以通过遍历输入字符串并逐个字符地对ASCII值加3来实现这个转换。这里是一个简单的示例:
```c
#include <stdio.h>
#include <string.h>
void increment_ascii(char *input_string) {
int len = strlen(input_string);
for (int i = 0; i < len; i++) {
char original_char = input_string[i];
if (original_char >= 'a' && original_char <= 'z') { // 对小写字母操作
char incremented_char = original_char + 3 - 'a'; // 如果是a-z,直接加3,否则会溢出
if (incremented_char > 'z') { // 避免超出z
incremented_char -= 26;
}
input_string[i] = incremented_char;
} else if (original_char >= 'A' && original_char <= 'Z') { // 对大写字母操作
char incremented_char = original_char + 3 - 'A';
if (incremented_char > 'Z') {
incremented_char -= 26;
}
input_string[i] = incremented_char;
} else { // 对其他非字母字符不做处理
continue;
}
}
}
// 输出转换后的字符串
void print_string(char *output_string) {
printf("%s", output_string);
}
int main() {
char input[100];
printf("Enter a string: ");
fgets(input, sizeof(input), stdin); // 读取一行输入,包括换行符
input[strlen(input) - 1] = '\0'; // 去除换行符
char output[100];
increment_ascii(input);
output_string = input; // 将修改后的字符串赋值给输出变量
print_string(output);
return 0;
}
```
阅读全文