Given only putchar (no sprintf, itoa, etc.) write a routine
putlong that prints out an unsigned long in decimal.

Answers were Sorted based on User's Feedback



Given only putchar (no sprintf, itoa, etc.) write a routine putlong that prints out an unsigned lon..

Answer / raghuram.a

#include <stdio.h>
#include<conio.h>
void putlong(unsigned long x)
{
if (x>=10)
{
putlong(x/10);
}
putchar(x%10+48);
}
main()
{
unsigned long a;
clrscr();
printf("enter long integer:");
scanf("%ld",&a);
putlong(a);
getch();
return 0;

}

Is This Answer Correct ?    12 Yes 0 No

Given only putchar (no sprintf, itoa, etc.) write a routine putlong that prints out an unsigned lon..

Answer / prateek caire

void print(unsigned n)
{
static c = 0;
if( n < 10)
{
putchar(n + 48);
return;
}
int m = n%10;
print(n/10);
if(++c%3 == 0) putchar(',');
putchar(48 + m);
}

Is This Answer Correct ?    7 Yes 2 No

Given only putchar (no sprintf, itoa, etc.) write a routine putlong that prints out an unsigned lon..

Answer / suraj gupta

#include<stdio.h>
#include<string.h>
void printInt(unsigned long x){
int div=1;
if (x > 10){
div=x/10;
printInt(div);
}
//putchar(x % 10+'0');Both will work fine
putchar(x % 10+48);
}
int main(){
long int a;
printf(" Enter integer value : ");
scanf("%d",&a);
printf("\n");
printInt(a);
return 0;
}

Is This Answer Correct ?    1 Yes 1 No

Given only putchar (no sprintf, itoa, etc.) write a routine putlong that prints out an unsigned lon..

Answer / sanjay

#include<stdio.h>
#include<conio.h>

int main()
{
unsigned long abc=234455787; int div1;
div1=print_int(abc);
getch();
}


int print_int(long val)
{ int div=1; char c;
if (val>=10)
{
div=print_int(val/10);
}
putchar(val%10+48);
return (1);
}

Is This Answer Correct ?    0 Yes 0 No

Given only putchar (no sprintf, itoa, etc.) write a routine putlong that prints out an unsigned lon..

Answer / meibella

void putLong(unsigned int x, unsigned int *a, int *j)
{
unsigned int temp = x/10;
unsigned int remainder = x%10;
a[(*j)++] = remainder;
if (temp < 1)
return ;
else
putLong(temp,a,j);


}
int main()
{
unsigned int * a = new unsigned int[12] ;
int j =0;
putLong(1735648,a,&j);
for (int i = j-1; i>=0; i--)
{
putchar(a[i]+48);
}
return 0;
}

Is This Answer Correct ?    0 Yes 2 No

Given only putchar (no sprintf, itoa, etc.) write a routine putlong that prints out an unsigned lon..

Answer / rakesh

void main()
{
unsigned long n;
int i;
void putlong(unsigned long);
cout<<"\nEnter the number::";
cin>>n;
putlong(n);
}

void putlong(unsigned long n)
{
if(n==0)
return;
print(n/10);
putchar((n%10) + 48);

}

Is This Answer Correct ?    2 Yes 10 No

Post New Answer

More C Code Interview Questions

void main() { char far *farther,*farthest; printf("%d..%d",sizeof(farther),sizeof(farthest)); }

2 Answers  


What is data _null_? ,Explain with code when u need to use it in data step programming ?

0 Answers   Abbott,


void main() { while(1){ if(printf("%d",printf("%d"))) break; else continue; } }

1 Answers  


Given n nodes. Find the number of different structural binary trees that can be formed using the nodes.

16 Answers   Aricent, Cisco, Directi, Qualcomm,


void ( * abc( int, void ( *def) () ) ) ();

1 Answers  






Write a procedure to implement highlight as a blinking operation

2 Answers  


Write a Program in 'C' To Insert a Unique Number Only. (Hint: Just Like a Primary Key Numbers In Database.) Please Some One Suggest Me a Better Solution for This question ??

0 Answers   Home,


Write a program to model an exploding firecracker in the xy plane using a particle system

0 Answers   HCL,


main() { void swap(); int x=10,y=8; swap(&x,&y); printf("x=%d y=%d",x,y); } void swap(int *a, int *b) { *a ^= *b, *b ^= *a, *a ^= *b; }

2 Answers  


Is it possible to print a name without using commas, double quotes,semi-colons?

7 Answers  


#include<stdio.h> main() { int a[2][2][2] = { {10,2,3,4}, {5,6,7,8} }; int *p,*q; p=&a[2][2][2]; *q=***a; printf("%d----%d",*p,*q); }

1 Answers  


struct point { int x; int y; }; struct point origin,*pp; main() { pp=&origin; printf("origin is(%d%d)\n",(*pp).x,(*pp).y); printf("origin is (%d%d)\n",pp->x,pp->y); }

1 Answers  


Categories