poj 1298 The Hardest Problem Ever

题目是很水的,要注意两点,一个就是字符串必须比放入的数组多一个,如这道题strlen(a)=26,sizeof(a)=27。。。

还有一点就是gets()函数可以输入空格,不能输入回车,但是s%不能输入空格,也不能输入回车


AC的代码:

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

char a[27] = {'V','W','X','Y','Z',
	      'A','B','C','D','E','F','G',
	      'H','I','J','K','L','M','N',
	      'O','P','Q','R','S','T','U'};

int main()
{
	//freopen("test.txt","r",stdin);
	char Input[1000];
	while(gets(Input))
	{
		if(strcmp(Input,"ENDOFINPUT")==0)
			return 0;

		else if(strcmp(Input,"START")==0 || strcmp(Input,"END")==0)
			continue;

		for(int i=0;i<strlen(Input);i++)
		{
			if (Input[i]>=65 && Input[i]<=90)
                printf("%c",a[Input[i]-65]);

            else
                printf("%c",Input[i]);
		}
        printf("\n");
	}

	return 0;
}


你可能感兴趣的:(poj 1298 The Hardest Problem Ever)