



|
Skilled contributor
|
![]() |
| 11Feb2010,09:27 | #1 |
|
one day I and my friend were wondering what if C had no "Loops" ? Suppose C language has no "loops"(while, forloop, do while loop). Now, how are you going to implement a loop logic in C without while, for loop and do while loop ?? Explain with example..
![]() ![]() ![]() ![]()
|
|
Go4Expert Founder
|
![]() |
| 13Feb2010,18:00 | #2 |
|
Approved
|
|
Mentor
|
![]() |
| 14Feb2010,15:13 | #3 |
|
Use if and goto. Not tested, cos I rarely use gotos:
Code:
int i=0;
:loop
printf("%d ");
i++;
if (i<10) goto loop;
|
|
Skilled contributor
|
![]() |
| 14Feb2010,18:52 | #4 |
|
dnt use GOTO...goto is not structured...
|
|
Skilled contributor
|
![]() |
| 14Feb2010,18:54 | #5 |
|
shabbir...wud u continue this? I think noone is able to give the ans...
|
|
Go4Expert Founder
|
![]() |
| 14Feb2010,19:26 | #6 |
|
Lets do it buddy
|
|
Mentor
|
![]() |
| 14Feb2010,22:12 | #7 |
|
Answer must be tail recursion then:
Code:
void test2a(int i)
{
if (i<10)
{
printf("%d ",i);
test2a(i+1);
}
}
void test2()
{
test2a(0);
}
|
|
Skilled contributor
|
![]() |
| 14Feb2010,23:11 | #8 |
|
Quote:
Originally Posted by xpi0t0s Tail recursion is the only way to implement loop logic.. this process is used in PLT scheme.Take another example from me:- Code:
# include<stdio.h>
# include<conio.h>
void ForLoop(int,int);
void main()
{
int i,n;
clrscr();
i=0;
n=10;
ForLoop(i,n);
getch();
}
void ForLoop(int i,int n)
{
static int count;
if(i==n)
printf("loop ended with count= %d", count);
else
{
count++;
i++;
ForLoop(i,n);
}
}
|
|
Mentor
|
![]() |
| 15Feb2010,14:13 | #9 |
|
Only if you've got enough stack space. If you haven't then you have to (a) use goto or (b) unroll the loop.
|
|
Go4Expert Founder
|
![]() |
| 15Feb2010,16:50 | #10 |