| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 464 人关注过本帖
标题:[求助]棘手啊
只看楼主 加入收藏
ld861022
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2006-6-26
收藏
 问题点数:0 回复次数:2 
[求助]棘手啊

为什么不运行呢 调试也不行
#include"stdio.h"
#include"string.h"
#define NULL 0
struct student
{
long num,tel;
char name[2][2],sex[1],address[5][2];
struct student *next;
};
int main(int argc, char* argv[])
{
char name1[2][2]={'张','三'},name2[2][2]={'李','四'},name3[2][2]={'王','五'};
char address1[5][2]={'A','_','1','0','1'},address2[5][2]={'b','_','1','0','1'},address3[5][2]={'a','_','1','0','2'};
char sex1[1]={'男'},sex2[1]={'女'},sex3[1]={'男'};
struct student a,b,c,*head,*p;

a.num=10101;
a.name[2][2]=name1[2][2];
a.sex[1]=sex1[1];
a.tel=11111111;
a.address[5][2]=address1[5][2];
b.num=10103;
b.name[2][2]=name2[2][2];
b.sex[1]=sex2[1];
b.tel=22222222;
b.address[5][2]=address2[5][2];
c.num=10105;
c.name[2][2]=name3[2][2];
c.sex[1]=sex3[1];
c.address[5][2]=address3[5][2];
c.tel=33333333;
head=&a;
a.next=&b;
b.next=&c;
c.next=NULL;
p=head;
do
{
printf("%ld %c %c %c %ld\n",p->num,p->name,p->sex,p->address,p->tel);
p=p->next;
}while(p!=NULL);

return 0;
}

搜索更多相关主题的帖子: include 
2006-06-28 09:53
–★–
Rank: 3Rank: 3
等 级:新手上路
威 望:6
帖 子:1512
专家分:0
注 册:2006-5-1
收藏
得分:0 
代你找到一个大错:
'张'是错的,因为1个汉字编码占2个byte
所以这样一来,肯定玩不起来。
其他汉字也是如此啦。

落霞与孤鹜齐飞,秋水共长天一色! 心有多大,路有多宽。三教九流,鸡鸣狗盗。兼收并蓄,海纳百川。
2006-06-28 10:36
威子
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2006-6-28
收藏
得分:0 
我想不通你为什么要定义char name[2][2],,其实这种变量的申明一般就用一维数组就行了,这样操作也简单~!还有就是上楼说的数组越界的问题~!你把简单的问题复杂化了!~
2006-06-28 16:55
快速回复:[求助]棘手啊
数据加载中...
 
   



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

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