C语言把输入的字符串每个字符的ASC码值加三后输出对应的字符
时间: 2024-11-27 08:24:32 浏览: 7
在C语言中,可以遍历输入的字符串,对每个字符的ASCII码值增加3,然后再转换回字符并存储到新的字符串中。以下是具体的代码实现:
```c
#include <stdio.h>
#include <string.h>
// 将ASCII码值转换为字符
char get_char_from_ascii(int ascii_val) {
if (ascii_val >= 0 && ascii_val <= 127) { // ASCII码范围
return (char)ascii_val;
} else {
printf("Invalid ASCII value.\n");
return '\0'; // 返回空字符防止后续错误
}
}
void increment_ascii_string(char *input_str) {
char output_str[strlen(input_str)]; // 存储结果的空间
int i;
for (i = 0; input_str[i]; i++) { // 遍历输入字符串,直到遇到空字符
output_str[i] = get_char_from_ascii(input_str[i] + 3); // 加上3并转换回字符
}
// 结束符添加在字符串末尾
output_str[i] = '\0';
printf("Resulting string after incrementing ASCII values by 3: %s\n", output_str);
}
int main() {
char input[100];
printf("Enter a string: ");
fgets(input, sizeof(input), stdin);
// 删除输入字符串结尾的换行符
input[strlen(input) - 1] = '\0';
increment_ascii_string(input);
return 0;
}
```
当你运行这个程序,它会提示你输入一个字符串,然后将每个字符的ASCII码值加3,并输出处理后的字符串。
阅读全文