C程序设计第三章第六题
3.6请编程序将“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‘。 分别用putchar函数和printf函数输出这5个字符。
使用putchar函数输出的代码:
#include<stdio.h>
int main()
{
char c1, c2, c3, c4, c5;
c1 = 'C'; //给c1到c5赋初值
c2 = 'h';
c3 = 'i';
c4 = 'n';
c5 = 'a';
c1 = c1 + 4; //ASCII值在原来的基础上加4
c2 = c2 + 4;
c3 = c3 + 4;
c4 = c4 + 4;
c5 = c5 + 4;
putchar(c1); //使用putchar函数输出c1到c5的值
putchar(c2);
putchar(c3);
putchar(c4);
putchar(c5);
return 0;
}
使用printf函数输出的代码:
#include<stdio.h>
int main()
{
char c1, c2, c3, c4, c5;
c1 = 'C'; //给c1到c5赋初值
c2 = 'h';
c3 = 'i';
c4 = 'n';
c5 = 'a';
c1 = c1 + 4; //ASCII值在原来的基础上加4
c2 = c2 + 4;
c3 = c3 + 4;
c4 = c4 + 4;
c5 = c5 + 4;
printf("%c", c1); //使用printf函数输出c1到c5的值
printf("%c", c2);
printf("%c", c3);
printf("%c", c4);
printf("%c", c5);
return 0;
}
本题的难点主要是在怎样将"China"转换为"Glmre",他们其中的ASCII值对应关系。
输出的结果:
作者的编译水平有限,欢迎指出代码中的不足,欢迎改进,谢谢点赞。