The Gateway to Computer Science Excellence
+2 votes

int main()
    int a = 10;
    int *b = &a;

What will be the Output of the following code if input given is $25$ ?

in Programming by (273 points)
edited by | 160 views

3 Answers

+1 vote
int main() {
 int a=10;            // value of a =10;
 int *b=&a;          // pointer b stores the address of a i.e. points to a
 scanf("%d",b);     // b gets a value from user(25) and stores it in a since b points to a
 printf("%d",a+50);  // here a = (value which user gave + 50)= 25+50 = 75
 return 0;

$\therefore$ here value of $a$ = (value which user gave + 50) = 25+50 = $75$ will be printed as output.

by Boss (23.7k points)
I'm having a doubt that b contains address of a than how can we update the value of a as=25 rather than not updating any value
Plz help with an approach for my doubt.

scanf reads data from stdin(here it is 25) and stores them according to the parameter format (here it is %d) into the locations pointed by the additional arguments.(i.e stores in location pointed by b)

we generally write scanf as scanf("%d" , &a); and here b = &a;

So we can write scanf("%d",b);

0 votes

Output 75


by (343 points)
0 votes
The output will be 75 if input given is 25
by (303 points)

Related questions

Quick search syntax
tags tag:apple
author user:martin
title title:apple
content content:apple
exclude -tag:apple
force match +apple
views views:100
score score:10
answers answers:2
is accepted isaccepted:true
is closed isclosed:true
50,741 questions
57,253 answers
104,707 users