您的位置:首页 > 其它

hdu 1048 字符串处理

2013-05-07 15:55 288 查看
说白了就是这么读取一整行字符串,装载两种方法:

方法一:

使用 gets()函数

原帖地址:http://hi.baidu.com/carl436/item/ce4ec75dfb3aee14aaf6d7a9

#include<stdio.h>
#include<string.h>
char a[1000];

int main()
{
while(gets(a))
{
if(strcmp(a,"ENDOFINPUT")==0)break;
if(strcmp(a,"START")&&strcmp(a,"END"))
{
for(int i=0;i<strlen(a);i++)
{
if(a[i]>='A'&&a[i]<='Z')
{
a[i]=a[i]-5;
if(a[i]<'A')a[i]=a[i]+26;
}
printf("%c",a[i]);
}
printf("\n");
}
}
return 0;
}


方法二:

使用 getline()函数

原帖地址:/article/4679784.html

#include<stdio.h>
#include<string.h>
#include<iostream>
using namespace std;
int main()
{
//freopen("test.in","r",stdin);
//freopen("test.out","w",stdout);

char a[27]="VWXYZABCDEFGHIJKLMNOPQRSTU";
char str[1000];
int i,len;
while(cin.getline(str,1000))
{
if(strcmp(str,"ENDOFINPUT")==0)
break;
if(strcmp(str,"START")!=0&&strcmp(str,"END")!=0)
{
len=strlen(str);
for(i=0;i<len;i++)
{
if(str[i]>='A'&&str[i]<='Z')
printf("%c",a[str[i]-'A']);
else
printf("%c",str[i]);
}
cout<<endl;
}

}
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: