Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> การเขียนโปรแกรม C

C โปรแกรมลบอักขระ n ตัวในสตริงที่กำหนด


ปัญหา

เขียนฟังก์ชันผู้ใช้เพื่อลบ N – อักขระจากตำแหน่งในสตริงที่กำหนด ที่นี่ ผู้ใช้กำหนดสตริงขณะใช้งานจริง

วิธีแก้ปัญหา

วิธีแก้ปัญหาในการลบอักขระ n ตัวในสตริงที่กำหนดมีดังนี้ -

อัลกอริทึม

อ้างถึงอัลกอริทึมเพื่อลบอักขระ n ตัวในสตริงที่กำหนด

ขั้นตอนที่ 1 − เริ่มต้น

ขั้นตอนที่ 2 − อ่านสตริงที่รันไทม์

ขั้นตอนที่ 3 − อ่านตำแหน่งจากตำแหน่งที่เราจำเป็นต้องลบอักขระ

ขั้นตอนที่ 4 − อ่าน n จำนวนตัวอักษรที่จะลบออกจากตำแหน่งนั้น

ขั้นตอนที่ 5 − เรียกใช้ฟังก์ชัน deletestr(str,p,n) ข้ามไปยังขั้นตอนที่ 7

ขั้นตอนที่ 6 − หยุด

ขั้นตอนที่ 7 − เรียกว่าฟังก์ชัน deletestr(str,p,n)

<ก่อน>1. สำหรับ i =0 , j =0 ถึงความยาว[str]2 ทำ if i =p-13 ผม =ผม + n4. str[j] =str[i]5. str[j] =NULL6. พิมพ์ str

ตัวอย่าง

ต่อไปนี้เป็นโปรแกรม C เพื่อ ลบอักขระ n ตัวในสตริงที่กำหนด

#include #include // ต้นแบบของ functionvoid del_str(ถ่าน [],int, int);main(){ int n,p; ถ่าน str[30]; printf("\n ใส่สตริง:"); ได้รับ(str); ฟลัช (stdin); printf("\n ป้อนตำแหน่งที่ต้องการลบอักขระ:"); scanf("%d",&p); printf("\n ใส่จำนวนอักขระที่จะลบ:"); scanf("%d",&n); del_str(str,p,n);}//ฟังก์ชัน callvoid del_str(ถ่าน str[],int p, int n){ int i,j; สำหรับ(i=0,j=0;str[i]!='\0';i++,j++){ if(i==(p-1)){ i=i+n; } str[j]=str[i]; } str[j]='\0'; puts(" สตริงหลังการลบอักขระ:"); ทำให้(str);}

ผลลัพธ์

เมื่อโปรแกรมข้างต้นทำงาน มันจะให้ผลลัพธ์ดังต่อไปนี้ −

ป้อนสตริง:บทช่วยสอน การเขียนโปรแกรม Point Cป้อนตำแหน่งจากตำแหน่งที่ต้องการลบอักขระ:10ป้อนจำนวนอักขระที่จะลบ:6สตริงหลังการลบอักขระ:บทช่วยสอนการเขียนโปรแกรม C