50 nejčastějších otázek a odpovědí v pohovoru TCS (2025)
TCS (Tata Consultancy Services) je indická nadnárodní společnost v oblasti informačních technologií se sídlem v Bombaji, s hlavními pobočkami v Pune, Bengaluru, Hajdarábádu a dalších městech. TCS je největší IT společnost v Indii.
Proces náboru v TCS:
TCS provádí tři kola pohovorů, aby vybrala nového kandidáta jako vývojáře softwaru v jejich společnosti.
- Zkouška způsobilosti
- Technický pohovor
- Manažerské kolo
- HR rozhovor
Nábor TCS začíná písemným testem, po kterém následuje osobní pohovor. Náborář může také vést skupinovou diskuzi v kampusu pro kandidáty na softwarové inženýry.
Otázky k technickému pohovoru TCS: čerství a zkušení
Následují často kladené otázky a odpovědi na pohovory TCS pro nováčky i zkušené kandidáty, aby získali tu správnou práci pro svou kariéru.
1) Které programovací jazyky jsou důležité pro pohovor v kampusu TCS?
Důležité programovací jazyky pro pohovory v kampusu TCS jsou 1) programování v jazyce C, 2) C++ programování a 3) Java programování.
2) Jaký je hlavní rozdíl mezi C a Java?
Primární rozdíl mezi těmito dvěma je v tom Java je objektově orientovaný programovací jazyk, zatímco C je procedurální programovací jazyk.
3) Vyjmenujte čtyři třídy úložiště dostupné v C.
Čtyři třídy úložiště dostupné v jazycích C jsou 1) registr, 2) auto, 3) externí a 4) statické.
4) Vysvětlete statickou proměnnou.
Je to specifikátor přístupu. Hodnota statické proměnné se během provádění programu nemění.
5) Jak vytisknout adresu?
Pro tisk adresy proměnné můžete použít %p ve funkci printf.
6) Vysvětlete koncept přetížení funkcí.
Je to vlastnost C++ což umožňuje vytvořit více než jednu funkci s podobným názvem. Funkce lze identifikovat pomocí jejich parametrů.
7) Vysvětlete dvě pravidla integrity používaná v DBMS.
- Pravidla referenční integrity
- Pravidla integrity entity
Pravidlo referenční integrity uvádí, že databáze neobsahuje hodnoty cizích klíčů osiřelých záznamů. V tomto případě nelze hodnotu primárního klíče upravit, pokud jste tuto hodnotu použili jako cizí klíč v podřízené tabulce.
V pravidlech integrity entity nemůžete ponechat hodnotu primárního klíče null.
8) Definujte třídy a objekty termínu.
Class je stavební blog objektově orientovaného programování, který obsahuje skupinu datových členů a jejich funkce. Můžete k nim přistupovat vytvořením okamžité třídy.
Objekt je entita reálného světa. Některé příklady předmětu jsou počítač, notebook, pero a taška.
9) Definujte makra.
Makro je direktiva preprocesoru, která nahrazuje hodnotu makra.
10) Diferencujte strukturu a pole.
Primární rozdíl mezi strukturou a polem je následující:
- Pole je datová struktura. Obsahuje skupinu podobných datových typů.
- Struktura je uživatelsky definovaný datový typ. Obsahuje skupinu rozdílných datových typů.
11) Uveďte některé oblasti, ve kterých se datová struktura široce uplatňuje.
Níže jsou uvedeny oblasti, ve kterých se datová struktura používá:
- Numerická analýza
- Systém pro správu databází
- Umělá inteligence
- Operating systému
- Balíček pro statistickou analýzu
12) Jak můžete znovu použít zapsaný kód C++ programovací jazyk?
K opětovnému použití kódu můžete použít techniku dědičnosti.
13) Vyjmenujte různé techniky prevence uváznutí.
Techniky prevence uváznutí jsou:
- Vzájemné vyloučení
- Držení zdrojů
- Žádná preempce
- Kruhové čekání
14) Co je řazení vkládání a řazení podle bublin?
Vložení řazení je třídicí algoritmus, ve kterém je konečný seznam nebo pole sestaveno tak, že má vždy jednu položku. Při bublinovém řazení zaměňujete sousední prvky, pokud pořadí není správné.
15) Vysvětlete pojem seznam dvojitých odkazů.
Struktura dat spojení nazývaná seznam dvojitých odkazů obsahuje odkaz zpět na předchozí uzel.
16) Vytváříte funkci, která může přijímat proměnný počet argumentů. Který soubor záhlaví zahrnete?
Musíme zahrnout hlavičkový soubor stdarg.h.
17) Co rozumíte pod pojmem abstrakce dat? Vysvětlete tři úrovně abstrakce dat.
Abstrakce dat je proces rozpoznávání charakteristik objektu nebo jakékoli situace a odfiltrování nežádoucí charakteristiky.
Následují tři úrovně abstrakce dat:
- Fyzická úroveň: Znázorňuje, jak budete ukládat data do databáze
- Logická úroveň: Zobrazuje, jaká data jsou v databázi řazena
- Úroveň zobrazení: Na této úrovni pracují koncoví uživatelé, a pokud budou nalezeny nějaké změny, budou uloženy pod jiným názvem.
18) Vysvětlete, co je argument příkazového řádku v C?
Je to proces získávání argumentů z příkazového řádku v programování C. Ve funkci C main jsou tři argumenty. Čítač argumentů, vektor argumentů a vektor prostředí.
19) Vysvětlete pojem cache paměti.
Mezipaměť je malá paměť počítače, kterou CPU používá ke snížení průměrných nákladů na přístup k datům z hlavní paměti.
20) Vysvětlete rozdíl mezi předáním odkazem a předáním hodnotou.
Při předání hodnotou předáme hodnotu volající funkci. V Pass by reference musíme předat adresu funkci volajícího místo předání hodnoty.
21) Co je to ukazatel?
Proměnná, která ukládá adresu hodnoty umístěné v paměti, se nazývá ukazatel.
22) Rozlišujte mezi nulovým a prázdným ukazatelem.
Nulový ukazatel je ukazatel, který ukazuje nikam. Má hodnotu nula. Void pointer je obecný ukazatel, který zavádí ANSI (American National Standards Institute).
23) Co je přetěžování operátora?
OperaPřetížení tor je polymorfismus, který umožňuje předefinování existujících operátorů tak, aby je bylo možné použít na objekty uživatelsky definovaných tříd.
24) Jaké jsou různé typy dědičnosti dostupné v C++?
Existuje pět typů dědičnosti C++ programování. Jsou to 1) jednoduchá dědičnost, 2) vícenásobná dědičnost, 3) víceúrovňová dědičnost, 4) hybridní dědičnost a 5) hierarchická dědičnost.
25) Proč normalizuje databázi?
Databáze by měla být normalizována, abyste ji mohli efektivně organizovat. Měli byste také normalizovat databázi, abyste odstranili nadbytečná data.
26) Co je DBMS?
DBMS znamená Systém pro správu databází. Je to software používaný ke správě vaší databáze. DBMS poskytuje rozhraní mezi aplikací a databázemi.
27) Vysvětlete podmíněné příkazy.
Podmíněné příkazy jsou také známé jako podmíněný výraz nebo příkaz if-then. Podmíněné příkazy jsou soubor pravidel. Tato pravidla budou provedena pouze v případě, že je podmínka pravdivá.
28) Vysvětlete rozdíl mezi cizím klíčem a odkazovaným klíčem.
Pro propojení s tabulkami se používá cizí klíč. Na druhé straně je referenční klíč primární klíč, na který se odkazuje v druhé tabulce.
29) Vysvětlete rozdíl mezi C a C++?
C++ | C |
---|---|
C++ má třídní koncept | C nemělo koncept třídy |
C++ nepodporuje koncept přetížení funkcí | V programování v C používáme různé funkce jako scanf() si printf() pro vstup a výstup. |
C++ podporuje zpracování výjimek. | C nepodporuje zpracování výjimek |
30) Co je pole?
Pole je datová struktura, která obsahuje podobné prvky. Nezbytnou podmínkou pro použití pole je, že všechny prvky pole by měly mít stejný datový typ.
31) Vysvětlete alokaci paměti v C.
Existují tři funkce pro alokaci paměti v C. Jsou následující:
- calloc(): Tato funkce alokuje paměť a inicializuje tento paměťový blok na nulu. Vrací ukazatel na blok paměti.
- malloc(): Tato funkce rezervuje oblast paměti a vrací ukazatel typu void.
- volný, uvolnit(): Tato funkce uvolní přidělenou paměť.
32) Co je seskupený index?
Clustered index mění pořadí záznamů tak, jak jsou fyzicky uloženy v tabulce.
33) Co myslíš tím debuggerem?
Ladicí program je počítačový program. Používá se k ladění a testování jiných programů.
34) Jaký je hlavní rozdíl mezi const char *p a char const *p?
Oba jsou ukazateli na konstantní Char. Pokud však napíšete char * const p, pak to deklaruje 'p' jako konstantní ukazatel na char.
35) Vysvětlete zarovnání paměti.
V datové struktuře je zarovnání paměti metodou k uspořádání dat a přístupu v paměťovém bloku.
36) Vysvětlete konstruktor konverze.
Je to konstruktor s jedním parametrem, který je deklarován bez 'explicitního' specifikátoru funkce. Konverzní konstruktor lze volat s jediným parametrem (do C++11) se nazývá konvertující konstruktor.
37) Vysvětlete pojem Strom.
Strom je abstraktní datový typ. Představuje uzly, které jsou spojeny hranami.
38) Co je to datové sklady? Proč bychom měli používat datové sklady?
Datový sklad je nástroj business intelligence, který ukládá data z provozních databází i z externích zdrojů. Podporuje rozhodovací proces v organizaci.
K zajištění konzistence shromážděných dat bychom měli používat datový sklad. Pomáhá také vedoucím podnikům vyvíjet strategie založené na datech.
39) Kolik typů rekurzí je v C?
Existuje hlavně šest typů rekurze: 1) lineární rekurze, 2) koncová rekurze, 3) binární rekurze, 4) exponenciální rekurze, 5) vnořená rekurze a 6) vzájemná rekurze.
40) Vysvětlete překladač a interpret.
- Kompilátor je program, který zpracovává kód napsaný v C a převádí do strojového jazyka.
- Interpret je program, který přímo provádí kód C bez kompilace do strojového jazyka.
41) Vysvětlete rozsah proměnné.
Rozsah znamená viditelnost jakékoli proměnné. Viditelnost proměnné je omezena na program nebo funkci.
42) V čem je uživatelsky definovaná výjimka Java programování?
Klíčová slova try, catch a nakonec se používají k implementaci vlastní výjimky definované uživatelem Java. V Javě můžete vytvořit třídu výjimky a vyvolat výjimku pomocí klíčového slova throw.
43) Vysvětlete sběrač odpadu.
In Java, garbage collector je program, který automaticky spravuje paměť a odstraňuje nepoužívané objekty.
44) Co je to výčet?
Je to uživatelsky definovaný datový typ, který se používá k přiřazování jmen konstant. Díky tomu je program snadno čitelný.
45) Co myslíte statickým identifikátorem?
Statický identifikátor je inicializován pouze jednou a jeho hodnota zůstává zachována po celou dobu životnosti aplikace. Mezi voláním funkce lze použít hodnotu paměti přidělenou statickou proměnnou. Výchozí hodnota neinicializovaného statického identifikátoru je nula.
46) Vysvětlete šifrování.
Je to proces převodu textu na kód. Primárním účelem šifrování je zabránit neoprávněnému přístupu.
47) Co je dešifrování?
Jde o transformaci zašifrovaných dat a jejich převod na smysluplný text, který můžete číst a porozumět mu.
48) Co je to digitální podpis?
Je to technika používaná k ověření pravosti zprávy. Digitální podpis je ve skutečnosti zašifrovaná verze výtahu zprávy.
49) Vyjmenujte základní principy OOPS.
Čtyři základní principy objektově orientovaného programovacího systému jsou 1) abstrakce, 2) dědičnost, 3) zapouzdření a 4) polymorfismus.
50) Definujte polymorfismus.
Polymorfismus je koncept používaný v objektově orientovaném programování. Polymorfismus umožňuje provádět jednu akci různými způsoby.
51) Co je SDLC?
Životní cyklus vývoje softwaru nebo životní cyklus vývoje aplikací je termín používaný v softwarovém inženýrství k popisu procesu vývoje softwaru. Tento proces obsahuje 4 fáze: 1) plánování, 2) vytváření, 3) testování a 5) nasazení.