সমস্যা
একটি অক্ষরের প্রতিটি সূচীতে স্পেস চেক করে while লুপের সাহায্যে রানটাইমে প্রবেশ করা স্ট্রিং থেকে সমস্ত স্পেস মুছে ফেলুন৷
সমাধান
নিচে দেওয়া একটি উদাহরণ বিবেচনা করুন -
এটি একটি প্রদত্ত স্ট্রিং থেকে সমস্ত স্পেস সরিয়ে দেয়। প্রদত্ত স্ট্রিংটি হল টিউটোরিয়াল পয়েন্ট সি প্রোগ্রামিং . স্পেস অপসারণের পর ফলাফল হল TutorialsPointCprogramming .
অক্ষরের একটি বিন্যাসকে স্ট্রিং বলা হয়।
নিচে ঘোষণা দেওয়া হল একটি স্ট্রিং -
char stringname [size];
উদাহরণস্বরূপ, char স্ট্রিং[50]; দৈর্ঘ্য 50 অক্ষরের স্ট্রিং।
শুরু করা
- একক অক্ষর ধ্রুবক ব্যবহার করা।
char string[10] = { ‘H’, ‘e’, ‘l’, ‘l’, ‘o’ ,‘\0’}
- স্ট্রিং ধ্রুবক ব্যবহার করে।
char string[10] = “Hello”:;
অ্যাক্সেস করা হচ্ছে
স্ট্রিং অ্যাক্সেস করার জন্য একটি কন্ট্রোল স্ট্রিং "%s" ব্যবহার করা হয় যতক্ষণ না এটি '\0' এর মুখোমুখি হয়।
স্ট্রিং-এর মধ্যে স্পেস অপসারণের জন্য আমরা যে লজিক ব্যবহার করেছি তা হল −
while(string[i]!='\0'){ check=0; if(string[i]==' '){ j=i; while(string[j-1]!='\0'){ string[j] = string[j+1]; j++; } check = 1; } if(check==0) i++; }
উদাহরণ
স্ট্রিং ধারণা −
ব্যবহার করে একটি বাক্যে সমস্ত স্পেস মুছে ফেলার জন্য C প্রোগ্রামটি নিচে দেওয়া হল#include<stdio.h> int main() { char string[50]; int i=0, j, check; printf("Enter any statement: "); gets(string); while(string[i]!='\0') { check=0; if(string[i]==' ') { j=i; while(string[j-1]!='\0') { string[j] = string[j+1]; j++; } check = 1; } if(check==0) i++; } printf("\nSentence without spaces: %s", string); getch(); return 0; }
আউটপুট
যখন উপরের প্রোগ্রামটি কার্যকর করা হয়, তখন এটি নিম্নলিখিত আউটপুট তৈরি করে −
Run 1: Enter any statement: Tutorials Point C Programming Sentence without spaces: TutorialsPointCProgramming Run 2: Enter any statement: Welcome to the world of tutorials Sentence without spaces: Welcometotheworldoftutorials