CSC 335 Review Game Exam 2. Teams Andrew, Marshall, Riley, Z Emily, Paul, Dawn, Lisa Gavan,...

Post on 12-Jan-2016

214 views 0 download

Transcript of CSC 335 Review Game Exam 2. Teams Andrew, Marshall, Riley, Z Emily, Paul, Dawn, Lisa Gavan,...

CSC 335 Review Game

Exam 2

Teams

• Andrew, Marshall, Riley, Z• Emily, Paul, Dawn, Lisa• Gavan, Catharine, David, Alex D• Michelle, Matt, Rohan, Jamie• Ben, Jerry, Alex Z, John• Casey, Zane, Lawrence, Alexis• Hugh, Zack, Fritz, Dillon• Colby, Malecki, Spencer, Tim, Patrick

Individual Round

1.

• What are the values of x & y at the end?

int x = 3;

int y = 1;

y = ++x;

2.

What is printed?

int *ptr;

int x = 5;

ptr = &x;

*ptr = 4;

printf(“%d”, x);

3.

• Finish the function:

int add(int *a, int *b){

return __________;

}

4.

• Call the function:

int f = 712;

int g = 63;

int sum = add(____,____);

int add(int *a, int *b){

5.

• Which is true of C?– It is a third-generation language.– It is imperative.– It is procedural.

6.

• What is y?

y = [x % 2 ==1 for x in range(1,6)]

7.

• What is y?

y = [x for x in range(1,6) if x%3 ==1]

8.

• What regular expression matches ten symbols (letters, numbers, spaces, whatever) followed by zero or one a?

9.

• Describe Prolog in terms of:- Declarative/Procedural?- Compiled/ Interpreted?

10.

• Describe Prolog in terms of – Paradigm– Generation

11.

• Do they unify?

a(b(X),X,c(d(Y))) with a(Z,e,c(A))

12.

• What does it do?

mystery([4|T], X):- mystery(T,X1), X is X1+1.mystery([H|T],X):-mystery(T,X).

13.

• What language does it generate?S -> ABA -> aA | aB -> bbb

14.

• What makes a language context-free?

15.

• When would you prefer to write a program in Prolog rather than C?

16.

• How do you prove a language is ambiguous?

17.

• What is special about a line of C code that starts with the # symbol?

18.

• Consider the language anbn. Is it:– Regular– Context-free– Both– Neither

19.

• When might you declare a C variable with the “register” keyword?

20.

• What is aliasing?

21.

• Which regular expression gives an odd number of a’s?

22.

• What language does it generate?S -> abS | ab

23.

• Give an advantage of static scoping over dynamic scoping.

24.

• What parameter passing mechanism does C use?

All-Play

All-Play

• What is the result for the different passing schemes?

global int z = 0;

func(z);

write(z);

void func(int x){

x = z+1;

z= z+10;

}

1. int a = 22. int b = 13. Main():4. a=35. b=76. int x = 107. A(x)8. A(x):9. int a = -310. Print x11. B(x)12. B(x):13. Print aWhat is the symbol table on line 13 if there is static scoping?If Main calls A which calls B, & there’s dynamic scoping, what is symbol table on line 13?

Write regular expressions

• String is either 4 or 5 digits.• String is either 40 or 50 digits.• String includes 2 of the same number.

Write the grammar:

• L = {anbm, m>=n+2}

• Write a prolog predicate that takes a number and generates a list of that number down to one.

• generate(+Num, -List)• Example: generate(5,L) gives

L=[5,4,3,2,1]

All-play

• Write C function that counts how many numbers in an array are positive.

int numPos(int* array, int size)