关于C程序设计的一个问题。要将“China”译成密码,密码规律是:用原来的字母后面第4个字母

代替原来的字母。例如,字母“A”后面第4个字母是“E”,用“E”代替“A”。因此,“China”应译为“Glmre”。请编一程序,用赋初值的方法使c1、c2、c3、c4、... 代替原来的字母。例如,字母“A”后面第4个字母是“E”,用“E”代替“A”。因此,“China”应译为“Glmre”。请编一程序,用赋初值的方法使c1、c2、c3、c4、c5这5个变量的值分别为‘C’、‘h’、‘n’、‘a’,经过运算,使c1、c2、c3、c4、c5分别变为‘G’、‘l’、‘m’、‘r’、‘e’,并输出。(要有详细的解析) 展开
 我来答
涯曝盎斡吮茨11
2013-10-03 · TA获得超过265个赞
知道小有建树答主
回答量:171
采纳率:50%
帮助的人:65.5万
展开全部

哪个学校的?老师要交的作业吧?呵呵给你来个(详解就写在注释里):

/*++++++++++++++密码换算器v网友友情版++++++++++++++++++++*/

#include<stdio.h>

int main()

{

    char c1='C',c2='h',c3='i',c4='n',c5='a';//定义5个字符变量并分别赋值

    c1+=4;//这样的写法相当于c1=c1+4;就是在原来的字符上对应的ASCII码表上后推4个
    c2+=4;

    c3+=4;

    c4+=4;

    c5+=4;

/*------------------*用putchar函数输出*-------------------------------*/

    putchar(c1);

    putchar(c2);

    putchar(c3);

    putchar(c4);

    putchar(c5);

    printf("\n");
/*------------------*用printf函数输出*-------------------------------*/
    printf("%c%c%c%c%c\n",c1,c2,c3,c4,c5);

    return 0;

}

ps:不要复制运行,网页上有不支持的字码。要自己手打进去运行。

秦时De落叶
2013-10-03
知道答主
回答量:30
采纳率:0%
帮助的人:6.6万
展开全部
#include<stdio.h>
main()
{
int d=4;
char ch1='C',ch2='h',ch3='i',ch4='n',ch5='a';
ch1=ch1+d;
ch2=ch2+d;
ch3=ch3+d;
ch4=ch4+d;
ch5=ch5+d;
ch1=ch1>'z'?ch1-26:ch1; //这段的意思是ch1的ASC码大于字符'z'吗,如果是ch1=ch1-26,否则ch1=ch1
ch2=ch2>'z'?ch2-26:ch2;
ch3=ch3>'z'?ch3-26:ch3;
ch4=ch4>'z'?ch4-26:ch4;
ch5=ch5>'z'?ch5-26:ch5;
printf("%c%c%c%c%c",ch1,ch2,ch3,ch4,ch5);
}
更多追问追答
追问
大写子母c的ascii代码小于字符z,所以是chi=chi,为什么要跟字符z的代码做比较呢?
大写子母c的ascii代码小于字符z,所以是chi=chi,为什么要跟字符z的代码做比较呢?
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式