任务描述
请编写程序将一串5个字符组成的英文字符串译成密码,规则为:例如,将“China”译成密码,密码规律是:用原来的字母后面第4个字母代替原来的字母。例如,字母'A'后面第4个字母是“E”,用“E”代替“A”。因此,“China”应译为“Glmre”。请编写一程序,用赋初值的方法使c1,c2,c3,c4,c5这5个变量的值分别为'C','h','i','n','a',经过运算,使c1,c2,c3,c4,c5分别变为'G','l','m','r','e'。请输出这5个字符。
本关知识
字符输出
C语言中单个字符的输出有两种方法:一是通过printf函数,二是利用putchar函数。例如:
char a = ‘H’;printf("%c", a);
或
char a = ‘H’;putchar(a);
编程要求
本关的编程任务是补全EncryptCha\fracter.c文件中main函数,以实现按指定规则对字符加密的功能。 实际的测试样例参见下文。 本关涉及的代码文件EncryptCha\fracter.c的代码框架如下: //包含标准输入输出函数 #include <stdio.h>
//定义main函数int main(){char c1,c2,c3,c4,c5;//请在此添加‘字符加密’的代码/*****************Begin******************//***************** End ******************/return 0;}
其中: #include <stdio.h>的意思是包含stdio函数库,使得当前程序可以调用标准输入输出函数库中的函数。 int main()是定义main函数,每个C程序都必须有且只有一个main函数。该函数是整个程序的入口,程序执行会从main函数的第一条语句开始。 int表示main函数的返回值类型。函数结束时需要返回一个整数。 return 0; 是函数返回,这里是从main函数返回,0是返回的整数值。return语句会结束一个函数的运行。
测试说明
本关的测试过程如下:
- 平台编译
EncryptCha\fracter.c,然后链接相关程序库并生成EncryptCha\fracter.exe; - 平台运行
EncryptCha\fracter.exe,并以标准方式提供测试输入; - 平台获取
EncryptCha\fracter.exe的输出,然后将其与预测输出对比,如果一致则测试通过;否则测试失败。
代码展示:
#include <stdio.h>
//定义main函数
int main()
{
//请在此添加‘字符加密’的代码
/*****************Begin******************/
char c1,c2,c3,c4,c5;
scanf("%c%c%c%c%c",&c1,&c2,&c3,&c4,&c5);
if(c1>='w')
c1=c1-22;
else
c1=c1+4;
if(c2>='w')
c2=c2-22;
else
c2=c2+4;
if(c3>='w')
c3=c3-22;
else
c3=c3+4;
if(c4>='w')
c4=c4-22;
else
c4=c4+4;
if(c5>='w')
c5=c5-22;
else
c5=c5+4;
printf("%c%c%c%c%c",c1,c2,c3,c4,c5);
/***************** End ******************/
return 0;
}
运行截图:
















