Give the output on the screen of the following program (indicate a space using this symbol _):
#include<stdio.h>
double mystery(int A[], int i)
{
i = A[i] * 2;
A[0] = 0;
return i+1;
}
int main()
{
int i = 8, j = 5, k, A[] = {7,-2,0,1};
double x = 0.005, y = -0.01;
char c = 'c', d = 'd'; //ASCII value of 'd' is 100
printf("#1# %d ##\n", (3*i-2*j) % (2*d-c));
printf("#2# %d ##\n", 2*((i/5)+(4*(j-3))%(i+j-2)));
k = 8;
printf("#3# %d ##\n", ++k);
k = 8;
printf("#4# %d ##\n", k++);
printf("#5# %9.4lf ##\n", ++x);
printf("#6# %d ##\n", c>d);
x = 0.005;
printf("#7# %+9.2lf ##\n", 2*x+(y==0));
printf("#8# %-9.2lf ##\n", 2 * x + y == 0);
printf("#9# %d ##\n", (x>y) && (i>0) || (j<5));
printf("#10# %d ##\n", i%=j);
k = 1;
for (i = 0; i < 5; i++)
{
for (j = 0; j < i; j++)
{
if (i*j % 2) continue;
switch (i*j) {
case 0:
case 2:
case 4: k++;
case 6: break;
case 8: k--;
case 12:
default: k++;
}
}
printf("#%d# %d ##\n", 11 + i , k);
}
printf("#16# %0.0lf ##\n", mystery(A, 0));
printf("#17# %d ##\n", A[0]);
printf("#18# %d ##\n", A[2%4]);
printf("#19# %d ##\n", A[1]%3);
printf("#20# %d ##\n", -A[1]%3);
return 0;
}
Difficulty level
This exercise is mostly suitable for students
#1# 14 ##
#2# 18 ##
#3# 9 ##
#4# 8 ##
#5# _ _ _1.0050 ##
#6# 0 ##
#7# _ _ _ _ +0.01 ##
#8# 0.01_ _ _ _ _ ##
#9# 1 ##
#10# 3 ##
#11# 1 ##
#12# 2 ##
#13# 4 ##
#14# 5 ##
#15# 8 ##
#16# 15 ##
#17# 0 ##
#18# 0 ##
#19# -2 ##
#20# 2 ##
Back to the list of exercises
Looking for a more challenging exercise, try this one !!
Printing a Binary tree