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

帮忙改下吧解决办法

2012-04-05 
帮忙改下吧我希望实现这样的功能输入STARTNS BFW, JAJSYX TK NRUTWYFSHJ FWJ YMJ WJXZQY TK YWNANFQ HFZXJ

帮忙改下吧
我希望实现这样的功能
输入
START
NS BFW, JAJSYX TK NRUTWYFSHJ FWJ YMJ WJXZQY TK YWNANFQ HFZXJX
END
输出
IN WAR, EVENTS OF IMPORTANCE ARE THE RESULT OF TRIVIAL CAUSES
输入
START
N BTZQI WFYMJW GJ KNWXY NS F QNYYQJ NGJWNFS ANQQFLJ YMFS XJHTSI NS WTRJ
END
输出
I WOULD RATHER BE FIRST IN A LITTLE IBERIAN VILLAGE THAN SECOND IN ROME
输入
ENDOFINPUT
退出
我的代码是下面的,错了,帮忙改下
#include <stdio.h>
#include <string.h>
char a[27]="ABCDEFGHIJKLMNOPQRSTUVWXYZ";
char b[27]="VWXYZABCDEFGHIJKLMNOPQRSTU";
int main()
{
int i,j;
char c[105];
while(gets(c))
{
if(strcmp("START",c)==0)continue;
else if(strcmp("ENDOFINPUT",c)==0)break;
getchar();
scanf("END\n");
for(i=0;c[i]!='\0';i++)
for(j=0;j<26;j++)
if(c[i]==a[j]){c[i]=b[j];break;}
printf("%s\n",c);//continue;
}
return 0;
}

[解决办法]
下面代码满足楼主要求,并给出了注释,供楼主参考:

C/C++ code
#include <stdio.h>#include <string.h>char a[27]="ABCDEFGHIJKLMNOPQRSTUVWXYZ";char b[27]="VWXYZABCDEFGHIJKLMNOPQRSTU";int main(){    int i;    char c[105] = {0};    // 要初始化    // 下面while循环的作用:    // 1. 如果不输入"START"就一直循环("ENDOFINPUT"除外),并给出提示信息    // 2. 如果输入"ENDOFINPUT",就直接退出程序    while(gets(c))    {        if((strcmp("START", c)) != 0 && (strcmp("ENDOFINPUT", c) != 0))        {            printf("Please input \"START\" to start...\n");        }        else if(strcmp("ENDOFINPUT", c) == 0)        {            return 0;        }        else        {            break;        }    }    // 下面的while是进行翻译方面的工作    memset(c, 0, 105);    // 字符串清0    while(gets(c))    {        if(strcmp("ENDOFINPUT", c) == 0)    break;        for(i = 0; c[i] != 0; ++i)        {            if(c[i] < 65 || c[i] > 90)        continue;    // 非A ~ Z的字符一律保持不变。这是必要的,比如空格这样的字符处理            c[i] = (c[i] + 21 - 'Z') > 0 ? (c[i] - 5) : (c[i] + 21);        // 具体翻译工作        }        printf("%s\nEND\n", c);        memset(c, 0, 105);    // 字符串清0    }    return 0;}
[解决办法]
探讨

下面代码满足楼主要求,并给出了注释,供楼主参考:
C/C++ code

#include <stdio.h>
#include <string.h>

char a[27]="ABCDEFGHIJKLMNOPQRSTUVWXYZ";
char b[27]="VWXYZABCDEFGHIJKLMNOPQRSTU";

int main()
{
int i;
char c[10……

[解决办法]
探讨

下面代码满足楼主要求,并给出了注释,供楼主参考:
C/C++ code

#include <stdio.h>
#include <string.h>

char a[27]="ABCDEFGHIJKLMNOPQRSTUVWXYZ";
char b[27]="VWXYZABCDEFGHIJKLMNOPQRSTU";

int main()
{
int i;
char c[10……

[解决办法]
探讨

引用:

下面代码满足楼主要求,并给出了注释,供楼主参考:
C/C++ code

#include <stdio.h>
#include <string.h>

char a[27]="ABCDEFGHIJKLMNOPQRSTUVWXYZ";
char b[27]="VWXYZABCDEFGHIJKLMNOPQRSTU";

int ……

[解决办法]
探讨

引用:

下面代码满足楼主要求,并给出了注释,供楼主参考:
C/C++ code

#include <stdio.h>
#include <string.h>

char a[27]="ABCDEFGHIJKLMNOPQRSTUVWXYZ";
char b[27]="VWXYZABCDEFGHIJKLMNOPQRSTU";



int ……


[解决办法]
探讨

引用:

下面代码满足楼主要求,并给出了注释,供楼主参考:
C/C++ code

#include <stdio.h>
#include <string.h>

char a[27]="ABCDEFGHIJKLMNOPQRSTUVWXYZ";
char b[27]="VWXYZABCDEFGHIJKLMNOPQRSTU";

int ……

热点排行