Program to reverse a Number C Program

Program to reverse a Number C Program
Please friends to contribute questions of company interviews you attended mail us cinterviews.blogspot.com@gmail.com it will be useful for our job search community.www.cinterviews.com appreciates your contribution

In order to reverse a number you should first input the number and then extract the digits of number one by one. In order to extract digit you can use % operator which results in remainder of division operation. 13%10 is 3. Thus by doing mod 10 you can get rightmost digit of number. After extracting digit you can remove the same from number by storing result of /10 in integer variable. Eg 13/10 is 1.3 but on storing it in integer variable only 1 is stored.

In order to reverse a number using while loop in c language you must run the loop till the number is not 0 that is all the digits haven't been extracted. Assuming that you want reverse of number in variable called y (initial value of y should be zero), you should write y=y*10+extracted digit in while loop.

Consider test input of a=123,y=0

iteration 1
y=0*10+3=3, a=12
iteration 2
y=3*10+2=32, a=1
iteration 3
y=32*10+1=321 a=0

thus we get reverse of number in y.
Below is the code of the Program
 int main()
{
int a;
printf("Enter a number :");
scanf("%d",&a);
int y=0;
while(a)
{
y=y*10+a%10;
a=a/10;
}
printf("\nreverse= %d",y);
getch();
return 0;
}


Please friends to contribute questions of company interviews you attended mail us cinterviews.blogspot.com@gmail.com it will be useful for our job search community.www.cinterviews.com appreciates your contribution

No comments: