| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 687 人关注过本帖
标题:帮我看看这乱78糟的代码!(新手)
只看楼主 加入收藏
liangjinchao
Rank: 7Rank: 7Rank: 7
等 级:黑侠
帖 子:376
专家分:697
注 册:2010-11-8
结帖率:97.44%
收藏
已结贴  问题点数:20 回复次数:15 
帮我看看这乱78糟的代码!(新手)
程序代码:
#include"stdio.h"
#define NULL 0
main()
{
struct student
{

 char *name;

 int num;

 int tel;

 struct student *next;

 };

 int c;
struct student a,b,*head,*p;

 a.name="qqq",a.num=17,a.tel=61334;

 b.name="sss",b.num=12,b.tel=654312;

 head=&a;a.next=&b;b.next=NULL,p=head;

 printf("please intput student num\n");

 scanf("%d",&c);

 while(p->num!=c&&p->next!=NULL)

 {p=p->next;}

 printf("%c\t\t%d",p->name,p->tel);

 getch();

 }
我想实现的效果是,当我输入17,程序输出:qqq  61334
                          12            sss  654132
我知道我这东西有很多的错误,不规范,恳请大家狠狠地指出来!窝是自学的!         
搜索更多相关主题的帖子: 看看 next 
2011-02-22 22:20
如今菜鸟
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2011-2-17
收藏
得分:0 
哈哈,我运行过,还是不行,不好意思,不过帮你找到点错误,getch();的文件头是
#include"conio.h "
2011-02-22 23:28
洛云
Rank: 5Rank: 5
等 级:职业侠客
帖 子:204
专家分:356
注 册:2010-2-3
收藏
得分:20 
回复 2楼 如今菜鸟
有一些的getch在stdio.h里也有。

[ 本帖最后由 洛云 于 2011-2-22 23:38 编辑 ]

QQ群:C语言初级群:31066229
   JAVA2自学交流群(筹备中):31066388
UC群:C语言学习:10051714
2011-02-22 23:37
ansic
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:恍惚窈冥
等 级:城市猎人
帖 子:1543
专家分:5367
注 册:2011-2-15
收藏
得分:0 
看不懂。。。

善人者,不善人之师;不善人者,善人之资。不贵其师,不爱其资,虽智大迷。
2011-02-22 23:39
洛云
Rank: 5Rank: 5
等 级:职业侠客
帖 子:204
专家分:356
注 册:2010-2-3
收藏
得分:0 
程序代码:
#include"stdio.h"

#ifndef NULL
#define NULL 0
#endif /*end if define NULL*/

int main()
{
        struct student
        {
                char *name;
                int num;
                int tel;
                struct student *next;
        };
        int c;
        struct student a,b,*head,*p;
       
        a.name="qqq",a.num=17,a.tel=61334;
        b.name="sss",b.num=12,b.tel=654312;
        head=&a;a.next=&b;b.next=NULL,p=head;
        printf("please intput student num\n");
        scanf("%d",&c);
       
        while(p->num!=c&&p->next!=NULL)
        {
                p=p->next;
        }
       
        printf("%s\t\t%d",p->name,p->tel);//将%c改为%s
       
        getch();
        return 0;
}
你是希望得到这个结果?

QQ群:C语言初级群:31066229
   JAVA2自学交流群(筹备中):31066388
UC群:C语言学习:10051714
2011-02-22 23:44
洛云
Rank: 5Rank: 5
等 级:职业侠客
帖 子:204
专家分:356
注 册:2010-2-3
收藏
得分:0 
百度一下C语言格式控制符。另外,看了一下我上面增加了空行的代码,也才34行


[ 本帖最后由 洛云 于 2011-2-23 11:14 编辑 ]

QQ群:C语言初级群:31066229
   JAVA2自学交流群(筹备中):31066388
UC群:C语言学习:10051714
2011-02-22 23:46
如今菜鸟
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2011-2-17
收藏
得分:0 
回复 5楼 洛云
哈哈,洛云很强大
2011-02-22 23:56
liangjinchao
Rank: 7Rank: 7Rank: 7
等 级:黑侠
帖 子:376
专家分:697
注 册:2010-11-8
收藏
得分:0 
回复 5楼 洛云
按照您的程序
图片附件: 游客没有浏览图片的权限,请 登录注册
输入12
得到的结果是sss  -1048
但我想得到的结果是sss   654312


因为有了因为,所以有了所以,既然已成既然,何必再说何必
2011-02-23 12:04
洛云
Rank: 5Rank: 5
等 级:职业侠客
帖 子:204
专家分:356
注 册:2010-2-3
收藏
得分:0 
回复 8楼 liangjinchao
编译器不同,int的位不同。你编译出来的int是16位的,所以溢出了。

QQ群:C语言初级群:31066229
   JAVA2自学交流群(筹备中):31066388
UC群:C语言学习:10051714
2011-02-23 12:10
gmxydm2011
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2011-2-23
收藏
得分:0 
struct student
        {
                char *name;
                int num;
                int tel;
                struct student *next;
        };

将char *name 改成 char name[20],再试一下。
2011-02-23 18:20
快速回复:帮我看看这乱78糟的代码!(新手)
数据加载中...
 
   



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

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