Reverse any number using c program




Code 1:
1. Write a c program to reverse a given number
2. C program to find reverse of a number
3. C program to reverse the digits of a number
4. Reverse of a number in c using while loop

#include<stdio.h>
int main(){
    int num,r,reverse=0;

    printf("Enter any number: ");
    scanf("%d",&num);

    while(num){
         r=num%10;
         reverse=reverse*10+r;
         num=num/10;
    }

    printf("Reversed of number: %d",reverse);
    return 0;
}

Sample output:
Enter any number: 12
Reversed of number: 21

Code 2:
1. Reverse very large or big numbers beyond the range of long int
2. Reverse five digit number c program

Logic is we accept the number as string

#include<stdio.h>
#define MAX 1000

int main(){

    char num[MAX];
    int i=0,j,flag=0;

    printf("Enter any positive integer: ");
    scanf("%s",num);

    while(num[i]){
         if(num[i] < 48 || num[i] > 57){
             printf("Invalid integer number");
             return 0;
         }
         i++;
    }

    printf("Reverse: ");
    for(j=i-1;j>=0;j--)
         if(flag==0 &&  num[j] ==48){
         }
         else{
             printf("%c",num[j]);
             flag =1;
         }

    return 0;

Sample output:

Enter any positive integer: 234561000045645679001237800000000000
Reverse: 8732100976546540000165432

Code 3:
1. C program to reverse a number using for loop
2. How to find reverse of a number in c
3. Wap to reverse a number in c

#include<stdio.h>
int main(){
    int num,r,reverse=0;

    printf("Enter any number: ");
    scanf("%d",&num);

    for(;num!=0;num=num/10){
         r=num%10;
         reverse=reverse*10+r;
    }

    printf("Reversed of number: %d",reverse);
    return 0;
}

Sample output:
Enter any number: 123
Reversed of number: 321

Code 4:
1. C program to reverse a number using recursion

#include<stdio.h>
int main(){
    int num,reverse;

    printf("Enter any number: ");
    scanf("%d",&num);

    reverse=rev(num);
    printf("Reverse of number: %d",reverse);
    return 0;
}

int rev(int num){
    static sum,r;

    if(num){
         r=num%10;
         sum=sum*10+r;
         rev(num/10);
    }
    else
         return 0;

    return sum;
}

Sample output:
Enter any number: 456
Reverse of number: 654


44 comments:

  1. its helping me a lost

    ReplyDelete
  2. u can avoid recursion by directly writing this code

    while(num!=0)
    {
    r=num%10;
    sum=sum *10 + r
    num=num/10;
    }

    ReplyDelete
  3. take num=12
    now r=12%10=2
    sum=0*10+2=2
    num=12/10=1
    now num becomes 1
    r=1%10=1
    sum=2*10+1=21
    num=1/10=0 so now 0>0 does not satisfy
    printf("%d",sum)
    so reverse of 12 is 21

    ReplyDelete
  4. @raj this logic only possible for upto 9nums

    ReplyDelete
  5. /*i think i hv a b8r code.....*/

    #include
    main()
    {
    int a,b,c,d,e;
    printf("Enter the Number to Find it's Reverse\n");
    scanf("%d",&a);
    while(a!=0)
    {
    b=a%10;
    c=a/10;
    printf("%d",b);
    a=c;
    }
    }

    ReplyDelete
    Replies
    1. your program is so easy to understand. thanks kapil bhai

      Delete
    2. super kapil urs program was G.R.E.A.T

      Delete
  6. kapil's prog is great and easy

    ReplyDelete
  7. it is good but not perfect

    ReplyDelete
  8. yours s good but
    in some case ther will some need to hav zero in 1st digit
    like 1230 we need to get 0321
    yours cant do that,..???

    ReplyDelete
  9. Hi sangeerth,
    In code 2 instead of
    for(j=i-1;j>=0;j--)
    if(flag==0 && num[j] ==48){
    }
    else{
    printf("%c",num[j]);
    flag =1;
    }

    Write only
    for(j=i-1;j>=0;j--)
    printf("%c",num[j]);

    ReplyDelete
  10. These programs to reverse a number are not workin in the case of numbers which ends with zeor . Please help. for example if we input 320 the reverse shows 23 only not zero at the beginning.

    ReplyDelete
    Replies
    1. Zero at the beginning of a number has no value anyways.

      Delete
  11. @alida: because the reverse of 320 is 023 and the zero at the front of a whole number is ignored because it is not significant.

    ReplyDelete
  12. @alida: because the reverse of 320 is 023 and the zero at the front of a whole number is ignored because it is not significant.

    ReplyDelete
  13. wow wonderful..............dennis ritche is very happy in heaven

    ReplyDelete
  14. /*U can write a 'c' program to search details of a person (simple program)*/





    #include
    #include
    #include
    void main()
    char n;
    int p==2429;
    printf("Enter a name);
    scanf("%s",n);
    printf("Password please");
    if(n==khirod&&p==2429)
    {
    printf("details of khirod");
    }
    if(n==giri&&p==2429)
    {
    printf("details of giri");
    }
    {
    .
    .
    .
    .
    .
    }
    getch();
    }

    ReplyDelete
  15. hay frnz any body tell me which one video tutorial cd(disk) is best . where i will purchase it

    ReplyDelete
  16. write a C program to calculate area and perimeter of circle according to user choice by using switch statement.
    give me the answer as soon as possible
    thank you

    ReplyDelete
  17. : Write a program that prints the following pattern.
    *
    * *
    * * *
    * * * *
    * * * * *
    * * * * * *


    ReplyDelete
    Replies
    1. #include
      int main()
      {
      int row,i,j;
      printf("Enter the row:");
      scanf("%d",&row);
      for(i=1;i<=row;i++){
      for(j=1;j<=i;j++){
      printf("*");
      }
      printf("\n");
      }
      getch();
      return 0;
      }

      Delete
  18. i am needs this programme.i hope you will help me......

    ReplyDelete
  19. Write a program which adds two arrays with the help of their pointers.

    ReplyDelete
  20. Using your method if u will calculate the reverse of 10 or 100 or 1000 and so on ...then it will return 1 and 1 and 1 respectively so on .it can not show 01 , 001 , 0001 as reverse.

    ReplyDelete
  21. thanks but can you logics for using this code i.e:

    r=no%10;
    no=no/10;
    rno=rno*10+r;

    ReplyDelete
  22. if(num[i] < 48 || num[i] > 57)......
    plz explain this condition ......

    ReplyDelete
    Replies
    1. num[i] will return ASCII value of that character. ASCII value of '0' is 48 and '9' is 57.

      Delete
  23. Program to reverse a very large number.

    #include
    #include
    main()
    {
    char str[100];
    int i, j;
    scanf("%s",str);
    for(i = strlen(str)-1; i >= 0; i--)
    printf("%c",str[i]);
    }

    ReplyDelete
  24. This comment has been removed by the author.

    ReplyDelete
  25. devlop an algorithm to find reverse of the given number.

    ReplyDelete
  26. why the 1 code is not reversing the number 12345 to 54321...??????????

    ReplyDelete
  27. it should revrse all the numbers less than 32767 which is int max value..

    ReplyDelete
  28. this program won't work for 000002 as it's reverse shall be 200000 but the answer comes out to be 2.... please someone help me with this....

    ReplyDelete
    Replies
    1. #include
      main()
      {
      int a,b,c,d,e;
      printf("Enter the Number to Find it's Reverse\n");
      scanf("%d",&a);
      while(a!=0)
      {
      b=a%10;
      c=a/10;
      printf("%d",b);
      a=c;
      }
      }


      this prog print 000002 as output while 200000 as input and this was also explained by Kapil

      Delete
  29. why need of flag?? and why to take char ??cant we do it for large numbers..widout char??

    ReplyDelete
  30. *
    ***
    *****
    *******
    *********
    pls giv me the code for thiz...

    ReplyDelete
    Replies
    1. void main()
      {
      int r,c;
      for(r=0;r<5;r++)//for row
      {
      for(c=0;c<=r*2;c++)
      {
      printf("*");
      }
      printf("\n");
      }
      }

      Delete
  31. #include
    #include
    void main()
    {
    int i;
    for(i=10;i>=1;i--)
    {
    printf("%d\n",i);
    }
    getch();
    }

    ReplyDelete
    Replies
    1. put............... #include
      #include

      Delete
  32. Thanks for your ideas. You can also find the details on Affity Solutions, at the C Developers. The main object of the Affity Solutions is to provide quality web services and is among the few software development company in Nagpur.

    ReplyDelete