View Code of Problem 114

#include<stdio.h>
#include<string.h>
#include<ctype.h>
int swap(int m,int n,char s[])
{
	int i;
	char temp;
	for(i=0;i<(n-m+1)/2;i++)
	{
	temp=s[i+m];
	s[i+m]=s[n-i];
	s[n-i]=temp;
	}
return 0;
}
int main()
{int i,k,n,flag[100],j;
char c[100],d[100],temp;
while(gets(c)!=NULL)
{n=strlen(c);
memset(flag,0,sizeof(flag));
for(i=0;i<n;i++)
{
if(isalpha(c[i]))
    flag[i]=1; 
}
i=0;
while(i<n)
{
	while(!flag[i])
		i++;
    k=i;
	while(flag[i])
		i++;
	j=i-1;
    swap(k,j,c);
}
printf("%s\n",c);
}
return 0;
}

Double click to view unformatted code.


Back to problem 114