
求助c语言编程题
读入一行字符(如:a,……x,y,z),按输入时的异序建立一个如图1所示的链接式的结点序列,即先输入的位于链表尾(如图1所示),然后在按照输入的相反顺序输出,并释放全部结...
读入一行字符(如:a,……x,y,z),按输入时的异序建立一个如图1所示的链接式的结点序列,即先输入的位于链表尾(如图1所示),然后在按照输入的相反顺序输出,并释放全部结点
展开
展开全部
数据结构的题
#include<stdio.h>
#include<malloc.h>
typedef struct LNODE
{
char c;
struct LNODE *next;
}Lnode;
int create_node ( Lnode * head );
void show_node ( Lnode * head );
int main ( void )
{
Lnode *head = ( Lnode * ) malloc( sizeof( Lnode ) );
if ( !head )
{
head->next = NULL;
if ( !create_node ( head ) ) show_node ( head );
}
return 0;
}
int create_node ( Lnode * head )
{
Lnode *temp;
int i = 0;
printf( "请输入你要输入的字符个数:" );
scanf ( " %d ", &i );
for ( int j = 0; j < i; j++ )
{
temp = (Lnode * ) malloc ( sizeof( Lnode ) );
if ( !temp ) return -1;
temp -> next = NULL ;
printf(“请输入你要输入的第%d个字符:", j+1, );
scanf ( " %c ", &temp->c );
temp->next = head->next;
head->next = temp;
}
return 0;
}
void show_node ( Lnode * head )
{
Lnode *temp = head->next;
int i = 0;
while( temp )
{
printf( "存储的第%d个字符是%c\n", i+1, temp->c );
++i;
temp = temp->next;
}
}
#include<stdio.h>
#include<malloc.h>
typedef struct LNODE
{
char c;
struct LNODE *next;
}Lnode;
int create_node ( Lnode * head );
void show_node ( Lnode * head );
int main ( void )
{
Lnode *head = ( Lnode * ) malloc( sizeof( Lnode ) );
if ( !head )
{
head->next = NULL;
if ( !create_node ( head ) ) show_node ( head );
}
return 0;
}
int create_node ( Lnode * head )
{
Lnode *temp;
int i = 0;
printf( "请输入你要输入的字符个数:" );
scanf ( " %d ", &i );
for ( int j = 0; j < i; j++ )
{
temp = (Lnode * ) malloc ( sizeof( Lnode ) );
if ( !temp ) return -1;
temp -> next = NULL ;
printf(“请输入你要输入的第%d个字符:", j+1, );
scanf ( " %c ", &temp->c );
temp->next = head->next;
head->next = temp;
}
return 0;
}
void show_node ( Lnode * head )
{
Lnode *temp = head->next;
int i = 0;
while( temp )
{
printf( "存储的第%d个字符是%c\n", i+1, temp->c );
++i;
temp = temp->next;
}
}
追问
不知道该怎么称呼你?我把你发的程序复制到编译软件里怎么有错误啊??麻烦你能再修改一下吗??麻烦你了??
追答
#include
#include
#include
typedef struct LNODE
{
char c;
struct LNODE *next;
}Lnode;
int create_node ( Lnode * head );
void show_node ( Lnode * head );
int main ( void )
{
Lnode *head = ( Lnode * ) malloc ( sizeof( Lnode ) );
if ( head )
{
head->next = NULL;
if ( !create_node ( head ) ) show_node ( head );
}
return 0;
}
int create_node ( Lnode * head )
{
Lnode *temp;
int i = 0;
printf( "请输入你要输入的字符个数:" );
scanf ( "%d", &i );
for ( int j = 0; j next = NULL ;
printf( "请输入你要输入的第%d个字符:", j+1 );
scanf ( "%c", &temp->c );
temp->next = head->next;
head->next = temp;
}
return 0;
}
void show_node ( Lnode * head )
{
Lnode *temp = head->next;
int i = 0;
while( temp )
{
printf( "存储的第%d个字符是%c\n", i+1, temp->c );
++i;
temp = temp->next;
}
}
运行成功了
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询