代码如下,为何输出的总是第一个链表中的元素?
#include
#include
//#define NULL 0
typedef struct node
{
char ch;
struct node *next;
}STRNODE;
void str_input(STRNODE *s) //串的输入函数/
{
char ch;
STRNODE *p,*q;
p=s;
q=s->next;
s->ch=0;
while((ch=getchar())!='\n') //通过循环,从键盘输入一串字符串
{
q=(STRNODE *)malloc(sizeof(STRNODE));
q->ch=ch;
q->next=NULL;
p->next=q;
p=q;
s->ch++;
}
}
STRNODE *str_con(STRNODE *s1,STRNODE *s2)
//将字符串S2连接到S1串的后面,两个串合并成一个串,放到S1串中/
{
STRNODE *p;
p=s1;
while(p->next!=NULL)
{
p=p->next;
}
p->next=s2;
return s1;
}
void str_print(STRNODE *s)
{//字符串输出显示
int i;
STRNODE *p;
p=s->next;
for(i=0;ich;i++)
{
putchar(p->ch);
p=p->next;
}
printf("\n");
}
int main()
{
STRNODE str1,str2;
printf("请输入第一串字符:");
fflush(stdin);
str_input(&str1);
printf("请输入第二串字符串:");
fflush(stdin);
str_input(&str2);
str_con(&str1,&str2);
printf("两串字符连接后的结果为:");
str_print(&str1);
}
求助 ,关于两个链表连接的问题
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
1条回答 默认 最新
- 小灸舞 2016-11-01 08:55关注
两个问题:
1.str_con函数内p->next = s2;应该是p->next = s2->next;
2.str_con函数内少了一句s1->ch += s2->ch;#include<stdio.h> #include<stdlib.h> //#define NULL 0 typedef struct node { char ch; struct node *next; }STRNODE; void str_input(STRNODE *s) //串的输入函数/ { char ch; STRNODE *p, *q; p = s; q = s->next; s->ch = 0; while ((ch = getchar()) != '\n') //通过循环,从键盘输入一串字符串 { q = (STRNODE *)malloc(sizeof(STRNODE)); q->ch = ch; q->next = NULL; p->next = q; p = q; s->ch++; } } STRNODE *str_con(STRNODE *s1, STRNODE *s2) //将字符串S2连接到S1串的后面,两个串合并成一个串,放到S1串中/ { STRNODE *p; p = s1; while (p->next != NULL) { p = p->next; } p->next = s2->next; s1->ch += s2->ch; return s1; } void str_print(STRNODE *s) {//字符串输出显示 int i; STRNODE *p; p = s->next; for (i = 0; i<s->ch; i++) { putchar(p->ch); p = p->next; } printf("\n"); } int main() { STRNODE str1, str2; printf("请输入第一串字符:"); fflush(stdin); str_input(&str1); printf("请输入第二串字符串:"); fflush(stdin); str_input(&str2); str_con(&str1, &str2); printf("两串字符连接后的结果为:"); str_print(&str1); }
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥20 access多表提取相同字段数据并合并
- ¥20 基于MSP430f5529的MPU6050驱动,求出欧拉角
- ¥20 Java-Oj-桌布的计算
- ¥15 powerbuilder中的datawindow数据整合到新的DataWindow
- ¥20 有人知道这种图怎么画吗?
- ¥15 pyqt6如何引用qrc文件加载里面的的资源
- ¥15 安卓JNI项目使用lua上的问题
- ¥20 RL+GNN解决人员排班问题时梯度消失
- ¥60 要数控稳压电源测试数据
- ¥15 能帮我写下这个编程吗