用C语言编写完整,题目:所谓藏头诗,就是将这首诗每一句的第一个字(1个汉字占2个字符)连起来,所组成的内容就是该诗的真正含义。编写一个函数....change(....)(函数的参数和返回值类型自行定义)实现藏头诗的解密,输入一首藏头诗(假设只有4句),输出其真实含义。 例如输入: 一叶轻舟向东流, 帆梢轻握杨柳手, 风纤碧波微起舞, 顺水任从雅客悠。 则输出: 一帆风顺
时间: 2023-11-17 12:08:11 浏览: 190
以下是用C语言编写的实现藏头诗解密的函数:
```c
#include <stdio.h>
#include <string.h>
char* change(char* poem[]) {
static char result[9]; // 存放解密后的内容
for (int i = 0; i < 4; i++) {
result[i * 2] = poem[i][0]; // 每一句的第一个字
}
result[8] = '\0'; // 字符串结尾标志
return result;
}
int main() {
char* poem[] = {
"一叶轻舟向东流",
"帆梢轻握杨柳手",
"风纤碧波微起舞",
"顺水任从雅客悠"
};
char* result = change(poem);
printf("%s\n", result); // 输出结果
return 0;
}
```
在上面的程序中,我们定义了一个 `change` 函数,它接收一个包含4句藏头诗的字符串数组 `poem` 作为参数。函数首先定义了一个静态的字符数组 `result`,用于存放解密后的内容。然后使用一个循环遍历每一句藏头诗,取出每句的第一个字存入 `result` 数组中。最后,为 `result` 数组添加一个字符串结尾标志,然后返回该数组。
在 `main` 函数中,我们定义了一个包含4句藏头诗的字符串数组 `poem`,然后调用 `change` 函数并将 `poem` 作为参数传递给它。函数返回解密后的内容,我们将其输出即可得到结果。
阅读全文