[0]zero-index clytie0x/zero-index

บทที่ 6 ตัวอักษรและสตริง

จบบทนี้ น้องจะเขียนโปรแกรมที่ทำงานกับข้อความได้ รับคำหรือรับทั้งบรรทัด นับตัวอักษร เปลี่ยนตัวพิมพ์ใหญ่เล็ก กลับคำ เช็ก palindrome นับคำ และเข้ารหัสข้อความ ซึ่งเป็นโจทย์แนวที่เจอบ่อยใน TOI Zero และจะรู้กับดักที่ทำให้โปรแกรมสตริงผิดหรือช้าโดยไม่มีคำเตือน เช่น '\n' ที่ค้างหลัง scanf และการเรียก strlen ในเงื่อนไขลูป โจทย์แข่งขันใช้แค่ตัวอักษรภาษาอังกฤษ ทั้งบทจึงใช้ภาษาอังกฤษในข้อมูลเข้าและผลลัพธ์

ในบทนี้

หน้าได้อะไร
6.1 ตัวอักษรคือตัวเลขคำนวณกับตัวอักษร เปลี่ยนตัวพิมพ์ แปลงตัวเลข เลื่อนแบบวนรอบ และ ctype.h
6.2 สตริงคืออาเรย์ของ char'\0' ปิดท้าย ขนาดอาเรย์ที่ต้องใช้ รับคำด้วย %s และวนลูปทีละตัว
6.3 รับข้อความทั้งบรรทัดfgets ตัด '\n' ทิ้ง และกับดักเมื่อใช้ scanf ตามด้วย fgets
6.4 ฟังก์ชันใน string.hstrlen strcpy strcmp strcat และเวลาที่วัดจริงเมื่อเรียก strlen ในลูป
6.5 อัลกอริทึมกับสตริงนับตัวอักษร กลับคำ palindrome นับคำ Caesar cipher และ run-length

ผ่านบทนี้เมื่อ