Topp 50 programmeringsintervjuspørsmål og svar du må vite
Leter du etter de beste programmeringsspørsmålene og svarene for å hjelpe deg med å klare et intervju? Her er de 50 beste.

Programvareselskaper er alltid på utkikk etter gode programmeringstalenter, med telefon- og nettintervjuer som ofte avgjør skjebnen din på bare noen få minutter.
En god programmerer må være så allsidig som mulig – fra systemforståelse til generell programmering, ulike konsepter og teknologier, i tillegg til å være oppdatert.
Følgende er en liste over 50 beste programmeringsintervjuspørsmål og svarene deres. De kaster et lys over de varierte konseptene som enhver nybegynner må kunne for å utmerke seg.
1. Hva er dataprogrammering?
Dataprogrammering er prosessen med å kode logiske prosesser som skal utføres av en datamaskin. Dette oppnås ved å bruke et dataspråk som inneholder de nødvendige instruksjonene.
Prosessen kan videre deles inn i design, koding, feilsøking og oppdatering.
2. Hva er feilsøking?
Feilsøking er prosessen med å oppdage og eliminere feil i et dataprograms programvarekilde. Det er mange metoder for å gjøre dette, men de fleste utviklingsmiljøer kommer med en integrert debugger for å gjøre ting enklere.
3. Hva er en kompilator?
En kompilator er et program som tar det skrevne programmet og gjør det om til maskinkode som en datamaskin kan forstå.
En typisk kompilatorpakke består imidlertid av en pre-prosessor, hovedkompilatoren som gjør datamaskinspråket om til assemblerkode, og en assembler.
4. Hva er en pre-prosessor?
En pre-prosessor er et program som analyserer den skrevne datakoden for å finne og tilfredsstille dens avhengigheter, for eksempel nødvendige biblioteker.
Etter at pre-prosessoren har sørget for at alt, inkludert utførelsesmiljøet, er i orden, kan en kompilator konvertere koden til monteringskode.
5. Hva er en Assembler?
En assembler er et program som tar det laveste nivået av menneskelig lesbar datakode kalt assemblerspråk og gjør den om til maskinkoden som en datamaskin kan jobbe med.
Assembly-språk blir vanligvis skrevet ut av en kompilator, selv om man også kan kode direkte. Et monteringsprogram kan inneholde kode som:
MOV AH, 02H
men når du kompilerer den til maskinkode, får du bare nuller og enere (f.eks. 0110011110101010).
6. Hvordan kjøres et program?
Først laster operativsystemet det spesifiserte programmet fra harddisklagring til systemminnet (RAM) og lar det deretter kjøres ved å instruere CPU-en til å fortsette kjøringen fra programmets første minneadresse. CPU-en utfører en hvilken som helst kommando den ser, og flytter deretter til den neste, og gjentar ofte denne prosedyren millioner av ganger per sekund.
32-bits CPUer utfører 32-biters (4-byte, dobbeltord) instruksjoner på en gang, mens 64-bits CPUer utfører 64-biters (8-byte, quad-ord) instruksjoner på en gang. Disse instruksjonene er innebygd i CPU-en, og det er assembleren som gjør programmeringskoden til de binære tallene som representerer de opprinnelige CPU-kommandoadressene.
7. Definer en subrutine
En subrutine er en sekvens av instruksjoner i et program som kan kalles og utføres når som helst. Med andre ord kan en subrutine være en funksjon, en metode eller en prosedyre som brukes til å implementere en spesifikk oppgave som å sende en e-post, åpne en fil eller brute-force en påloggingsside.
8. Definer Maskinkode
Maskinkode er en sekvens av binære tall som inneholder utførelsesinstruksjoner for en spesifikk mikroprosessor og dens tilhørende minneadresser.
Maskinkode er tradisjonelt utgitt av en assembler som er designet for den spesielle familien av mikroprosessorer.
9. Forklar Kompilerte vs tolkede språk
Et kompilert dataspråk må gjøres om til maskinkode før det kjøres på en datamaskin, mens et tolket språk ikke trenger kompilering på forhånd.
Når du kjører et tolket program, blir det først behandlet av en tolk, som deretter kompilerer og kjører det på farten. Disse ekstra trinnene gjør tolkede språk som Python tregere enn kompilerte språk som C.
10. Hva er en loop?
En loop er en kodestruktur som kan gjenta spesifikke utsagn til et spesifisert kriterium er oppnådd. Dette kriteriet kan inkludere et fast antall repetisjoner eller endring av en definert variabel.
11. Liste over populære typer løkker
Ulike dataspråk vil tolke loops på forskjellige måter. Populære C-familiesløyfetyper inkluderer imidlertid:
- While() Loop – den tillater kjøring av spesifikk kode, så lenge som en boolsk kode mens() betingelsen er oppfylt.
For eksempel while(2>1){print(“yahoo!”)};. - For(;;) Løkke – inneholder tre uttrykk (initialisering; evaluering; oppdatering) som definerer betingelsene for å teste for, samt en fleksibel metode for å øke antallet. Den vil også kjøre kode minst én gang.
- Gjør{} While() Loop – denne typen loop utfører gjøre{} kode minst én gang før du bestemmer om mens() tilstanden er fortsatt sann.
12. Forklar iterasjon vs Rekursjon
En iterasjon er bruken av en løkke for å utføre de samme kodetrinnene, mens rekursjon er prosessen med en funksjon som kaller seg selv om og om igjen. Problemet med rekursjon er imidlertid at du bare kan komme til en viss dybde før du får problemer med hukommelsen.
13. Forklar jobbene til Bryt og fortsett i en sløyfe
A bryte setningen avslutter kjøringen av en løkke og fortsetter kjøringen av resten av datamaskinkoden. EN fortsette statement, på den annen side, fortsetter å iterere loopen fra begynnelsen.
14. Hva er OOP?
OOP står for Object Oriented Programming og det er et programmeringsparadigme som implementerer programvaredesign rundt data og objekter, snarere enn rundt funksjoner eller prosedyrer.
15. Hva er prosedyreprogrammering?
Prosedyreprogrammering er et programmeringsparadigme som organiserer datakode rundt sekvensene eller trinnene med instruksjoner som skal utføres. Som navnet tilsier, er det en ovenfra-ned-tilnærming som begynner koden fra den innledende fasen av hendelser og slutter med den forventede slutten av hendelsene.
16. Forklar funksjonell programmering
Funksjonell programmering er et dataprogrammeringsparadigme som nærmer seg programvareutvikling ved å bruke sekvensielle funksjoner som verken muterer tilstand eller data for tilførte argumenter.
Målet er å lage mer robuste programmer som gir de forventede resultatene uten uforutsette bivirkninger.
17. Forklar Språk på høyt nivå
Et programmeringsspråk på høyt nivå er et dataspråk som appellerer mer til menneskelig forståelse enn til datamaskinens spesifikasjoner eller natur.
Programmeringsspråk på høyt nivå som C og Python er enkle å forstå, mens et lavnivå-monteringsspråk kan være veldig forvirrende for nybegynnere.
18. Liste Populær Språk på lavt nivå
Det er bare to programmeringsspråk på lavt nivå: montering og maskinkode.
19. Definer et SQL-injeksjonsangrep
Et SQL-injeksjonsangrep er en prosess for å legge inn SQL-setninger i inndatafelter som brukernavn eller adresseinndata, i håp om at en utvikler ikke renset inngangene ordentlig under programmering. Og når det lykkes, gjør et slikt angrep det mulig for angriperen å få administratortilgang til serveren.
20. Hva er en tabell i SQL?
En tabell i SQL refererer til en samling av data som er gruppert i kolonner og rader. Hver kolonne har en distinkt datatype, og du kan ha flere tabeller i en enkelt database. Du kan også spørre mer enn én tabell samtidig.
Du lager en tabell med:
CREATE TABLE tabellnavn(kolonne1 datatype, kolonne2 datatype, kolonne3 datatype, …);
21. Forklar forskjellen mellom et objekt og en klasse
Et objekt er en forekomst av en klasse, mens en klasse er en blåkopi som et objekt er opprettet fra. Et objekt kan ha tilstander og egenskaper, som farge, høyde, vekt, hastighet og så videre.
Disse egenskapene må i det minste være definert eller initialisert med standardverdier.
22. Hvor mange bits utgjør én megabyte?
Det er 8,000,000 1 8 biter i 10 megabyte fordi en byte er XNUMX biter og en mega er XNUMX6.
23. Definer en flytende datatype
En float er en datatype som representerer et tall med desimalbrøker. Det brukes i situasjoner der det er behov for et høyere presisjonsnivå enn hva standard heltall kan gi. Et eksempel på en flottør er:
0.013
or
25.932
24. Hva står HexaDecimal 0xFF for?
0xFF står for desimal 255 eller binær 11111111. 0x står for base16 eller heksadesimal notasjon, som går fra 1 til 9 og deretter fortsetter med A til F for å representere 15. Så 0xF er desimal 15, mens 0xFF er desimal 255.
25. Navngi typer feil i programmering
Det er tre hovedtyper av feil i et dataprogram, de er:
- Syntaksfeil
- Logisk feil
- Runtime Error
26. Hva er en syntaksfeil?
En syntaksfeil oppstår når det er et avvik fra den ofte strenge syntaksen til programmeringsspråk. Det kan være et resultat av den enkle feilplasseringen av bokstaver til feil parametere som blir sendt til en funksjon. De fleste kompilatorer vil inkludere kildekodens linjenummer der feilen skjedde.
27. Hva er en logisk feil?
En logisk feil er en feil som oppstår fra måten et program fungerer på. Så selv om programmet kan kjøre feilfritt, klarer det ikke å oppnå formålet. Logiske feil kan oppstå på mange måter og være forårsaket av mange årsaker.
28. Hva er en kjøretidsfeil?
En kjøretidsfeil er en dataprogramfeil som oppstår under kjøringen av programmet og på grunn av uforutsette omstendigheter. Så mens programmet fungerer feilfritt, kan for eksempel minne- og nettverksproblemer føre til at programmet oppfører seg feil.
29. Forklar Sterke versus svake språk
Et sterkt skrevet språk er strenge med hensyn til de forskjellige datatypene og hvordan du kan konvertere dem, mens et språk med svakt skrevet setter færre begrensninger på datatyper og deres definisjoner.
Mange svakt skrevet språk vil konvertere datatyper automatisk, mens sterkt skrevet språk ofte krever eksplisitte konverteringer.
30. Hva er MVC-arkitektur?
MVC refererer til Model-View-Controller og er et programvareutviklingsmønster for brukergrensesnitt. Den deler programlogikken i 3 deler.
Ocuco modell del håndterer den underliggende datalogikken til de aktuelle objektene, mens utsikt håndterer visning av informasjon til brukeren, og controller håndterer dataflyten mellom visningene og modellene. MVC-design brukes ofte med objektorientert programmering.
31. Definer en Algoritme
En algoritme er en sekvens av prosedyrer designet for å løse et spesifikt problem. Disse prosedyrene er vanligvis delt opp i mindre trinn, og datamaskinen gjør dem nøyaktig på den måten hver gang.
Eksempler på algoritmer inkluderer ansiktsgjenkjenning, Google-søk, måten du knytter skoene på, koding eller kryptering av data og så videre.
32. Hva er Maskinlæring?
Maskinlæring eller ML er en del av kunstig intelligens som fokuserer på å hjelpe systemer med å identifisere mønstre og ta avgjørelser på egenhånd gjennom forbruk av data.
Dette forbedrer deretter ytelsen eller effektiviteten. Maskinlæringssystemer kan være overvåket, uten tilsyn og forsterkningsbasert.
33. Hva er Regulære uttrykk?
Et regulært uttrykk eller Regex er en streng som brukes til å definere søkemønstre i tekstdokumenter. Ulike programmeringsspråk implementerer regulære uttrykk eller bruker populære regex-biblioteker. Et eksempel på regex for å matche alle tegn i en tekst er:
(. *)
mens følgende samsvarer bare med mp3-filer:
.+\.(mp3)$
34. Hva gjør modulus (%)-operatøren?
Modulusoperatoren % tar to operander og deler den første operanden ved hjelp av den andre. Den returnerer deretter resten av operasjonen som et resultat.
Det brukes ofte til å teste oddetall og partall ved å dele et hvilket som helst heltall med 2, der et 0-resultat betyr et partall og 1 betyr et oddetall.
35. Forklar Prosessgaffel
Forking kommer fra gaffel() funksjon i Unix- og Linux-systemer som kan brukes av en kjørende prosess for å lage en kopi av seg selv. Så, prosessgaffel er duplisering av en prosess for å lage to like og samtidig utførende prosesser.
En ekstra type forking refererer til å ta kildekoden til et åpen kildekode-prosjekt og lage et helt nytt program fra det.
36. Forklar Trådgyting
Thread spawning er prosessen med å lage en ny CPU-tråd for å kjøre en prosess. Spawning brukes ofte av dataintensive programmer for å utnytte en prosessors multi-threading evner, og suksessen avhenger av CPU den kjører på, hvor mange kjerner den har og hvor mange tråder per kjerne den tilbyr.
37. Hva gjør Reserverte ord Mener?
Reserverte ord er termer du ikke har lov til å bruke som identifikator i et programmeringsspråk. Dette inkluderer funksjoner, variabler og etiketter. De er reservert fordi de allerede er definert og har spesifikke betydninger.
38. Liste over populære reserverte ord
Ulike språk har forskjellige reserverte ord basert på deres syntaks. Her er de mest populære reserverte ordene i programmering:
- IF
- TRUE
- FALSK
- SWITCH
- ELSE
- CASE
- boolsk
- KOMME TILBAKE
- FUNKSJON
- BREAK
- GOTO
39. Hva er en streng?
En streng er en sekvens av tegn, ofte holdt i en matrise og brukes til å definere tekstdata. Den mest populære strengen er "hello world".
40. Hva er en variabel?
En variabel er en hvilken som helst verdi som kan endres under et programs kjøring. En variabel kan være av hvilken som helst datatype, inkludert strenger og heltall. For eksempel initialiseres et program som nedenfor:
int a = 0;
int b = 1;
så under utførelse gjøres endringer:
b = a+b; //b har variert
41. Hva er en konstant?
En konstant er en variabel som ikke forventes å endre seg under programkjøring. Et godt eksempel er lysets eller lydens hastighet. Ulike programmeringsspråk lar deg definere konstanter på forskjellige måter. For eksempel, i C:
const float middle_c = 261.62; //midttone c på et piano er 261.6255 Hz
42. Definer en matrise
En matrise er en type variabel som brukes til å lagre flere verdier om gangen. Mange språk lar deg bare lagre verdier av lignende datatyper, mens andre språk kan håndtere arrays med forskjellige typer. Du kan også ha flerdimensjonale arrays, som er arrays av arrays og kan bli rotete.
Å definere en matrise i mql4 er enkelt med:
string TextArray[100]; //en rekke hundre strenger
43. Hva er Funksjon Overbelastning?
Funksjonsoverbelastning er en metode som lar en utvikler definere flere funksjoner som deler samme navn, men som har forskjellige funksjoner. Dette oppnås ved å lage de forskjellige funksjonsversjonene med forskjellige argumenter. Kompilatoren vet da hvilken funksjon som er nødvendig av typen og antallet argumenter som leveres.
44. Definer en Ring etter referanse
Et kall ved referanse er en metode for å sende minneadressen til argumenter til en funksjon, i motsetning til standardmetoden for å sende en kopi av argumentets verdi. Målet med referanseanrop er at argumentet blir direkte modifisert av funksjonen.
45. Forklar Aritmetiske operatører
Dette er spesialtegn som fungerer for å utføre aritmetiske operasjoner i et programmeringsspråk. Aritmetiske operatorer inkluderer:
- Tillegget eller unært pluss (+)
- Subtraksjon eller unær minus (-)
- Multiplikasjon (*)
- Divisjon (/)
- Modulus (%).
46. Forklar logiske operatorer
Logiske operatorer er ord eller symboler som brukes til å utføre operasjoner basert på betinget logikk. De fleste språk har bare 3 logiske operatorer:
- OG (&& i C, C++, JavaScript)
- OR (|| i C, C++, JavaScript)
- IKKE (! i C, C++, JavaScript)
47. Logisk 1 OG 0 =?
En logisk 1 OG 0 operasjon vil gi deg falsk fordi den andre operanden er 0 og du trenger at begge operandene til OG-operasjonen skal være 1 eller TRUE for å få positiv utgang.
48. Logisk IKKE 1 =?
En logisk NOT 1 operasjon vil gi deg falsk fordi NOT-operatoren negerer alt du gir den, noe som betyr at den gjør 1 til 0 og 0 til 1. Så hvis du gir den en 1 eller TRUE operand resulterer det i 0 eller FALSE.
49. Logisk 1 NAND 1 =?
En logisk 1 NAND 1 operasjon vil produsere falsk fordi begge operandene er SANN og NAND-operatoren alltid negerer to like innganger for å produsere en motsatt utgang.
Altså hvis operasjonen var 0 NAND 0, da vil utgangen være 1 eller TRUE.
50. Logisk 1 XOR 1 =?
En logisk 1 XOR 1 operasjon vil produsere falsk fordi mens en normal ELLER-operasjon vil produsere SANN på en eller begge inngangene som er SANN, produserer en XOR-operasjon (Eksklusiv ELLER) bare SANN når bare én inngang og ikke den andre er SANN.
Konklusjon
Vi har nådd slutten av denne listen over de 50 beste programmeringsintervjuspørsmålene og svarene deres. Og som du kan se, er programmeringsverdenen enorm, men spennende.
Ingen intervjuer er like. Så mens denne listen peker deg i de riktige emneretningene, bør du også prøve å få en bedre forståelse av hvert problem.





