Solved

recursion to iteration

Posted on 1997-12-03
3
214 Views
Last Modified: 2010-05-18
/*structure definition*/
struct data{  char partno[6];
              float cost;
              int quan;
              };
struct node{  struct data dat;
              struct node * link;
           };

/*pre: hd points to a node(usually the first)
 post: the contents of all the nodes from that initial node pointed to by hd to the end of the listhave been printed*/

void print_list(struct node *hd)

{if(hd!= NULL)
      {printf("%s %f %d\n", hd ->dat.partno,  hd>dat.cost,  hd ->dat.quan);
       print_list(hd ->link);
       }
}
     this is a recursive function for printing the elements on a list.  How can i write a new implementation of the function that does not use recursion but iteration instead.
0
Comment
Question by:ch4
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 2
3 Comments
 
LVL 84

Expert Comment

by:ozo
ID: 1256500
while( hd != NULL ){
        printf("%s %f %d\n", hd ->dat.partno, hd>dat.cost, hd->dat.quan);
        hd = hd ->link;
}
0
 
LVL 10

Accepted Solution

by:
rbr earned 150 total points
ID: 1256501
use
void print_list (struct node *hd)
{
   while (hd != NULL) {
          printf ("%s %f %d\n",hd->dat.partno,hd->dat.cost,hd->dat.quan);
      hd=hd->link
   }
}
0
 
LVL 10

Expert Comment

by:rbr
ID: 1256502
All rbr has done is regurgitate ozo's answer. Give the points
to ozo.
0

Featured Post

What does it mean to be "Always On"?

Is your cloud always on? With an Always On cloud you won't have to worry about downtime for maintenance or software application code updates, ensuring that your bottom line isn't affected.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

An Outlet in Cocoa is a persistent reference to a GUI control; it connects a property (a variable) to a control.  For example, it is common to create an Outlet for the text field GUI control and change the text that appears in this field via that Ou…
Summary: This tutorial covers some basics of pointer, pointer arithmetic and function pointer. What is a pointer: A pointer is a variable which holds an address. This address might be address of another variable/address of devices/address of fu…
The goal of this video is to provide viewers with basic examples to understand and use structures in the C programming language.
The goal of this video is to provide viewers with basic examples to understand how to create, access, and change arrays in the C programming language.

636 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question