LinkedIn C (Programming Language) Skill Assessment Answers (2023)

Coursera $1 banner 2023

The LinkedIn Skill Assessments feature allows you to demonstrate your knowledge of the skills you’ve added on your profile. Job posters on LinkedIn can also add Skill Assessments as part of the job application process. This allows job posters to more efficiently and accurately verify the crucial skills a candidate should have for a role.

LinkedIn C Skill Assessment Answers
LinkedIn C Skill Assessment Answers

The topics in the C Programming assessment include:

  • Functions
  • Loops
  • Decision Structures
  • C Data Types and Data
  • Memory Management and Storage
  • C Specific Syntax
  • Data Structures
  • I/O and File I/O
  • Strings
  • Advanced Structures

Question Format

Multiple Choice

Language

English

Table of Content


LinkedIn C (Programming Language) Skill Assessment Answers

Which Code sample will eventually cause the computer to run out of memory?

  • A ✔️
    while(1)
    {
    char *smallString = (char *) malloc(10);
    }


  • B
    long long number = 1;
    while(1)
    number *= 2;

  • C
    while(1)
    {
    char hugeString[1000000L];
    memset(hugeString, 0, 1000000L);
    }

  • D
    while(1)
    {
    long *bigArray = (long *) malloc(sizeof(long) * 1000);
    memset(bigArray, 1000000, 1000);
    free(bigArray);
    }

What will this code print on the screen?

int f1 (int a, int b)
{
if (a > b)
{
printf(“A is greater than B\n”);
return 1;
}
else
{
printf(“B is greater than A”);
return 0;
}
}

main()
{
if (f1(20,10) || f1(10,20))
printf(“C is fun!\n”);
}

  • A✔️
    A is greater then B
    C is fun!


  • B
    A is greater then B
    B is greater then A
    C is fun!

  • C
    A is greater then B
    B is greater then A

  • Nothing is printed on Screen

What is the name for calling a function inside the same function?

  • recursion
  • subfunction
  • inner call
  • infinite loop

What does the declaration of variable c2 demonstrate?

main(){
char c1 =’a’;
char c2 = c1+10;
}

  • character arithmetic
  • undefined assignment
  • type conversion
  • invalid declaration

A pointer to void named vptr, has been set to point to a floating point variable named g. What is the valid way to dereference vptr to assign its pointed value to a float variable named f later in this program?

float g;
void *vptr=&g;

  • f = _(float _)vptr;
  • f = (float *)vptr;
  • f = *(float *)vptr;
  • f = *(float)vptr;

What is this declaration an example of?

struct s {
int i;
struct s *s1;
struct s *s2;
};

  • a node
  • a linked list
  • a stack
  • a binary tree

A C header file is a file with extension .h that contains function declarations and macro definitons to be shared between several source files. Header files are listed using the preprocessing directive #include, and can have one of the following formats: #include or #include “fileB”. What is the difference between these two formats?

  • The preprocessor will try to locate the fileA in same directory as the source file, and the fileB in a predetermined directory path.
  • The preprocessor will try to locate the fileA in the fixed system directory. It will try to locate fileB in the directory path designated by the -l option added to the command line while compiling the source code.
  • The file using fileA syntax must be system files, of unlimited number. fileB must be a user file at a maximun of one per source file.
  • The preprocessor will try to locate the fileA in a predetermined directory path. It will try to locate fileB in the same directory as the source file along with a custom directory path.

Using a for loop, how could you write a C code to count down from 10 to 1 and display each number on its own line?

  • A
    for (int i = 0; i>=0, i–){
    printf(“%d\n”, i);
    }//end of loop
  • B
    int i;
    for (i=1; i<=10; i++){
    printf(“%d”, i);
    }

  • C
    int i = 10;
    while (i>0){
    printf(“%d\n”, i);
    i–;
    }

  • D✔️
    int i;
    for (i= 10; i>0; i–){
    printf(“%d\n”, i);
    }// end of loop

What is not one of the reserved words in standard C?

  • volatile
  • typeof
  • register
  • typedef

What does the program shown below return?

int main(){
int a=1, b=2, c=3, d=4;
int x = a;
if (a>b)
if (b<c) x=b;
else x=c;
return(x);
}

  • 1
  • 3
  • 2
  • 0

Using the Union declaration below, how many bytes of memory space will the data of this type occupy?

union Cars {
char make[20];
char model[30];
short year;
} car;

  • 32
  • 54
  • 30
  • 52

In this code sample, what is not a problem for C compiler?

