এই প্রোগ্রামে, আমরা তিনটি স্ট্রিং txt, oldword, newword দিয়েছি। আমাদের কাজ হল একটি সি প্রোগ্রাম তৈরি করা যাতে একটি পাঠ্যের একটি শব্দকে অন্য একটি শব্দ দ্বারা প্রতিস্থাপন করা যায়।
প্রোগ্রামটি পাঠ্যে পুরানো শব্দের সমস্ত উপস্থিতি অনুসন্ধান করবে এবং এটিকে নতুন শব্দ দিয়ে প্রতিস্থাপন করবে .
সমস্যাটি বোঝার জন্য একটি উদাহরণ নেওয়া যাক −
ইনপুট
text = “I am learning programming” oldword = “learning” newword = “practicing”
আউটপুট
“I am practicing programming”
এই সমস্যাটি সমাধান করার জন্য, আমরা প্রথমে স্ট্রিংটিতে পুরানো শব্দের উপস্থিতির সংখ্যা খুঁজে বের করব এবং তারপরে একটি নতুন স্ট্রিং তৈরি করব যা প্রতিস্থাপিত শব্দগুলির সাথে পাঠ্যটিকে সংরক্ষণ করবে৷
একটি টেক্সটে একটি শব্দকে অন্য প্রদত্ত শব্দ দ্বারা প্রতিস্থাপন করার জন্য C প্রোগ্রাম
// সি প্রোগ্রাম একটি টেক্সটে একটি শব্দকে অন্য প্রদত্ত শব্দ দ্বারা প্রতিস্থাপন করে
উদাহরণ
#include <stdio.h> #include <string.h> #include <stdlib.h> void replaceWordInText(const char *text, const char *oldWord, const char *newWord) { int i = 0, cnt = 0; int len1 = strlen(newWord); int len2 = strlen(oldWord); for (i = 0; text[i] != '\0'; i++) { if (strstr(&text[i], oldWord) == &text[i]) { cnt++; i += len2 - 1; } } char *newString = (char *)malloc(i + cnt * (len1 - len2) + 1); i = 0; while (*text) { if (strstr(text, oldWord) == text) { strcpy(&newString[i], newWord); i += len1; text += len2; } else newString[i++] = *text++; } printf("New String: %s\n", newString); } int main() { char str[] = "I am learning programming"; char c[] = "learning"; char d[] = "practicing"; char *result = NULL; printf("Original string: %s\n", str); replaceWordInText(str, c, d); return 0; }
আউটপুট
Original string: I am learning programming New String: I am practicing programming