如果你用字母表的顺序,将“HAL”一词的每一个字母用下一个字母替换,则是“IBM”。请用c语言编写一个程序找出这样的联系。在第一行输入一个正整数n,表示后面的字符串的数目,接下来的n行中,每行输入一个字符串(均由大写字母组成,字符串长度不超过50)
时间: 2024-11-20 10:42:40 浏览: 14
在C语言中,你可以创建一个简单的循环结构来实现这个任务。这里是一个基本的示例程序:
```c
#include <stdio.h>
#include <string.h>
int main() {
int n;
// 输入字符串的数量
scanf("%d", &n);
for (int i = 0; i < n; i++) {
char input[51];
fgets(input, sizeof(input), stdin); // 读取一行字符串,包括换行符
input[strcspn(input, "\n")] = '\0'; // 移除fgets读取到的换行符
char result[51] = "";
for (int j = 0; input[j]; j++) {
result[j] = ((input[j] - 'A' + 1) % 26) + 'A';
}
result[strcspn(result, "A")] = '\0'; // 结果不含'A',所以截断
printf("Original string: %s\n", input);
printf("Transformed string: %s\n\n", result);
}
return 0;
}
```
该程序首先从用户那里接收字符串的数量,然后对于每个输入的字符串,它会计算每个字符在字母表中的位置并加1(如果超过Z,就回圈到A),形成新的字符串。最后,输出原始字符串和变换后的字符串。
阅读全文