译密码

题目:

为使电文保密,往往按照一定的规律将其转换成密码,收报人再按照约定的规律将其译成原文。例如,某次发报时采用的密码规律为:

将字母A变成字母E,a变成e,即变成其后的第4个字母,W(w)变成A(a),X(x)变成B(b), Y(y)变成C(c),Z(z)变成D(d)

#include				//译密码 
int main()
{
	char a[100];				//定义一个可行范围内的字符数组 
	int i,s=0;
	while(1)					//无限循环 
    {
        scanf("%d",&a[s++]);	//进行字符输入  s自加 
        if(getchar()=='\n')		//当输入为换行符时循环结束 
            break;
    }
	for(i=0;i<=s;i++)			//对字符数组内的元素进行循环判断输出 
	{
		if((a[i]>='A'&&a[i]<='V')||(a[i]>='a'&&a[i]<='v'))	//A至V a至v的ASCII值加4  
			printf("%c",a[i]+4);
		if((a[i]>='W'&&a[i]<='Z')||(a[i]>='w'&&a[i]<='z'))	//W至Z w至z的ASCII值-32 
			printf("%c",a[i]-22);
		if(a[i]<'A'||a[i]>'z'||(a[i]>'Z'&&a[i]<'a'))		//非字母元素不变 
			printf("%c",a[i]);
	}
	printf("\n");
	return 0;
}


你可能感兴趣的:(C语言杂文)