main(){
constant int PI = 3.14;
printf(“%f\n”, pi);
}

  • The value of PI needs to be set to 3.141593, not 3.14
  • The declaration of PI needs to say const, not constant.
  • The data type of PI needs to be float not int.
  • The printf statement needs to use PI, not pi.

Which is the smallest program to compile and run without errors?

  • main()
  • int main() {return 0;}
  • main() { }
  • main() { ; }

What is optional in a function declaration?

  • data type of parameters
  • return type of function
  • parameter names
  • number of parameters

C treats all devices, such as the display and the keyboard, as files. Which files opens automatically when a program executes?

  • stdout
  • stdio.h
  • default.h
  • string.h

In which segment does dynamic memory allocation takes place?

  • BSS Segment
  • stack
  • heap
  • data segment

Which of the following do you use to deallocate memory?

  • dalloc()
  • dealloc()
  • release()
  • free()

In C language what are the basic building blocks that are constructed together to write a program?

  • keywords
  • identifiers
  • tokens
  • functions

When is memory for a variable allocated?

  • during the assigment of the variable
  • during the initialization of the variable
  • during the declaration of the variable
  • during the definition of the variable

By default c uses the call by value method to pass arguments to functions. How can you invoke the call by reference method?

  • by using pointers
  • by declaring functions separately from defining them
  • by using recursive functions
  • by using global variables

A union allows you to store different ___ in the same ___.

  • Objects; Structure
  • Variables; Declaration
  • Data types; Memory location
  • Arrays; Header file

What is the output of this program?

main() {
char c1=’a’ , c2=’A’;
int i=c2-c1;
printf(“%d”, i);
}

  • 32
  • Runtime error
  • -32
  • 0

What is the difference between scanf() and sscanf() functions?

  • The scanf() function reads data formatted as a string; The sscanf() function reads string input from the screen.
  • The scanf() function reads formatted data from the keyboard; The sscanf() function reads formatted input from a string.
  • The scanf() function reads string data from the keyboard; The sscanf() function reads string data from a string.
  • The scanf() function reads formatted data from a file; The sscanf() function reads input from a selected string

What is not a valid command with this declaration?

char *string[20] = { “one”, “two”, “three”};

  • printf(“%c”, string[1][2]);
  • printf(“%s”, string[1][2]);
  • printf(“%s”, string[1]);
  • printf(string[1]);

What is the expression player->name equivalent to?

  • player.name
  • (*player).name
  • *player.name
  • player.*name

Which program will compile and run without errors?

  • A
    main() {
    for(i=0; i<10; i++) ;
    }

  • B✔️
    main() {
    int i=0;
    for(; i<10; i++) ;
    }


  • C
    main() {
    int i;
    for(i=0; i<j; i++) ;
    }

  • D
    main() {
    int i;
    for (i= 10; i<10; i++)
    }

What does this function call return?

1 main() { float x = f1(10, 5); }
2 float f1(int a, int b) { return (a/b); }

  • 2
  • 2.000000
  • a runtime error
  • a compiler error

What does this program create?

#include <studio.h>

int main() {
int *p = NULL;
return 0;
}

  • a runtime error
  • a NULL pointer
  • a compile error
  • a void pointer

What is an alternative way to write the expression (*x).y?

  • There is no equivalent.
  • x->y
  • *x->y
  • y->x

Compile time errors are static errors that can be found where in the code?

  • in declarations and definitions
  • in functions and expressions
  • in syntax and semantics
  • in objects and statements

 File input and output (I/O) in C is heavily based on the way it is done ___?

  • in Unix
  • in C++
  • in C#
  • in DOS

What does the strcmp(str1, str2); function return?

  • 0 if str1 and str2 are the same, a negative number if str1 is less than str2, a positive number if str1 is greater than str2
  • true (1) if str1 and str2 are the same, false (0) if str1 and str2 are not the same
  • true (1) if str1 and str2 are the same, NULL if str1 and str2 are not the same
  • 0 if str1 and str2 are the same, a negative number if str2 is less than str1, a positive number if str2 is greater than str1

What is the output of this program?

int a=10, b=20;
int f1(a) { return(a*b); }
main() {
printf(“%d”, f1(5));
}

  • 100
  • 200
  • 5
  • 50

Which is not a correct way to declare a string variable?

  • char *string = “Hello World”;
  • char string = “Hello World”;
  • char string[20] = {‘H’, ‘e’, ‘l’, ‘l’, ‘o’, ‘ ‘, ‘W’, ‘o’, ‘r’, ‘l’, ‘d’};
  • char string[] = “Hello World”;

