浙大版《C语言程序设计(第4版)》题目集参考答案
本题要求编写一个解密藏尾诗的程序。
注:在 2023 年 1 月 17 日 15 点 14 分以后,该题数据修改为 UTF-8 编码。
输入格式:
输入为一首中文藏尾诗,一共四句。每句一行,但句子不一定是等长的,最短一个汉字,最长九个汉字。注意:一个汉字占三个字节。
输出格式:
取出每句的最后一个汉字并连接在一起形成一个字符串并输出。同时在末尾输入一个换行符。
输入样例:
悠悠田园风
然而心难平
兰花轻涌浪
兰香愈幽静
输出样例:
风平浪静
提交结果:
基本思路:
接收藏头诗,然后开辟一个大小为12的动态空间,依次复制每句的后三个字节到动态空间里
代码实现:
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#define MAXM 4
#define MAXN 28
int main()
{
char poem[MAXM][MAXN] = { '0' };
for (int i = 0; i < MAXM; i++)//接收藏尾诗
{
scanf("%s", poem[i]);
getchar();
}
char* acr = (char*)malloc(12);
char* tmp = acr;
for (int i = 0; i < MAXM; i++)//取出每句的最后一个汉字连接
{
int len = strlen(poem[i]);
memcpy(tmp, poem[i] + len - 3, 3);
tmp += 3;
}
printf("%s\n", acr);
return 0;
}
欢迎提问和纠错,共同讨论一起进步!