समस्या
किसी वर्ण के प्रत्येक अनुक्रमणिका में रिक्त स्थान की जाँच करके लूप की मदद से रनटाइम पर एक दर्ज की गई स्ट्रिंग से सभी अतिरिक्त रिक्त स्थान निकालें।
समाधान
नीचे दिए गए एक उदाहरण पर विचार करें -
यह किसी दिए गए स्ट्रिंग से सभी रिक्त स्थान हटा देता है। दी गई स्ट्रिंग है ट्यूटोरियल प्वाइंट सी प्रोग्रामिंग . रिक्त स्थान हटाने के बाद परिणाम ट्यूटोरियल्सप्वाइंटसीप्रोग्रामिंग . है ।
वर्णों की एक सरणी को स्ट्रिंग कहा जाता है।
नीचे एक स्ट्रिंग की घोषणा दी गई है -
char stringname [size];
उदाहरण के लिए, चार स्ट्रिंग [50]; लंबाई 50 वर्णों की स्ट्रिंग।
आरंभीकरण
- एकल वर्ण स्थिरांक का उपयोग करना।
char string[10] = { ‘H’, ‘e’, ‘l’, ‘l’, ‘o’ ,‘\0’}
- स्ट्रिंग स्थिरांक का उपयोग करना।
char string[10] = “Hello”:;
एक्सेस करना
एक नियंत्रण स्ट्रिंग "%s" है जिसका उपयोग स्ट्रिंग तक पहुँचने के लिए तब तक किया जाता है जब तक कि उसका सामना '\0' से न हो जाए।
स्ट्रिंग्स के बीच अतिरिक्त रिक्त स्थान को हटाने के लिए हम जिस तर्क का उपयोग करते हैं वह इस प्रकार है -
len = strlen(string); for(i=0; i<len; i++){ if(string[0]==' '){ for(i=0; i<(len-1); i++) string[i] = string[i+1]; string[i] = '\0'; len--; i = -1; continue; } if(string[i]==' ' && string[i+1]==' '){ for(j=i; j<(len-1); j++){ string[j] = string[j+1]; } string[j] = '\0'; len--; i--; } }
उदाहरण
स्ट्रिंग अवधारणाओं का उपयोग करके वाक्य में सभी अतिरिक्त रिक्त स्थान को हटाने के लिए सी प्रोग्राम निम्नलिखित है -
#include<stdio.h> int main() { char string[200]; int i, j, len; printf("Enter a statement: "); gets(string); len = strlen(string); for(i=0; i<len; i++) { if(string[0]==' ') { for(i=0; i<(len-1); i++) string[i] = string[i+1]; string[i] = '\0'; len--; i = -1; continue; } if(string[i]==' ' && string[i+1]==' ') { for(j=i; j<(len-1); j++) { string[j] = string[j+1]; } string[j] = '\0'; len--; i--; } } printf("\nNew String after removing extra spaces is = %s", string); getch(); return 0; }
आउटपुट
जब उपरोक्त प्रोग्राम को निष्पादित किया जाता है, तो यह निम्न आउटपुट उत्पन्न करता है -
Enter a statement: Welcome to The world of C programming New String after removing extra spaces is = Welcome to The world of C programming