Which choice is an include guard for the header file mylib.h?

  • A
    #ifdef MYLIB_H
    #undef MYLIB_H

    // mylib.h content

    #endif /* MYLIB_H */

  • B✔️
    #ifndef MYLIB_H
    #define MYLIB_H

    // mylib.h content

    #endif /* MYLIB_H */


  • C
    #define MYLIB_H
    #include “mylib.h”

    #undef MYLIB_H

  • D
    #ifdef MYLIB_H
    #define MYLIB_H

    // mylib.h content

    #endif /* MYLIB_H */

How many times does the code inside the while loop get executed in this program?

main(){
int x=1;
while(x++<100){

x*=x; if(x<10) continue;

if(x>50) break
}
}

  • 100
  • 3
  • 5
  • 50

File input and output (I/O) in C is done through what?

  • syntax-driven components
  • native interfaces
  • system objects
  • function calls

 Directives are translated by the?

  • Pre-processor
  • Compiler
  • Linker
  • Editor

By default, C Functions are what type of functions?

  • global
  • static
  • library
  • system

You have written a function that you want to include as a member of structure a. How is such as structure member defined?

  • A✔️
    struct a {
    void *f1;
    };


  • B
    struct a {
    void (*f1)();
    };

  • C
    struct a {
    *(void *f1)();
    };

  • D
    truct a {
    void *f1();
    };

 A Stack data structure allows all data operations at one end only, making it what kind of an implementation?

  • FIFO
  • LIFO
  • LILO
  • LOLI

What does this program display?

main(){
char *p = “ABCDEFGHIJKLMNOPQRSTUVWXYZ”;
int i;
for (i=0;i<5;i++) *p++; p++;
printf(“%c”,p++);
}

  • K
  • M
  • H
  • G

Describe the relationship between lvalue and rvalue.

  • An lvalue may appear only on the left-hand side of an assignment; an rvalue may appear only on the right-hand side.
  • An lvalue may appear only on the left-hand side of an assignment; an rvalue may appear on either the left-hand or right-hand side.
  • An lvalue and an rvalue may appear on either left-hand or right-hand side of an assignment.
  • An lvalue may appear on the left-hand or right-hand side of an assignment; an rvalue may appear only on the right-hand side.

Which operator is used to access the address of a variable?

  • %
  • **
  • ‘*’
  • &

