Space Program: Asked me in AthenaHealth, Novell Software development, Aspire Systems
/* Input: abcd
Output: abcd
a bcd
ab cd
abc d
a b cd
a bc d
ab c d
a b c d
*/
#include<stdio.h>
void space(char *,int,char *,int);
main()
{
char a[10],b[10];
scanf("%s",a);
space(a,0,b,0);
return 0;
}
void space(char *a,int x,char *b,int y)
{
if(a[x]=='\0')
{
b[y]='\0';
printf("%s",b);
return;
}
b[y]=a[x];
space(a,x+1,b,y+1);
if(y>0 && b[y-1]!=' ')
{
b[y]=' ';
space(a,x,b,y+1);
}
}
/* Input: abcd
Output: abcd
a bcd
ab cd
abc d
a b cd
a bc d
ab c d
a b c d
*/
#include<stdio.h>
void space(char *,int,char *,int);
main()
{
char a[10],b[10];
scanf("%s",a);
space(a,0,b,0);
return 0;
}
void space(char *a,int x,char *b,int y)
{
if(a[x]=='\0')
{
b[y]='\0';
printf("%s",b);
return;
}
b[y]=a[x];
space(a,x+1,b,y+1);
if(y>0 && b[y-1]!=' ')
{
b[y]=' ';
space(a,x,b,y+1);
}
}