题解 | #简单密码#
简单密码
https://www.nowcoder.com/practice/7960b5038a2142a18e27e4c733855dac
#include <stdio.h>
#include <string.h>
char Exchange(int asciinum)
{
for(int i=97,j=1;i<122;i=i+3,j++)
{
if(i==112||i==119)
{
i++;
// if (asciinum<=i+3)
// {
// return 49+j;
// }
}
if(asciinum<=i+2) return 49+j;
}
return 0;
}
int main()
{
char pswd[100];
scanf("%s",pswd);
for(int i=0;i<strlen(pswd);i++)
{
int characsii=pswd[i];
//小写转化
if((int)'a'<=(int)pswd[i] &&(int)'z'>=(int)pswd[i])
{
pswd[i]=Exchange(characsii);
continue;
}
//大写转化
if(characsii>=65 &&characsii<=90)//A:65Z:90 a:97z:122 0:48 9:57
{
if(characsii==90) pswd[i]='a';
else pswd[i]=(char)(characsii+32+1);
}
}
printf("%s", pswd);
//printf("\n%d %d %d %d",'a','z','A','Z');
return 0;
}
查看23道真题和解析