C Programming - Variable Number of Arguments

Why should I learn to solve C Programming questions and answers section on "Variable Number of Arguments"?

Learn and practise solving C Programming questions and answers section on "Variable Number of Arguments" to enhance your skills so that you can clear interviews, competitive examinations, and various entrance tests (CAT, GATE, GRE, MAT, bank exams, railway exams, etc.) with full confidence.

Where can I get the C Programming questions and answers section on "Variable Number of Arguments"?

IndiaBIX provides you with numerous C Programming questions and answers based on "Variable Number of Arguments" along with fully solved examples and detailed explanations that will be easy to understand.

Where can I get the C Programming section on "Variable Number of Arguments" MCQ-type interview questions and answers (objective type, multiple choice)?

Here you can find multiple-choice C Programming questions and answers based on "Variable Number of Arguments" for your placement interviews and competitive exams. Objective-type and true-or-false-type questions are given too.

How do I download the C Programming questions and answers section on "Variable Number of Arguments" in PDF format?

You can download the C Programming quiz questions and answers section on "Variable Number of Arguments" as PDF files or eBooks.

How do I solve C Programming quiz problems based on "Variable Number of Arguments"?

You can easily solve C Programming quiz problems based on "Variable Number of Arguments" by practising the given exercises, including shortcuts and tricks.

Exercise : Variable Number of Arguments - Find Output of Program
1.
What will be the output of the program?
#include<stdio.h>
#include<stdarg.h>
void fun(char *msg, ...);

int main()
{
    fun("IndiaBIX", 1, 4, 7, 11, 0);
    return 0;
}
void fun(char *msg, ...)
{
    va_list ptr;
    int num;
    va_start(ptr, msg);
    num = va_arg(ptr, int);
    num = va_arg(ptr, int);
    printf("%d", num);
}
IndiaBIX 1 7 11 0
1
4
7
Answer: Option
Explanation:
No answer description is available. Let's discuss.

2.
What will be the output of the program?
#include<stdio.h>
#include<stdarg.h>
void fun1(char, int, int *, float *, char *);
void fun2(char ch, ...);
void (*p1)(char, int, int *, float *, char *);
void (*p2)(char ch, ...);

int main()
{
    char ch='A'; int i=10;
    float f=3.14; char *p="Hello";
    p1=fun1;
    p2=fun2;
    (*p1)(ch, i, &i, &f, p);
    (*p2)(ch, i, &i, &f, p);
    return 0;
}
void fun1(char ch, int i, int *pi, float *pf, char *p)
{
    printf("%c %d %d %f %s \n", ch, i, *pi, *pf, p);
}
void fun2(char ch, ...)
{
    int i, *pi; float *pf; char *p;
    va_list list;
    printf("%c ", ch);
    va_start(list, ch);
    i = va_arg(list, int);
    printf("%d ", i);
    
    pi = va_arg(list, int*);
    printf("%d ", *pi);
    pf = va_arg(list, float*);
    printf("%f ", *pf);
    p = va_arg(list, char *);
    printf("%s", p);
}
A 10 3.14
A 10 3.14
A 10 10 3.140000 Hello
A 10 10 3.140000 Hello
A 10 Hello
A 10 Hello
Error
Answer: Option
Explanation:
No answer description is available. Let's discuss.

3.
What will be the output of the program?
#include<stdio.h>
#include<stdarg.h>
void dumplist(int, ...);

int main()
{
    dumplist(2, 4, 8);
    dumplist(3, 6, 9, 7);
    return 0;
}
void dumplist(int n, ...)
{
    va_list p; int i;
    va_start(p, n);

    while(n-->0)
    {
        i = va_arg(p, int);
        printf("%d", i);
    }
    va_end(p);
    printf("\n");
}
2 4
3 6
2 4 8
3, 6, 9, 7
4 8
6 9 7
1 1 1
1 1 1 1
Answer: Option
Explanation:
No answer description is available. Let's discuss.

4.
What will be the output of the program?
#include<stdio.h>
#include<stdarg.h>
void display(int num, ...);

int main()
{
    display(4, 'A', 'B', 'C', 'D');
    return 0;
}
void display(int num, ...)
{
    char c, c1; int j;
    va_list ptr, ptr1;
    va_start(ptr, num);
    va_start(ptr1, num);
    for(j=1; j<=num; j++)
    {
        c = va_arg(ptr, int);
        printf("%c", c);
        c1 = va_arg(ptr1, int);
        printf("%d\n", c1);
    }
}
A, A
B, B
C, C
D, D
A, a
B, b
C, c
D, d
A, 65
B, 66
C, 67
D, 68
A, 0
B, 0
C, 0
C, 0
Answer: Option
Explanation:
No answer description is available. Let's discuss.

5.
What will be the output of the program?
#include<stdio.h>
#include<stdarg.h>
void fun1(int num, ...);
void fun2(int num, ...);

int main()
{
    fun1(1, "Apple", "Boys", "Cats", "Dogs");
    fun2(2, 12, 13, 14);
    return 0;
}
void fun1(int num, ...)
{
    char *str;
    va_list ptr;
    va_start(ptr, num);
    str = va_arg(ptr, char *);
    printf("%s ", str);
}
void fun2(int num, ...)
{
    va_list ptr;
    va_start(ptr, num);
    num = va_arg(ptr, int);
    printf("%d", num);
}
Dogs 12
Cats 14
Boys 13
Apple 12
Answer: Option
Explanation:
No answer description is available. Let's discuss.