Problem to understand the O/p of the CODE

Newbie Member
20Nov2010,15:56   #1
Mohit_Malhotra's Avatar
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();
}
Go4Expert Member
20Nov2010,19:00   #2
ihatec's Avatar
I am not surprised, you don't understand your output. To get proper output first you should initialize your variables with some values.
Newbie Member
21Nov2010,14:31   #3
animadhu's Avatar
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
Pro contributor
21Nov2010,19:46   #4
virxen's Avatar
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