| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 345 人关注过本帖
标题:这段c代码编译连接都成功,可是运行时没反应啊
只看楼主 加入收藏
jumpyoung
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2013-11-24
结帖率:50%
收藏
已结贴  问题点数:20 回复次数:2 
这段c代码编译连接都成功,可是运行时没反应啊
用C语言编程实现单链表的基本操作。有必要的类型说明,并完成下述函数功能:
(1)    CreateList( ):逆序建立一个(带有头结点的)单链表,在键盘上按顺序输入26个大写英文字母A……Z,最后输入的字母Z,放在头结点之后;第一个输入的字母A放在单链表的末尾。
(2)    EncryptList( ):将存放于单链表中的所有字母均前移3个位置,即经过前移后变化为:
 
(3)    ListPrint( ):显示单链表所有元素,此函数调用2次,分别在EncryptList ( )函数调用之前、之后使用。
在主函数main( )中调用各个子函数完成单链表的基本操作。
程序代码:
#include "stdio.h"
#include "stdlib.h"
typedef struct LNode 
{
      char data; 
      struct LNode *next;  
}LNode, *LinkList;  
void CreateList(LinkList & L, int n)

 {
   
    int i;
    L=(LinkList)malloc(sizeof(LNode));
    L->next=NULL;

    for(i=n;i>0;--i) 
{ 
    LinkList p;
    p=(LinkList)malloc(sizeof(LNode));
    scanf("%c",&(p->data));   
    p->next=L->next;
    L->next=p;  

}
    
} 
int ListPrint(LinkList L)
{
    LinkList q;
    q=L-> next;
    if(!q)
    {
        printf("error!\n");
        return 0;
    }
    while(q)
    {
    printf("%c\t",q->data);
    q=q->next;
    }
}
int EncryptList(LinkList L)

 { 
    LinkList q;
    q=L-> next;
    if(!q)
    {
        printf("error!\n");
        return 0;
    }
    while(q)
    {
    q->data=(q->data-65+26-3)%26+65;
    q=q->next;
    }
    return 0;
}
int main()
{
    int a=26;
    LinkList b;
    CreateList(b,a);
    ListPrint(b);
    EncryptList(b);
    ListPrint(b);
return 0;
}

































搜索更多相关主题的帖子: 英文字母 C语言 键盘 元素 
2013-11-24 21:40
qunxingw
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:贵宾
威 望:24
帖 子:1676
专家分:7295
注 册:2011-6-30
收藏
得分:20 
调了下
程序代码:
#include "stdio.h"
#include "stdlib.h"
typedef struct LNode
{
      char data;
      struct LNode *next; 
}LNode, *LinkList; 
void CreateList(LinkList & L, int n)
{
  
    int i;
    L=(LinkList)malloc(sizeof(LNode));
    L->next=NULL;

    for(i=n;i>0;--i)
{
    LinkList p;
    p=(LinkList)malloc(sizeof(LNode));
    scanf("%c",&(p->data));  
    p->next=L->next;
    L->next=p;  

}
   
}
int ListPrint(LinkList L)
{
    LinkList q;
    q=L-> next;
    if(!q)
    {
        printf("error!\n");
        return 0;
    }
    while(q)
    {
    printf("%c\t",q->data);
    q=q->next;
    }
return 1;//
}
int EncryptList(LinkList L)
{
    LinkList q;
    q=L-> next;
    if(!q)
    {
        printf("error!\n");
        return 0;
    }
    while(q)
    {
    q->data=(q->data-65+26-3)%26+65;
    q=q->next;
    }
    return 0;
}
int main()
{
    int a=26;
    LinkList b;
    CreateList(b,a);
     printf("ListPrint(a)\n");
    ListPrint(b);
     printf("\n");
    EncryptList(b);
     printf("ListPrint(b)\n");
    ListPrint(b);
return 0;
}

www.qunxingw.wang
2013-11-24 22:00
jumpyoung
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2013-11-24
收藏
得分:0 
回复 2楼 qunxingw
程序代码:
#include "stdio.h"
#include "stdlib.h"
typedef struct LNode 
{
      char data; 
      struct LNode *next;  
}LNode, *LinkList;  
void CreateList(LinkList & L, int n)

 {
   
    int i;
    L=(LinkList)malloc(sizeof(LNode));
    L->next=NULL;

    for(i=n;i>0;--i) 
{ 
    LinkList p;
    p=(LinkList)malloc(sizeof(LNode));
printf("input a char: ");
    scanf("%c",&(p->data));   
    p->next=L->next;
    L->next=p;  
getchar();//    加上这一句就行了。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
}
    
} 
int ListPrint(LinkList L)
{
    LinkList q;
    q=L-> next;
    if(!q)
    {
        printf("error!\n");
        return 0;
    }
    while(q)
    {
    printf("%c\t",q->data);
    q=q->next;
    }
return 0;
}
int EncryptList(LinkList L)

 { 
    LinkList q;
    q=L-> next;
    if(!q)
    {
        printf("error!\n");
        return 0;
    }
    while(q)
    {
    q->data=(q->data-65+26-3)%26+65;
    q=q->next;
    }
    return 0;
}
int main()
{
    int a=3;
    LinkList b;
    CreateList(b,a);
    ListPrint(b);
    EncryptList(b);
    ListPrint(b);
return 0;
}



我在CSDN问了一个大神,他说加上getchar();就行了,用来吃掉回车符,为什么要吃掉?
2013-11-24 22:25
快速回复:这段c代码编译连接都成功,可是运行时没反应啊
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.040156 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved