You are on page 1of 6

shabbir

Some Multiple choice questions in C

07-20-2004 07:57 AM

/*question number 1*/ int z,x=5,y=-10,a=4,b=2; z = x++ - --y * b / a; What number will z in the sample code above contain? Choice 1 5 Choice 2 6 Choice 3 10 Choice 4 11 Choice 5 12 __________________________________________________ _____________________ /*question number 2*/ With every use of a memory allocation function, what function should be used to release allocated memory which is no longer needed? Choice 1 unalloc() Choice 2 dropmem() Choice 3 dealloc() Choice 4 release() Choice 5 free() __________________________________________________ _____________________ /*question number 3*/ void *ptr; myStruct myArray[10]; ptr = myArray; Which of the following is the correct way to increment the variable "ptr"? Choice 1 ptr = ptr + sizeof(myStruct); Choice 2 ++(int*)ptr; Choice 3 ptr = ptr + sizeof(myArray); Choice 4 increment(ptr); Choice 5 ptr = ptr + sizeof(ptr); __________________________________________________ _____________________ /*question number 4*/ char* myFunc (char *ptr) { ptr += 3; return (ptr); } int main() { char *x, *y; x = "HELLO"; y = myFunc (x); printf ("y = %s \n", y); return 0; }

What will print when the sample code above is executed? Choice 1 y = HELLO Choice 2 y = ELLO Choice 3 y = LLO Choice 4 y = LO Choice 5 x = O __________________________________________________ _____________________ /*question number 5*/ struct node *nPtr, *sPtr; /* pointers for a linked list. */ for (nPtr=sPtr; nPtr; nPtr=nPtr->next) { free(nPtr); } The sample code above releases memory from a linked list. Which of the choices below accurately describes how it will work? Choice 1 It will work correctly since the for loop covers the entire list. Choice 2 It may fail since each node "nPtr" is freed before its next address can be accessed. Choice 3 In the for loop, the assignment "nPtr=nPtr->next" should be changed to "nPtr=nPtr.next". Choice 4 This is invalid syntax for freeing memory. Choice 5 The loop will never end. __________________________________________________ _____________________ /*question number 6*/ What function will read a specified number of elements from a file? Choice 1 fileread() Choice 2 getline() Choice 3 readfile() Choice 4 fread() Choice 5 gets() __________________________________________________ _____________________ /*question number 7*/ "My salary was increased by 15%!" Select the statement which will EXACTLY reproduce the line of text above. Choice 1 printf("\"My salary was increased by 15/%\!\"\n"); Choice 2 printf("My salary was increased by 15%!\n"); Choice 3 printf("My salary was increased by 15'%'!\n"); Choice 4 printf("\"My salary was increased by 15%%!\"\n"); Choice 5 printf("\"My salary was increased by 15'%'!\"\n"); __________________________________________________ _____________________ /*question number 8*/ What is a difference between a declaration and a definition of a variable? Choice 1 Both can occur multiple times, but a declaration must occur first. Choice 2 There is no difference between them. Choice 3 A definition occurs once, but a declaration may occur many times. Choice 4 A declaration occurs once, but a definition may occur many times. Choice 5 Both can occur multiple times, but a definition must occur first. __________________________________________________ _____________________

/*question number 9*/ int testarray[3][2][2] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12}; What value does testarray[2][1][0] in the sample code above contain? Choice 1 3 Choice 2 5 Choice 3 7 Choice 4 9 Choice 5 11 __________________________________________________ _____________________ /*question number 10*/ int a=10,b; b=a++ + ++a; printf("%d,%d,%d,%d",b,a++,a,++a); what will be the output when following code is executed choice 1 12,10,11,13 choice 2 22,10,11,13 choice 3 22,11,11,11 choice 4 12,11,11,11 choice 5 22,13,13,13

alok
Re: Some Multiple choice questions in C *question number 1*/ int z,x=5,y=-10,a=4,b=2; z = x++ - --y * b / a; What number will z in the sample code above contain? Choice 3 10 :)

07-26-2004 03:12 PM

__________________________________________________ _____________________ /*question number 2*/ With every use of a memory allocation function, what function should be used to release allocated memory which is no longer needed? Choice 5 free() :D __________________________________________________ _____________________ /*question number 3*/ void *ptr; myStruct myArray[10]; ptr = myArray; Which of the following is the correct way to increment the variable "ptr"? :( soory i couln't find the answer __________________________________________________ _____________________ /*question number 4*/ char* myFunc (char *ptr) {

ptr += 3; return (ptr); } int main() { char *x, *y; x = "HELLO"; y = myFunc (x); printf ("y = %s \n", y); return 0; } What will print when the sample code above is executed? Choice 3 y = LO :) __________________________________________________ _____________________ /*question number 5*/ struct node *nPtr, *sPtr; /* pointers for a linked list. */ for (nPtr=sPtr; nPtr; nPtr=nPtr->next) { free(nPtr); } The sample code above releases memory from a linked list. Which of the choices below accurately describes how it will work? Choice 2 It may fail since each node "nPtr" is freed before its next address can be accessed. :) __________________________________________________ _____________________ /*question number 6*/ What function will read a specified number of elements from a file? Choice 4 fread() __________________________________________________ _____________________ /*question number 7*/ "My salary was increased by 15%!" Select the statement which will EXACTLY reproduce the line of text above. / Choice 4 printf("\"My salary was increased by 15%%!\"\n"); ;) / __________________________________________________ _____________________ /*question number 8*/ What is a difference between a declaration and a definition of a variable? acorrding to C++ Choice 1 Both can occur multiple times, but a declaration must occur first. according to C Choice 3 A definition occurs once, but a declaration may occur many times. __________________________________________________ _____________________

/*question number 9*/ int testarray[3][2][2] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12}; What value does testarray[2][1][0] in the sample code above contain? Choice 5 11 ;) __________________________________________________ _____________________ /*question number 10*/ int a=10,b; b=a++ + ++a; printf("%d,%d,%d,%d",b,a++,a,++a); what will be the output when following code is executed choice 5 22,13,13,13 :) I think i solved most of question,but think my c knowledge need more brush up

coderzone
Re: Some Multiple choice questions in C

04-02-2006 02:49 PM

Added 100 Multiple choice questions in C but some of them may be repeated from shab's post.

humhaingaurav
Re: Some Multiple choice questions in C Hi,

01-28-2008 11:13 PM

One of the solution which you have posted in "Multiple choice C++ question" is wrong. Question is: /*question number 10*/ Code: int a=10,b; b=a++ + ++a; printf("%d,%d,%d,%d",b,a++,a,++a); what will be the output when following code is executed Choice 1 12,10,11,13 Choice 2 22,10,11,13 Choice 3 22,11,11,11 Choice 4 12,11,11,11 Choice 5

22,13,13,13[Ans] The correct answer will be 22,13,14,14 Because if you look at the operator precedence then PreIncerement operator has higher precedence than print operator. Therefore, when we write printf("%d,%d,%d,%d",b,a++,a,++a); so here 'a++' then '++a' gets executed and then 'a' gets executed therefore we get result as 22,13,14,14. Hope you will correct this. Thanks ~Gaurav

You might also like