首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

有关C语言的一道初级字符串加密的题目

2013-12-10 
【求助】有关C语言的一道初级字符串加密的题目本帖最后由 xxd122 于 2013-12-09 16:01:22 编辑题目:编写一个

【求助】有关C语言的一道初级字符串加密的题目
本帖最后由 xxd122 于 2013-12-09 16:01:22 编辑 题目:编写一个加密程序,将一个字符串中的“A”变成“a”,“Z”变成“z”,“a”变成“A”,“z变成“Z”,并把所有的英文字符的ASCII码值加一。其他字符不变,为何我写的程序输入和输出一样?
#include <stdio.h>
void password(char x[],int);
void main()
{
char a[80];int i;
gets(a);
for(i=0;a[i]!='\0';i++);
password(a,i);
puts(a);
}
void password(char x[],int n)
{
int i;
for(i=0;i<n;i++)
{
if (x[i]=='a'||'A')
x[i]=x[i]+25;
if (x[i]=='z'||'Z')
x[i]=x[i]-25;
if (x[i]>'a'&&x[i]<'z'&&x[i]>'A'&&x[i]<'Z')
x[i]=x[i]+1;
}
}


[解决办法]
这代码,真是吐了。

for(i=0;i<n;i++)
{
if (x[i] == 'a'
[解决办法]
 x[i] == 'z' )
x[i] = x[i]-32;
else if (x[i] == 'A' 
[解决办法]
 x[i] == 'Z')
x[i] = x[i]+32;
else if (x[i]>'a'&&x[i]<'z' 
[解决办法]
 x[i]>'A'&&x[i]<'Z')
x[i]=x[i]+1;
}

[解决办法]

for(i=0;i<n;i++)
{
   if (x[i]=='A'
[解决办法]
 x[i] == 'Z')
       x[i]=x[i]+ 32;
    else if (x[i]=='a'
[解决办法]
x[i] == 'z')
       x[i]=x[i]- 32;
   else 
       x[i]=x[i]+1;
}

热点排行