w3resource logo


C Programming Exercises

C Exercises: Copy One string to another

Secondary Nav

C Recursion : Exercise-19 with Solution

Write a program in C to copy One string to another using recursion.
Test Data :
Input the string to copy : w3resource
Expected Output :

 The string successfully copied.                                                                              
                                                                                                              
 The first string is : w3resource                                                                             
 The copied string is : w3resource

C Code:

#include <stdio.h>
 
void copyString(char [], char [], int);
 
int main()
{
    char stng1[20], stng2[20];
    printf("\n\n Recursion : Copy One string to another :\n");
	printf("---------------------------------------------\n"); 	
 
    printf(" Input the  string to copy : ");
    scanf("%s", stng1);
    copyString(stng1, stng2, 0);
    printf("\n The string successfully copied.\n\n");
    printf(" The first string is : %s\n", stng1);
    printf(" The copied string is : %s\n\n", stng2);
    return 0;
}
 
void copyString(char stng1[], char stng2[], int ctr)
{
    stng2[ctr] = stng1[ctr];
    if (stng1[ctr] == '\0')
        return;
    copyString(stng1, stng2, ctr + 1);
}

Flowchart :

Flowchart: Copy One string to another.

C Practice online:

#include <stdio.h>
 
void copyString(char [], char [], int);
 
int main()
{
    char stng1[20], stng2[20];
    printf("\n\n Recursion : Copy One string to another :\n");
	printf("---------------------------------------------\n"); 	
 
    printf(" Input the  string to copy : ");
    scanf("%s", stng1);
    copyString(stng1, stng2, 0);
    printf("\n The string successfully copied.\n\n");
    printf(" The first string is : %s\n", stng1);
    printf(" The copied string is : %s\n\n", stng2);
    return 0;
}
 
void copyString(char stng1[], char stng2[], int ctr)
{
    stng2[ctr] = stng1[ctr];
    if (stng1[ctr] == '\0')
        return;
    copyString(stng1, stng2, ctr + 1);
}

Improve this sample solution and post your code through Disqus.



Join our Question Answer community to learn and share your programming knowledge.

Help the community:

Python: Fizzbuzz

C++: Decimal to binary conversion

JavaScript: Need Help in JavaScript

Python: Help me with this program