奇偶位互换
Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 2750 Accepted Submission(s): 2134
Problem Description
给定一个长度为偶数位的0,1字符串,请编程实现串的奇偶位互换。
Input
输入包含多组测试数据;
输入的第一行是一个整数C,表示有C测试数据;
接下来是C组测试数据,每组数据输入均为0,1字符串,保证串长为偶数位(串长<=50)。
输入的第一行是一个整数C,表示有C测试数据;
接下来是C组测试数据,每组数据输入均为0,1字符串,保证串长为偶数位(串长<=50)。
Output
请为每组测试数据输出奇偶位互换后的结果;
每组输出占一行。
每组输出占一行。
Sample Input
2 0110 1100
Sample Output
1001 1100
思路:要2位的进行。
AC代码:
#include<istream>
#include<string.h>
using namespace std;
int main()
{
int t,al,i;
char a[51];
char c;
while(scanf("%d",&t)!=EOF)
{
while(t--)
{
getchar();
scanf("%s",a);
al=strlen(a);
if(al%2!=0)continue;
for(i=0;i<al;i+=2)
{
c=a[i+1];
a[i+1]=a[i];
a[i]=c;
printf("%c%c",a[i],a[i+1]);
}
printf("\n");
}
}
return 0;
}