搜狗
alimama
ali
阿里
阿里妈妈
sogou
第一卷 第一章

?1题  函数ReadDat()实现从文件ENG.IN中读取一篇英文文章,存入到字符串数组xx中;请编制函数encryptChar(),按给定的替代关系对数组xx中的所有字符进行替代,仍存入数组xx的对应的位置上,最后调用函数WriteDat()把结果xx输出到文件PS10.DAT中。

  替代关系:f(p)=p*11  mod  256  (p是数组中某一个字符的ASCII值,f(p)是计算后新字符的ASCII值),如果原字符的ASCII值是偶数或计算后f(p)值小于等于32,则该字符不变,否则将f(p)所对应的字符进行替代。

void  encryptChar()

{

int  i,j,t;

for(i=0;i{

for(j=0;j{

t=xx[i][j]*11%256;

if(t<=32  ||  xx[i][j]%2==0)  continue;

xx[i][j]=t;

}

}

}

3题替代关系:f(p)=p*11  mod  256  (p是数组中某一个字符的ASCII值,f(p)是计算后新字符的ASCII值),如果原字符是小写字母或计算后f(p)值小于等于32,则该字符不变,否则将f(p)所对应的字符进行替代。

void  encryptChar()

{

int  i,j,t;

for(i=0;i{

for(j=0;j{

t=xx[i][j]*11%256;

if(t='a'  &&  xx[i][j]<='z'))  continue;

xx[i][j]=t;

}

}

}  

5题替代关系:f(p)=p*11  mod  256  (p是数组中某一个字符的ASCII值,f(p)是计算后新字符的ASCII值),如果计算后f(p)值小于等于32或f(p)对应的字符是数字0至9,则该字符不变,否则将f(p)所对应的字符进行替代。

void  encryptChar()

{

int  i,j,strl;

int  t;

for  (i=0;i{

strl=strlen(xx[i]);

for(j=0;j{

t=xx[i][j]*11%256;

if  (t='0'  &&  t<=  '9'))    continue;

xx[i][j]=t;

}

}

}

7题替代关系:f(p)=p*11  mod  256  (p是数组中某一个字符的ASCII值,f(p)是计算后新字符的ASCII值),如果计算后f(p)值小于等于32或f(p)对应的字符是大写字母,则该字符不变,否则将f(p)所对应的字符进行替代。

void  encryptChar()

{

int  i,j,t;

for(i=0;i{

for(j=0;j{

t=xx[i][j]*11%256;

if(t='A'  &&  t<='Z'))  continue;

xx[i][j]=t;

}

}

}

9题替代关系:f(p)=p*13  mod  256  (p是数组中某一个字符的ASCII值,f(p)是计算后新字符的ASCII值),如果计算后f(p)值小于等于32或其ASCII值是偶数,则该字符不变,否则将f(p)所对应的字符进行替代。

void  encryptChar()

{

int  i,j,t;

for(i=0;i{

for(j=0;j{

t=xx[i][j]*13%256;

if(t<=32  ||  t%2==0)  continue;

xx[i][j]=t;

}

}

}

27题函数ReadDat()实现从文件IN.DAT中读取一篇英文文章存入到字符串数组xx中,请编制函数ConverCharD(),其函数的功能是:以行为单位把字符串中的所有小写字母改写成该字母的上一个字母,如果是字母a,则改写成字母z。大写字母仍为大写字母,小写字母仍为小写字母,其他字符不变。最后把已处理的字符串仍按行重新存入字符串数组xx中,最后调用函数writeDat()把结果xx输出到文件OUT4.DAT中。

  void  convertchard(void)

{    int  i,n,j;

      for(i=0;i    {    n=strlen(xx[i]);

            for(j=0;j                  if(islower(xx[i][j])

                        {if(xx[i][j]>'a')  xx[i][j]-=1;

                              else  xx[i][j]='z';        }

}

30题下列程序的功能是:把s字符串中的所有字母改写成该字母的下一个字符,字母z改写成字母a。要求大写字母仍为大写字母,小写字母仍为小写字母,其他字符不做改变。请编写函数chg(char  *s)实现程序的要求,最后调用函数readwriteDat()把结果输出到文件out.dat中。

void  chg(char  *s)

{

int  i,j,k;

k=strlen(s);

for(i=0;i{if(s[i]=='z'||s[i]=='Z'  )

            s[i]-=25;

    else    if(isalpha(s[i]))

                s[i]+=1;

}

}

73、以行为单位把字符串中的所有小写字母改写成该字母的下一个字母,如果是字母Z,则改写成字母A.大写字母仍为大写字母,小写字母仍为小写字母,其他字符不变.

void  convertcharA(void)

{

char  *p;

int  i;

for(i=0;i{p=xx[i];

while(*p)

{if(*p=='z')  *p='a';

else  if(*p>='a'&&*p<'z')  *p=*p+1;

p++;

}

}

}

79、以行为单位把字符串中的第一个字符的ASCII值加第二个字符的ASCII值,得到第一个亲朋字符,第二个字符的ASCII值加第三个字符的ASCII值,得到第二个新字符,依此类推一直处理到最后第二个字符,最后一个字符的ASCII值加原第一个字符的ASCII值,得到最后一个新的字符,得到的新字符分别存放在原字符串对应的位置上。

void  ShA(void)

{

int  i,j;

char  t1;

for(i=0;i{t1=xx[i][0];

for(j=0;xx[i][j+1]!='\0';j++)

            xx[i][j]=xx[i][j]+xx[i][j+1];

    xx[i][j]=xx[i][j]+t1;        /*注意:当xx[i][j+1]!='\0'这个条件不满足时,j的值已经为字符串的最后一位的下标值了*/

}

}

091题替代关系:f(p)=p*11  mod  256  (p是数组中某一个字符的ASCII值,f(p)是计算后新字符的ASCII值),如果计算后f(p)值小于等于32或大于130,则该字符不变,否则将f(p)所对应的字符进行替代。

void  encryptChar()

{

int  i,j,t;

for(i=0;i{

for(j=0;j{

t=xx[i][j]*11%256;

if(t130)  continue;

xx[i][j]=t;

}

}

}

093题替代关系:f(p)=p*17mod  256  (p是数组中某一个字符的ASCII值,f(p)是计算后新字符的ASCII值),如果计算后f(p)值小于等于32或其ASCII值是奇数,则该字符不变,否则将f(p)所对应的字符进行替代。

 void  encryptChar()

{

int  i,j,t;

for(i=0;i{

for(j=0;j{

t=xx[i][j]*17%256;

if(t<=32  ||  t%2==1)  continue;

xx[i][j]=t;

}

}

}  

095题关系:f(p)=p*11mod  256  (p是数组中某一个字符的ASCII值,f(p)是计算后新字符的ASCII值),如果计算后f(p)值小于等于32或f(p)对应的字符是小写字母,则该字符不变,

void  encryptChar()

{

int  i,j,t;

for(i=0;i{

for(j=0;j{

t=xx[i][j]*11%256;

if(t='a'  &&  t<='z'))  continue;

xx[i][j]=t;

}

}

}

097题替代关系:f(p)=p*11mod  256  (p是数组中某一个字符的ASCII值,f(p)是计算后新字符的ASCII值),如果原字符是大写字母或计算后f(p)值小于等于32,则该字符不变,否则将f(p)所对应的字符进行替代。

void  encryptChar()

{

int  i,j,t;

for(i=0;i{

for(j=0;j{

t=xx[i][j]*11%256;

if(t='A'  &&  xx[i][j]<='Z'))  continue;

xx[i][j]=t;

}

}

}

099题替代关系:f(p)=p*11mod  256  (p是数组中某一个字符的ASCII值,f(p)是计算后新字符的ASCII值),如果原字符是数字字符0至9或计算后f(p)值小于等于32,则该字符不变,否则将f(p)所对应的字符进行替代。

void  encryptChar()

{

int  i,j,t;

for(i=0;i{

for(j=0;j{

t=xx[i][j]*11%256;

if(t='0'  &&  xx[i][j]<='9'))  continue;

xx[i][j]=t;

}

}

}


[猫扑广告]