Test your basic knowledge |

Programming

Subject : it-skills
Instructions:
  • Answer 50 questions in 15 minutes.
  • If you are not ready to take this test, you can study here.
  • Match each statement with the correct term.
  • Don't refresh. All questions and answers are randomly picked and ordered every time you load a test.

This is a study tool. The 3 wrong answers for each question are randomly chosen from answers to other questions. So, you might find at times the answers obvious, but you will see it re-enforces your understanding as you take the test each time.
1. A function that does not modify any of the objects it receives as parameters. Most pure functions are fruitful.






2. A way to traverse a tree - visiting the left subtree and then the root and then the right subtree.






3. An explicit statement that takes a value of one type and computes a corresponding value of another type.






4. A loop inside the body of another loop.






5. One of the named data items that makes up an instance.






6. The node that refers to a given node.






7. A user-defined compound type. A class can also be thought of as a template for the objects that are instances of it.






8. An escape character '' followed by one or more printable characters used to designate a nonprintable character.






9. Repeated execution of a set of programming statements.






10. An operation that divides one integer by another and yields an integer. Integer division yields only the whole number of times that the numerator is divisible by the denominator and discards any remainder.






11. The set of rules governing the order in which expressions involving multiple operators and operands are evaluated.






12. One of the basic elements of the syntactic structure of a program - analogous to a word in a natural language.






13. A loop in which the terminating condition is never satisfied.






14. A set of characters that are treated as a unit for purposes of parsing such as the words in a natural language.






15. Extending built-in operators ( + or - or * or > or < etc.) so that they work with user-defined types.






16. An ADT that defines the operations one might perform on a priority queue.






17. A variable defined inside a module - accessed by using the dot operator ( .).






18. An operation defined in linear algebra that multiplies two Points and yields a numeric value.






19. The process of adding a function header and parameters to a sequence of program statements. This process is very useful whenever the program statements in question are going to be used multiple times.






20. To read a string of characters or tokens and analyze its grammatical structure.






21. The topmost node in a tree with no parent.






22. One program structure within another - such as a conditional statement inside a branch of another conditional statement.






23. A data type in which the elements can be modified. It is a compound type - e.g. lists.






24. A software development practice which arrives at a desired feature through a series of small but iterative steps motivated by automated tests which are written first that express increasing refinements of the desired feature.






25. A class definition that implements an ADT with method definitions that are invocations of other methods - sometimes with simple transformations. It does no significant work but it improves or standardizes the interface seen by the client.






26. The ability to combine simple expressions and statements into compound statements and expressions in order to represent complex computations concisely.






27. A numerical value that does not change during the execution of a program.






28. An invisible marker that keeps track of where the next character will be printed.






29. An implementation of a queue using a linked list.






30. A name that refers to a value.






31. A reference to a list node can be treated as a single object or as the first in a list of nodes.






32. The class from which a child class inherits.






33. One of the nodes referred to by a node.






34. A situation in which two or more names in a given namespace cannot be unambiguously resolved.






35. Another name for object code that is ready to be executed.






36. A variable used as part of the terminating condition of a loop.






37. An operator that takes two operands.






38. A name given to a variable.






39. An automatic procedure used to validate that individual units of code are working properly.






40. The name and location of a file within a file system.






41. One of the operators that compares two values: == or != or > or < or >= and <=.






42. One of the possible paths of the flow of execution determined by conditional execution.






43. An intermediate language between source code and object code. Many modern languages first compile source code into byte code and then interpret the byte code with a program called a virtual machine.






44. Generalization by reducing the information content of a concept.






45. A function which changes its arguments inside the function body. Only mutable types can be changed by modifiers.






46. To replace something unnecessarily specific (like a constant value) with something appropriately general (like a variable or parameter). It makes code more versatile - more likely to be reused and sometimes even easier to write.






47. An integer variable or value that indicates an element of a list.






48. The dot operator ( .) permits access to attributes and functions of a module.






49. A syntactic construct which enables lists to be generated from other lists using a syntax analogous to the mathematical set-builder notation.






50. A value passed to a program along with the program's invocation at the command prompt of a command line interface (CLI).