#include<stdio.h>
main()
{
char s[]={'a','b','c','\n','c','\0'};
char *p,*str,*str1;
p=&s[3];
str=p;
str1=s;
printf("%d",++*p + ++*str1-32);
}
Answer:
M
Explanation:
p is pointing to
character '\n'.str1 is pointing to character 'a' ++*p meAnswer:"p is
pointing to '\n' and that is incremented by one." the ASCII value of '\n'
is 10. then it is incremented to 11. the value of ++*p is 11. ++*str1
meAnswer:"str1 is pointing to 'a' that is incremented by 1 and it becomes
'b'. ASCII value of 'b' is 98. both 11 and 98 is added and result is subtracted
from 32.
i.e.
(11+98-32)=77("M");
Blog Author: Vijay Kumar
Go to: Java Aptitude
Kindly changed the format specifier. May i know from where do you collect these questions Mr.Vijay Kumar
ReplyDelete