gpt4 book ai didi

c - 不适用于所有的 C 程序

转载 作者:行者123 更新时间:2023-11-30 19:40:12 24 4
gpt4 key购买 nike

问请帮助我这个程序无法正常工作。 不显示值。这个程序是我试图在 c 上运行的单链表的一个示例。 `

#include<stdio.h>
#include<stdlib.h> //malloc defined
struct node
{
int data;
struct node *next;
};
add() //add function
{
int value;
struct node *n;
n=(struct node*)malloc(sizeof(struct node)); //mem allocation
printf("enter the value to add\n");
scanf("%d",&value);
n->data=value;
n->next=NULL;
// n=n->next;
// n->next=NULL;
}
delete() //delete function
{
// n=n->next;
struct node *n; //declaration
printf("the node deleted is %d",n->data);
free(n);
}

display() //display function
{
struct node *n;
while(n!=NULL)
{
printf("%d",n->data);
n=n->next;

}
}
int main()
{
int ch;
while(1)
{
printf("do you want to add node press 1\n");

printf("do you want to delete node press 2\n");

printf("do you want to display node press 3\n");

printf("do you want to exit press 4\n");
scanf("%d",&ch);
switch(ch)
{
case 1:add();
break;

case 2:delete();
break;

case 3:display();
break;

case 4:exit(0);


default: printf("wrong choice!!!\n");

}
}
return 0;
getch();
}
please help me this program is not working properly.

不显示值。这个程序是我尝试在 c 上运行的单链表的示例。

最佳答案

printf("%d",n->data); 未打印,因为:

struct node *n;  // n is not determined.
while(n != NULL) // undefined behaviour

nadd() 函数中的其他 n 不同。您从未将该结构传递给其他函数,因此它不会执行您希望它执行的操作。

关于c - 不适用于所有的 C 程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35620333/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com