Problem to understand the O/p of the CODE

Mohit_Malhotra's Avatar, Join Date: Nov 2010
Newbie Member
Hello i have created a simple program but not finding the solution to understand the Output of the code.


Please any one Solve this code and output:----- Help!!!!!!
{
int a,b,c,d;
printf("%d%d%d%d",3,3+2,c,a+b*c-d);
getch();
}
0
ihatec's Avatar, Join Date: Sep 2010
Go4Expert Member
I am not surprised, you don't understand your output. To get proper output first you should initialize your variables with some values.
0
animadhu's Avatar, Join Date: Nov 2010
Newbie Member
Quote:
Originally Posted by Mohit_Malhotra View Post
Hello i have created a simple program but not finding the solution to understand the Output of the code.


Please any one Solve this code and output:----- Help!!!!!!
{
int a,b,c,d;
printf("%d%d%d%d",3,3+2,c,a+b*c-d);
getch();
}
when u dont initialize ur variables how can u expect the appropriate output?
if u want u initialize den try the below statements before ur printf statement:
printf("enter the valuse of a,b,c,d);
scanf("%d,%d,%d,%d",&a,&b,&c.&d);
now u cn get ur desired ans
0
virxen's Avatar, Join Date: Nov 2009
Pro contributor
let me change your code a little bit in order to explain better

Code:
#include <stdio.h>

int main(){
int a=1,b=2,c=3,d=4;
printf("%d%d%d%d",3,3+2,c,a+b*c-d);
getchar();
return 0;
}
in your printf you have a string inside the quotes "%d%d%d%d "
and a series of numbers and variables separated by comma (,)

when printf finds inside the string this--->%d it means replace it with an integer value
the first %d is replaced by the first integer after the string
so we have
%d-->3
%d-->3+2 --->5
%d-->c ---->in my code is 3
%d-->a+b*c-d --> in my code is 1+2*3-4=3

so what it prints now?
3533
shabbir like this