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
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 |
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 |
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 |
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 |
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 |
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 |
Sir... please give some important coding questions asked by product companies..
Write a program that reads a dynamic array of 40 integers and displays only even integers
main() { int a[10]; printf("%d",*a+1-*a+3); }
How will you print % character? a. printf(“\%”) b. printf(“\\%”) c. printf(“%%”) d. printf(“\%%”)
main() { float me = 1.1; double you = 1.1; if(me==you) printf("I love U"); else printf("I hate U"); }
how to check whether a linked list is circular.
main() { int i; float *pf; pf = (float *)&i; *pf = 100.00; printf("\n %d", i); } a. Runtime error. b. 100 c. Some Integer not 100 d. None of the above
main() { int i=-1; -i; printf("i = %d, -i = %d \n",i,-i); }
int i,j; for(i=0;i<=10;i++) { j+=5; assert(i<5); }
write a c-program to find gcd using recursive functions
main() { char *str1="abcd"; char str2[]="abcd"; printf("%d %d %d",sizeof(str1),sizeof(str2),sizeof("abcd")); }
char *someFun() { char *temp = “string constant"; return temp; } int main() { puts(someFun()); }