คำถามและคำตอบสัมภาษณ์ TCS 50 อันดับแรก (2026)
TCS (Tata Consultancy Services) เป็นบริษัทเทคโนโลยีสารสนเทศข้ามชาติของอินเดีย มีสำนักงานใหญ่ในมุมไบ และมีสาขาหลักในเมืองปูเน่ เบงกาลูรู ไฮเดอราบัด และเมืองอื่นๆ TCS เป็นบริษัทไอทีที่ใหญ่ที่สุดในอินเดีย
กระบวนการสรรหาบุคลากรใน TCS:
TCS ดำเนินการสัมภาษณ์สามรอบเพื่อเลือกผู้สมัครใหม่เป็นนักพัฒนาซอฟต์แวร์ในบริษัทของตน
- การทดสอบความถนัด
- การสัมภาษณ์ทางเทคนิค
- รอบบริหาร
- สัมภาษณ์ HR
การขับเคลื่อนการสรรหาบุคลากรของ TCS เริ่มต้นด้วยการทดสอบข้อเขียน ตามด้วยการสัมภาษณ์แบบตัวต่อตัว ผู้สรรหาอาจจัดการอภิปรายกลุ่มวิทยาเขตสำหรับผู้สมัครวิศวกรซอฟต์แวร์
คำถามสัมภาษณ์ทางเทคนิคของ TCS: นักศึกษาใหม่และผู้มีประสบการณ์
ต่อไปนี้คือคำถามและคำตอบในการสัมภาษณ์ TCS ที่พบบ่อยสำหรับทั้งผู้เริ่มต้นและผู้สมัครที่มีประสบการณ์ เพื่อให้ได้งานที่เหมาะสมกับอาชีพของตน
1) ภาษาโปรแกรมใดที่สำคัญสำหรับการสัมภาษณ์วิทยาเขต TCS
ภาษาโปรแกรมที่สำคัญสำหรับการสัมภาษณ์วิทยาเขต TCS คือ 1) การเขียนโปรแกรม C 2) C++ การเขียนโปรแกรม และ 3) Java การเขียนโปรแกรม
2) อะไรคือความแตกต่างหลักระหว่าง C และ Java?
ความแตกต่างหลักระหว่างทั้งสองคือ Java เป็นภาษาโปรแกรมเชิงวัตถุในขณะที่ C เป็นภาษาโปรแกรมขั้นตอน
3) ตั้งชื่อคลาสการจัดเก็บข้อมูลสี่คลาสที่มีอยู่ใน C
คลาสพื้นที่เก็บข้อมูลสี่คลาสในภาษา C ได้แก่ 1) รีจิสเตอร์ 2) อัตโนมัติ 3) ภายนอก และ 4) คงที่
4) อธิบายตัวแปรคงที่
มันเป็นตัวระบุการเข้าถึง ค่าของตัวแปรคงที่จะไม่เปลี่ยนแปลงระหว่างการทำงานของโปรแกรม
5) จะพิมพ์ที่อยู่ได้อย่างไร?
คุณสามารถใช้ %p ในฟังก์ชัน printf เพื่อพิมพ์ที่อยู่ของตัวแปรได้
6) อธิบายแนวคิดเรื่องการโอเวอร์โหลดฟังก์ชัน
เป็นคุณลักษณะของ C++ ที่ให้คุณสร้างฟังก์ชันที่มีชื่อคล้ายกันได้มากกว่าหนึ่งฟังก์ชัน ฟังก์ชั่นสามารถระบุได้โดยใช้พารามิเตอร์
7) อธิบายกฎความสมบูรณ์สองข้อที่ใช้ใน DBMS
- กฎความสมบูรณ์ของการอ้างอิง
- กฎความสมบูรณ์ของเอนทิตี
กฎ Referential Integrity ระบุว่าฐานข้อมูลไม่มีค่าคีย์ต่างประเทศของเรกคอร์ดเด็กกำพร้า ในกรณีนี้ ค่าคีย์หลักไม่สามารถแก้ไขได้หากคุณใช้ค่านี้เป็นคีย์ภายนอกในตารางลูก
ในกฎความสมบูรณ์ของเอนทิตี คุณไม่สามารถเก็บค่าคีย์หลักเป็นโมฆะได้
8) กำหนดคลาสและวัตถุของคำศัพท์
Class เป็นบล็อกการสร้างของการเขียนโปรแกรมเชิงวัตถุซึ่งมีกลุ่มของสมาชิกข้อมูลและฟังก์ชันของมัน คุณสามารถเข้าถึงได้โดยการสร้างคลาสทันที
วัตถุคือเอนทิตีในโลกแห่งความเป็นจริง ตัวอย่างสิ่งของได้แก่ คอมพิวเตอร์ โน๊ตบุ๊ค ปากกา และกระเป๋า
9) กำหนดมาโคร
แมโครคือคำสั่งตัวประมวลผลล่วงหน้าซึ่งจะแทนที่ค่าของแมโคร
10) โครงสร้างที่แตกต่างและอาร์เรย์
ความแตกต่างหลักระหว่างโครงสร้างและอาร์เรย์มีดังนี้:
- อาร์เรย์เป็นโครงสร้างข้อมูล ประกอบด้วยกลุ่มประเภทข้อมูลที่คล้ายกัน
- โครงสร้างเป็นประเภทข้อมูลที่ผู้ใช้กำหนด ประกอบด้วยกลุ่มของประเภทข้อมูลที่แตกต่างกัน
11) ระบุพื้นที่บางส่วนที่มีการใช้โครงสร้างข้อมูลอย่างกว้างขวาง
ต่อไปนี้เป็นพื้นที่ที่มีการใช้โครงสร้างข้อมูล:
- การวิเคราะห์เชิงตัวเลข
- ระบบจัดการฐานข้อมูล
- ปัญญาประดิษฐ์
- Operaระบบติ้ง
- แพ็คเกจการวิเคราะห์ทางสถิติ
12) คุณจะใช้โค้ดที่เขียนซ้ำได้อย่างไร C++ ภาษาโปรแกรม?
คุณสามารถใช้เทคนิคการสืบทอดเพื่อใช้รหัสซ้ำได้
13) ระบุชื่อเทคนิคการป้องกันภาวะเดดล็อกต่างๆ
เทคนิคการป้องกันการติดขัดมีดังนี้:
- การกีดกันซึ่งกันและกัน
- การถือครองทรัพยากร
- ไม่มีใบจอง
- รอแบบวงกลม
14) การเรียงลำดับการแทรกและการเรียงลำดับฟองคืออะไร?
การเรียงลำดับการแทรกเป็นอัลกอริธึมการเรียงลำดับโดยที่รายการหรืออาร์เรย์สุดท้ายถูกสร้างขึ้นโดยมีหนึ่งรายการในแต่ละครั้ง ในการเรียงลำดับแบบบับเบิ้ล คุณจะแลกเปลี่ยนองค์ประกอบที่อยู่ติดกันหากลำดับไม่ถูกต้อง
15) อธิบายแนวคิดของรายการลิงก์แบบทวีคูณ
โครงสร้างข้อมูลลิงก์ที่เรียกว่ารายการลิงก์แบบทวีคูณจะมีลิงก์กลับไปยังโหนดก่อนหน้า
16) คุณกำลังสร้างฟังก์ชันที่สามารถรับอาร์กิวเมนต์จำนวนตัวแปรได้ คุณจะใส่ไฟล์ส่วนหัวใด?
เราจำเป็นต้องรวมไฟล์ส่วนหัว stdarg.h
17) Data Abstraction คุณหมายถึงอะไร? อธิบายนามธรรมข้อมูลสามระดับ
Data Abstraction เป็นกระบวนการในการรับรู้ถึงคุณลักษณะของวัตถุหรือสถานการณ์ใดๆ และกรองคุณลักษณะที่ไม่ต้องการออกไป
ต่อไปนี้เป็นสามระดับของการแยกข้อมูล:
- ระดับทางกายภาพ: แสดงให้เห็นว่าคุณจะจัดเก็บข้อมูลในฐานข้อมูลอย่างไร
- ระดับตรรกะ: แสดงให้เห็นว่าข้อมูลใดถูกจัดเรียงในฐานข้อมูล
- ระดับการดู: ผู้ใช้ปลายทางทำงานในระดับนี้ และหากพบการเปลี่ยนแปลงใดๆ พวกเขาจะถูกบันทึกไว้ในชื่ออื่น
18) อธิบายว่าอาร์กิวเมนต์บรรทัดคำสั่งในภาษา C คืออะไร?
เป็นกระบวนการรับอาร์กิวเมนต์จาก command prompt ในการเขียนโปรแกรม C มีสามอาร์กิวเมนต์ในฟังก์ชันหลักของ C ตัวนับอาร์กิวเมนต์ เวกเตอร์อาร์กิวเมนต์ และเวกเตอร์สภาพแวดล้อม
19) อธิบายแนวคิดของหน่วยความจำแคช
แคชคือหน่วยความจำคอมพิวเตอร์ขนาดเล็กที่ CPU ใช้เพื่อลดต้นทุนเฉลี่ยในการเข้าถึงข้อมูลจากหน่วยความจำหลัก
20) อธิบายความแตกต่างระหว่างการส่งผ่านโดยการอ้างอิงและการส่งผ่านตามค่า
ในการส่งผ่านค่า เราจะส่งผ่านค่าไปยังฟังก์ชันการเรียกใช้ ใน Pass by Reference เราจำเป็นต้องส่งที่อยู่ไปยังฟังก์ชันผู้โทรแทนการส่งค่า
21) พอยน์เตอร์คืออะไร?
ตัวแปรที่เก็บที่อยู่ของค่าที่อยู่ในหน่วยความจำเรียกว่าตัวชี้
22) แยกความแตกต่างระหว่างตัวชี้ null และ void
ตัวชี้ว่างคือตัวชี้ที่ชี้ไปที่ไม่มีที่ไหนเลย มันมีค่าเป็นศูนย์ ตัวชี้โมฆะเป็นตัวชี้ทั่วไปที่นำมาใช้โดย ANSI (สถาบันมาตรฐานแห่งชาติอเมริกัน)
23) โอเปอเรเตอร์โอเวอร์โหลดคืออะไร?
Operaการโอเวอร์โหลด Tor เป็นโพลีมอร์ฟิซึมที่ทำให้สามารถกำหนดตัวดำเนินการที่มีอยู่ใหม่ได้ เพื่อให้สามารถใช้งานกับอ็อบเจ็กต์ของคลาสที่ผู้ใช้กำหนดได้
24) มรดกมีประเภทใดบ้าง C++?
มรดกมี 5 ประเภท C++ การเขียนโปรแกรม ได้แก่ 1) การสืบทอดเดี่ยว 2) การสืบทอดหลายระดับ 3) การสืบทอดหลายระดับ 4) การสืบทอดแบบไฮบริด และ 5) การสืบทอดแบบลำดับชั้น
25) เหตุใดจึงทำให้ฐานข้อมูลเป็นมาตรฐาน?
ฐานข้อมูลควรได้รับการทำให้เป็นมาตรฐานเพื่อให้คุณสามารถจัดระเบียบฐานข้อมูลได้อย่างมีประสิทธิภาพ คุณควรทำให้ฐานข้อมูลเป็นมาตรฐานเพื่อลบข้อมูลที่ซ้ำซ้อน
26) DBMS คืออะไร?
DBMS ย่อมาจาก ระบบจัดการฐานข้อมูล- เป็นซอฟต์แวร์ที่ใช้จัดการฐานข้อมูลของคุณ DBMS จัดเตรียมอินเทอร์เฟซระหว่างแอปพลิเคชันและฐานข้อมูล
27) อธิบายคำสั่งแบบมีเงื่อนไข
คำสั่งแบบมีเงื่อนไขเรียกอีกอย่างว่านิพจน์แบบมีเงื่อนไขหรือคำสั่ง if-then คำสั่งแบบมีเงื่อนไขคือชุดของกฎเกณฑ์ กฎเหล่านี้จะถูกดำเนินการหากเงื่อนไขเป็นจริงเท่านั้น
28) อธิบายความแตกต่างระหว่างคีย์ต่างประเทศและคีย์อ้างอิง
Foreign Key ใช้เพื่อเชื่อมโยงไปยังตาราง ในอีกด้านหนึ่ง คีย์อ้างอิงคือคีย์หลักที่ถูกอ้างอิงในตารางอื่น
29) อธิบายความแตกต่างระหว่าง C และ C++?
| C++ | C |
|---|---|
| C++ มีแนวคิดเรื่องชั้นเรียน | C ไม่มีแนวคิดเรื่องชั้นเรียน |
| C++ ไม่สนับสนุนแนวคิดการโอเวอร์โหลดฟังก์ชัน | ในการเขียนโปรแกรม C เราใช้ฟังก์ชันต่างๆ เช่น scanf() และ printf() สำหรับอินพุตและเอาต์พุต |
| C++ รองรับการจัดการข้อยกเว้น | C ไม่รองรับการจัดการข้อยกเว้น |
30) อาร์เรย์คืออะไร?
อาร์เรย์เป็นโครงสร้างข้อมูลที่มีองค์ประกอบที่คล้ายกัน เงื่อนไขที่จำเป็นในการใช้อาร์เรย์คือองค์ประกอบอาร์เรย์ทั้งหมดควรมีประเภทข้อมูลเดียวกัน
31) อธิบายการจัดสรรหน่วยความจำในภาษาซี
มีสามฟังก์ชันในการจัดสรรหน่วยความจำใน C โดยมีดังต่อไปนี้:
- โทรล็อค(): ฟังก์ชันนี้จัดสรรหน่วยความจำและเตรียมใช้งานบล็อกหน่วยความจำนี้เป็นศูนย์ มันจะส่งคืนตัวชี้ไปที่บล็อกของหน่วยความจำ
- มอลลอค(): ฟังก์ชันนี้สงวนพื้นที่หน่วยความจำ และส่งกลับตัวชี้ประเภทโมฆะ
- ฟรี(): ฟังก์ชันนี้จะปล่อยหน่วยความจำที่จัดสรรไว้
32) ดัชนีคลัสเตอร์คืออะไร?
Clusterดัชนี ed จะจัดลำดับระเบียนใหม่ในลักษณะที่จัดเก็บไว้ในตาราง
33) ดีบักเกอร์หมายถึงอะไร?
ดีบักเกอร์คือโปรแกรมคอมพิวเตอร์ ใช้ในการดีบักและทดสอบโปรแกรมอื่นๆ
34) อะไรคือความแตกต่างที่สำคัญระหว่าง const char *p และ char const *p?
ทั้งสองเป็นตัวชี้ไปยัง Char คงที่ อย่างไรก็ตาม หากคุณเขียน char * const p สิ่งนี้จะประกาศ 'p' เป็นตัวชี้ค่าคงที่ของ char
35) อธิบายการจัดตำแหน่งหน่วยความจำ
ในโครงสร้างข้อมูล การจัดตำแหน่งหน่วยความจำเป็นวิธีการจัดเรียงข้อมูลและการเข้าถึงในบล็อกหน่วยความจำ
36) อธิบายตัวสร้างการแปลง
มันเป็นตัวสร้างพารามิเตอร์ตัวเดียวที่ถูกประกาศโดยไม่มีตัวระบุฟังก์ชัน 'ชัดเจน' ตัวสร้างการแปลงสามารถเรียกได้ด้วยพารามิเตอร์เดียว (จนถึง C++11) เรียกว่าคอนสตรัคเตอร์การแปลง
37) อธิบายแนวคิดของต้นไม้
Tree เป็นประเภทข้อมูลนามธรรม มันแสดงถึงโหนดที่เชื่อมต่อกันด้วยขอบ
38) คลังข้อมูลคืออะไร? เหตุใดเราจึงควรใช้คลังข้อมูล?
คลังข้อมูลเป็นเครื่องมือด้านปัญญาทางธุรกิจที่จัดเก็บข้อมูลจากฐานข้อมูลปฏิบัติการและจากแหล่งภายนอก ช่วยสนับสนุนกระบวนการตัดสินใจในองค์กร
เราควรใช้คลังข้อมูลเพื่อให้มั่นใจว่าข้อมูลที่เก็บรวบรวมมีความสอดคล้องกัน นอกจากนี้ยังช่วยผู้นำทางธุรกิจในการพัฒนากลยุทธ์ที่ขับเคลื่อนด้วยข้อมูล
39) การเรียกซ้ำในภาษา C มีกี่ประเภท?
การเรียกซ้ำส่วนใหญ่มีหกประเภท: 1) การเรียกซ้ำเชิงเส้น 2) การเรียกซ้ำส่วนท้าย 3) การเรียกซ้ำแบบไบนารี 4) การเรียกซ้ำแบบเอกซ์โปเนนเชียล 5) การเรียกซ้ำแบบซ้อน และ 6) การเรียกซ้ำซึ่งกันและกัน
40) อธิบายคอมไพเลอร์และล่าม
- คอมไพเลอร์คือโปรแกรมที่ประมวลผลโค้ดที่เขียนด้วยภาษา C และแปลงเป็นภาษาเครื่อง
- ล่ามเป็นโปรแกรมที่รันโค้ด C โดยตรงโดยไม่ต้องคอมไพล์เป็นภาษาเครื่อง
41) อธิบายขอบเขตของตัวแปร
ขอบเขต หมายถึง การมองเห็นตัวแปรใดๆ การมองเห็นตัวแปรจำกัดอยู่ที่โปรแกรมหรือฟังก์ชัน
42) ข้อยกเว้นที่ผู้ใช้กำหนดคืออะไร Java การเขียนโปรแกรม?
คำหลัก try, catch และสุดท้ายจะถูกนำมาใช้เพื่อปรับใช้ข้อยกเว้นแบบกำหนดเองที่ผู้ใช้กำหนด Javaในภาษา Java คุณสามารถสร้างคลาสข้อยกเว้นและโยนข้อยกเว้นโดยใช้คีย์เวิร์ด throw
43) อธิบายคนเก็บขยะ.
In Javaตัวรวบรวมขยะเป็นโปรแกรมที่จัดการหน่วยความจำโดยอัตโนมัติและลบวัตถุที่ไม่ได้ใช้
44) การแจงนับคืออะไร?
เป็นประเภทข้อมูลที่ผู้ใช้กำหนดซึ่งใช้ในการตั้งชื่อให้กับค่าคงที่ ทำให้โปรแกรมอ่านง่าย
45) ตัวระบุแบบคงที่หมายถึงอะไร?
ตัวระบุแบบคงที่จะเริ่มต้นได้เพียงครั้งเดียว และค่าจะคงอยู่ตลอดอายุของแอปพลิเคชัน ค่าหน่วยความจำที่จัดสรรโดยตัวแปรคงที่สามารถใช้ได้ระหว่างการเรียกใช้ฟังก์ชัน ค่าเริ่มต้นของตัวระบุคงที่ที่ไม่ได้เตรียมใช้งานคือศูนย์
46) อธิบายการเข้ารหัส
เป็นกระบวนการแปลงข้อความเป็นโค้ด วัตถุประสงค์หลักของการเข้ารหัสคือเพื่อป้องกันการเข้าถึงโดยไม่ได้รับอนุญาต
47) การถอดรหัสคืออะไร?
เป็นการเปลี่ยนแปลงข้อมูลที่เข้ารหัสและแปลงเป็นข้อความที่มีความหมายซึ่งคุณสามารถอ่านและทำความเข้าใจได้
48) ลายเซ็นดิจิทัลคืออะไร?
เป็นเทคนิคที่ใช้ในการตรวจสอบความถูกต้องของข้อความ จริงๆ แล้วลายเซ็นดิจิทัลคือเวอร์ชันที่เข้ารหัสของการแยกข้อความ
49) ตั้งชื่อหลักการพื้นฐานของ OOPS
หลักการพื้นฐานสี่ประการของระบบการเขียนโปรแกรมเชิงวัตถุ ได้แก่ 1) นามธรรม 2) การสืบทอด 3) การห่อหุ้ม และ 4) ความหลากหลาย
50) กำหนดความหลากหลาย
Polymorphism เป็นแนวคิดที่ใช้ในการเขียนโปรแกรมเชิงวัตถุ Polymorphism ช่วยให้คุณสามารถดำเนินการเดียวได้หลายวิธี
51) SDLC คืออะไร?
วงจรชีวิตการพัฒนาซอฟต์แวร์หรือวงจรการพัฒนาแอปพลิเคชันเป็นคำที่ใช้ในวิศวกรรมซอฟต์แวร์เพื่ออธิบายกระบวนการพัฒนาซอฟต์แวร์ กระบวนการนี้ประกอบด้วย 4 ขั้นตอน: 1) การวางแผน 2) การสร้าง 3) การทดสอบ และ 5) การปรับใช้