Which add function properly returns the updated value of result?

  • A✔️
    void add (int a, int b, int *result)
    {
    *result = a+b;
    }
    main()
    {
    int a = 10;
    int b = 20;
    int result = 0;
    add (a,b,&result);
    }


  • B
    void add (int a, int b, int result)
    {
    result = a+b;
    }
    main()
    {
    int a = 10;
    int b = 20;
    int result = 0;
    add (a,b,result);
    }

  • C
    void add (int a, int b, int *result)
    {
    result = a+b;
    }
    main()
    {
    int a = 10;
    int b = 20;
    int result = 0;

    add(a,b,result);
    }

  • D
    void add (int *a, int *b, int *result)
    {
    result = a+b;
    }
    main()
    {
    int a = 10;
    int b = 20;
    int result = 0;

    add(a,b,*result);

Consider the number of the Fibonacci series below 100: 0,1,1,2,3,5,8,13,21,34,55,89. Which piece of code outputs the sequence?

  • A
    void fibonacci(int a, int b)
    {
    int c = a+b;
    if(a>100)
    return;

    printf(“%d”, a);

    fibonacci(a,b);
    }
    int main()
    {
    fibonacci(0,1);
    }

  • B
    void fibonacci(int a, int b)
    {
    int c = a+b;
    if(a>100)
    return;

    printf(“%d”, b);

    fibonacci(a,c);
    }
    int main()
    {
    fibonacci(0,1);
    }

  • C✔️
    void fibonacci(int a, int b)
    {
    int c = a+b;
    if(a>100)
    return;

    printf(“%d”, a);

    fibonacci(b,c);
    }
    int main()
    {
    fibonacci(0,1);
    }


  • D
    void fibonacci(int a, int b)
    {
    int c = a+b;
    if(a>100)
    return;

    printf(“%d”, c);

    fibonacci(b,c);
    }
    int main()
    {
    fibonacci(0,1);
    }

Which is not a storage class specifier?

  • intern
  • extern
  • register
  • static

Which line of code, after execution, results in i having the value of 1?

  • for(i=1; i<=1; i++);
  • for(i=1; i=10; i++);
  • for(i=1; i==10; i++);
  • for(i=10; i>=1; i–);

What is the value of variable c at the end of this program?

1 main() {
2 int a, b, c;
3 a=10; b=50;
4 c=a * b % a;
5 }

  • 50
  • 5
  • 0
  • 500

 What is not one of the basic data types in C

  • long double
  • unsigned char
  • array
  • float

What is the member access operator for a structure?

  • ,
  • []
  • .
  • :

What standard data type provides the smallest storage size and can be used in computations?

  • char
  • float
  • int
  • short

what does the ctype tolower() function do?

  • It returns TRUE for lowercase letters of the alphabet.
  • It ensures that text output uses only ASCII values (0 through 127).
  • It returns FALSE for lowercase letters of the alphabet.
  • It converts an uppercase letter of the alphabet to lowercase.

Void pointer vptr is assigned the address of float variable g. What is a valid way to dereference vptr to assign its pointed value to a float variable named f later in the program?

float g;
void *vptr=&g;

  • f=(float *)vptr;
  • *f=*(float )vptr;
  • f=*(float)vptr;
  • f=(float)*vptr;

The dynamic memory allocation functions are defined in which system header file ?

  • stdio.h
  • stdlib.h
  • limits.h
  • stddef.h

A function is a set of __.

  • declarations
  • statements
  • variables
  • objects

How are static functions different from global functions?

  • Static functions must be declared in advance of being defined.
  • Static functions must be declared is a separate header file.
  • Static functions always return the same value.
  • Static functions can be accessed only in the file where they are declared.

Which code example creates the string “Hello Mars” in storage buffer hello.

  • A
    char hello[25];
    strcpy(hello, “Hello “);
    strcpy(hello, “Mars”);

  • B✔️
    char hello[25];
    char *p;
    strcpy(hello, “Hello World”);
    p = hello;
    p +=6;
    strcpy(p, “Mars”);


  • C
    char *hello;
    strcpy(hello, “Hello World”);
    hello+=6;
    strcpy(hello, “Mars”);

  • D
    char hello[25];
    strcpy(hello, “Hello World”);
    strcpy(*hello[6], “Mars”);

If you use the fopen() function with the “a” mode, what happens if the named file doesn’t exist?

  • The file is created and opened for reading.
  • The file is created and opened for writing.
  • The fopen() function returns a NULL indicating that the operation has failed.
  • The file is created and opened for both writing and reading

What does this function return?

int fl(int a, int b) { return(a>b?a:b); }

  • compiler error
  • the smaller value of the two passed parameters
  • runtime error
  • the greater value of the two passed parameters

Which option is a valid function name?

  • draw_star()
  • 5times()
  • upper-limit()
  • auto()

What is not a valid type definition of a structure that contains x and y coordinates as integers, and that can be used as shown for the variable named point?

coord point;
point.x = 9;
point.y = 3;

  • A
    struct coord{
    int x;
    int y;
    };
    typedef struct coord coord;

  • B✔️
    typedef struct coord{
    int x;
    int y;
    };


  • C
    typedef struct coord{
    int x;
    int y;
    } coord;

  • D
    typedef struct{
    int x;
    int y;
    } coord;

What is the output of the below program?

#include <stdio.h>
#if X == 3
#define Y 3
#else
#define Y 5
#endif

int main()
{
printf(“%d”, Y);
return 0;
}

  • 3
  • 5
  • 3 or 5 depending on input
  • Compile time error

What do the functions malloc() and calloc() allocate?

  • reallocatged memory
  • static memeory
  • dynamic memory
  • fragmented memory

You need to determine if a string variable is a substring of another string. Which standard C library function do you use?

  • substr(str1, str2);
  • strstr(str1, str2);
  • substring(str1, str2);
  • strspn(str1, str2);

Find the output of the program?

#include <stdio.h>

#define L 10
int main(){
int a =10;
switch (a,a<<2){
case L:printf(“a==L”); break;
case L*2 : printf(“a = L* 2\n”); break;
case L*4 : printf(“a = L* 4\n”); break;
default: printf(“Error\n”);
}
}

  • a=L*2
  • a=L
  • Error
  • a=L*4

Predict the output of the following code when the interger variables x is initialized to 10,y to 2 and z to 0.

z = x + y * x + 10 / 2 * x;
printf(“value is =%d”,z);

  • 80
  • 170
  • 31.5
  • 6

What will be the output of the following code snippet?

#include <stdio.h>
void solve() {
int x = 2;
printf(“%d”, (x << 1) + (x >> 1));
}
int main() {
solve();
return 0;
}

  • 5
  • 4
  • 2
  • 1

What is the output of this program?

int a=20, b=10;
int f1(a) {
return(a*b);
}
main() {
printf(“%d”, f1(5));
}

  • 100
  • 200
  • 5
  • 50

What is /0 character ?

  • String
  • NULL Character
  • ZERO
  • Variable

What is correct output for follwing code?

#include&lt;stdio.h&gt;
#include&lt;conio.h&gt;
main()
{
int a=10, b=20;
clrscr();
printf(“Before swapping a=%d b=%d”,a,b);
a=a+b;
b=a-b;
a=a-b;
printf(“nAfter swapping a=%d b=%d”,a,b);
getch();
}

  • Before a=10 b=20 , After a=10 b=10
  • Before a=10 b=10 , After a=20 b=10
  • Before a=10 b=20 , After a=20 b=20
  • Before a=10 b=20 , After a=20 b=10

What is Incorrect option that explain # pragma directive ?

  • #pragma exit allows us to specify functions called upon program exit.
  • This is a preprocessor directive that can be used to turn on or off certain features.
  • #pragma startup don’t allows us to specify functions called upon program startup.
  • It is of two types #pragma startup, #pragma exit and pragma warn.

What will be the output of the following code snippet?

#include <stdio.h>
union School {
int age, rollNo;
double marks;
};
void solve() {
union School sc;
sc.age = 19;
sc.rollNo = 82;
sc.marks = 19.04;
printf(“%d”, (int)sizeof(sc));
}
int main() {
solve();
return 0;
}

  • 2
  • 4
  • 8
  • 10

What will be the output of the following code snippet?

#include <stdio.h>
struct School {
int age, rollNo;
};
void solve() {
struct School sc;
sc.age = 19;
sc.rollNo = 82;
printf(“%d %d”, sc.age, sc.rollNo);
}
int main() {
solve();
return 0;
}

  • 19 82
  • Compilation Error
  • 82 19
  • None of these

What is the output of the following code snippet?

int main() {
int sum = 2 + 4 / 2 + 6 * 2;
printf(“%d”, sum);
return 0;
}

  • 2
  • 15
  • 16
  • 18

What does the following declaration mean?

int (*ptr)[10];

  • ptr is array of pointers to 10 integers
  • ptr is a pointer to an array of 10 integers
  • ptr is an array of 10 integers
  • ptr is an pointer to array

What will be the output of the following code snippet?

#include <stdio.h>
void change(int,int);
int main()
{
int a=10,b=20;
change(a,b); //calling a function by passing the values of variables.
printf(“Value of a is: %d”,a);
printf(“\n”);
printf(“Value of b is: %d”,b);
return 0;
}
void change(int x,int y)
{
x=13;
y=17;
}

  • 10,20
  • 10,10
  • 20,20
  • 20,10

Choose true or false.When variable is created in C, a memory address is assigned to the variable.

  • True
  • False

What does the following fragment of C-program print?

#include <stdio.h>

int main()
{
char c[] = “GATE2011”;

char *p = c;

printf(“%s”, p + p[3] -p[1]);

return 0;
}

  • GATE 2011
  • E2011
  • 2011
  • 01

What is the output of the following code snippet?

int main() {
int a = 5, b = 6, c;
c = a++ + ++b;
printf(“%d %d %d”, a, b, c);
return 0;
}

  • 5 6 11
  • 6 7 12
  • 5 6 12
  • 6 6 12

What will be the output of the following C program segment?

char inchar = ‘A’;
switch (inchar)
{
case ‘A’ :
printf (“choice A \n”) ;
case ‘B’ :
printf (“choice B “) ;
case ‘C’ :
case ‘D’ :
case ‘E’ :
default:
printf (“No Choice”) ;
}

  • No choice
  • Choice A
  • Choice A Choice B No choice
  • Program gives no output as it is erroneous

Which of the following is the correct syntax to print the message in C++ language?

  • Out <<“Hello world!
  • Cout << Hello world! ;
  • cout <<“Hello world!”;
  • None of the above

String variable str1 has the value of “abc”, and string variable str2 has the value “xyz”. What are the values of str1 and str2 after this statement is executed?

strcpy(str1, str2);

  • str1: “xyz” ; str2: “xyz”
  • str1: “abc” ; str2: “xyz”
  • str1: “xyz” ; str2: “abc”
  • str1: “abc” ; str2: “abc”

The main loop structures in C programming are the for loop, the while loop, and which other loop?

  • do…while
  • for…in
  • repeat…until
  • do…until

Coursera $100 Sept 2023 Coursera $1 Sept 2023
Valid till: 21 Sept

All Linkedin Skill Assessment Answers


List of Technical Skill Assessment


List of Business Skill Assessment


List of Design Skill Assessment


Leave a Reply