我在写一个使用链表的程序(如恶梦)。C编程:链接列表
无论如何,该程序的目的是输入8个字符,并让程序将字符打印回给您,并使用链接列表以相反的顺序打印字符。
我到目前为止得到了这个结果。这有很多错误(我认为)。
的问题是
当要求从它应该在的字符数读取用户的字符,而不必问了多少个字符
而且,当它编译它打印自动乱码到屏幕上,例如我只是跑它和它印刷
¿r (àõ($ê¿¿ a¿r (àõ($ê¿¿ ¿r (àõ($ê¿¿ b¿r (àõ($ê¿¿
这里需要大量的帮助。这将是非常感谢!
当然代码
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define strsize 30
typedef struct member
{
int number;
char fname[strsize];
struct member *next;
}
RECORD;
RECORD* insert (RECORD *it);
RECORD* print(RECORD *it, int j);
int main (void)
{
int i, result;
RECORD *head, *p;
head=NULL;
printf("Enter the number of characters: ");
scanf("%d", &result);
for (i=1; i<=result; i++)
head=insert (head);
print (head, result);
return 0;
}
RECORD* insert (RECORD *it)
{
RECORD *cur, *q;
int num;
char junk;
char first[strsize];
printf("Enter a character:");
scanf("%c", &first);
cur=(RECORD *) malloc(sizeof(RECORD));
strcpy(cur->fname, first);
cur->next=NULL;
if (it==NULL)
it=cur;
else
{
q=it;
while (q->next!=NULL)
q=q->next;
q->next=cur;
}
return (it);
}
RECORD* print(RECORD *it, int j)
{
RECORD *cur;
cur=it;
int i;
for(i=1;i<=j;i++)
{
printf("%s \n", cur->fname);
cur=cur->next;
}
return;
}
请使用代码按钮({})让您的源代码可读。包含后显然还有一些东西丢失了。 – user658991 2011-06-17 03:51:48
闻起来像功课给我。 – 2011-06-17 03:54:13
这是作业!我只是在寻找一些帮助 – Jennifer 2011-06-17 03:54:41