| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 475 人关注过本帖
标题:帮忙看下问题出在哪里?
只看楼主 加入收藏
木木788
Rank: 1
等 级:新手上路
帖 子:17
专家分:0
注 册:2007-4-5
收藏
 问题点数:0 回复次数:6 
帮忙看下问题出在哪里?

include<stdio.h>
#define maxsize 100

struct student
{ char num[10];
char name[10];
char sex[2];
char tel[15];
char addr[50];
};
struct list
{ int len;
struct student stu[maxsize];
};


struct list ListInit(struct list L)
{ L.len=0;
return(L);
}


struct list ListCreate(struct list L)
{ int i=0;
char x1[10],x2[10],x3[2],x4[15],x5[50];
char ch;
do
{ printf("\nNum:"); fflush(stdin);
scanf("%c",&x1); fflush(stdin);
printf("\nName:");
scanf("%c",&x2); fflush(stdin);
printf("\nSex:");
scanf("%c",&x3); fflush(stdin);
printf("\nTel:");
scanf("%c",&x4); fflush(stdin);
printf("\nAddr:");
scanf("%c",&x5); fflush(stdin);
strcpy(L.stu[i].num,x1);
strcpy(L.stu[i].name,x2);
strcpy(L.stu[i].sex,x3);
strcpy(L.stu[i].tel,x4);
strcpy(L.stu[i].addr,x5);
i++;
ch=getchar();
} while(ch!='0');
L.len=i;
return(L);
}


void ListPrint(struct list L)
{ int i;
for(i=0;i<L.len;i++)
{ printf("\nNum:%s\nName:%s\nSex:%s\nTel:%s\nAddr:%s\n",L.stu[i].num,L.stu[i].name,L.stu[i].sex,L.stu[i].tel,L.stu[i].addr);
}
printf("\n");
}


void main()
{ struct list L;
L=ListInit(L);
L=ListCreate(L);
ListPrint(L);
}

输出好像还有点问题哦!
不知道哪里错误!郁闷了

搜索更多相关主题的帖子: include return 
2007-04-05 22:41
木木788
Rank: 1
等 级:新手上路
帖 子:17
专家分:0
注 册:2007-4-5
收藏
得分:0 
就是输出得不到预想的结果
2007-04-05 22:41
nuciewth
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:我爱龙龙
等 级:贵宾
威 望:104
帖 子:9786
专家分:208
注 册:2006-5-23
收藏
得分:0 
char x1[10],x2[10],x3[2],x4[15],x5[50];
char ch;
do
{ printf("\nNum:"); fflush(stdin);
scanf("%c",&x1); fflush(stdin);

下同.

倚天照海花无数,流水高山心自知。
2007-04-05 23:07
木木788
Rank: 1
等 级:新手上路
帖 子:17
专家分:0
注 册:2007-4-5
收藏
得分:0 
输出还是有错误啊,得不 到预期结果
2007-04-06 09:05
木木788
Rank: 1
等 级:新手上路
帖 子:17
专家分:0
注 册:2007-4-5
收藏
得分:0 

改过:

include<stdio.h>
#define maxsize 100

struct student
{ char num[10];
char name[10];
char sex[2];
char tel[15];
char addr[50];
};
struct list
{ int len;
struct student stu[maxsize];
};


struct list ListInit(struct list L)
{ L.len=0;
return(L);
}


struct list ListCreate(struct list L)
{ int i=0;
char x1[10],x2[10],x3[2],x4[15],x5[50];
char ch;
do
{ printf("\nNum:"); fflush(stdin);
scanf("%c",x1); fflush(stdin);
printf("\nName:");
scanf("%c",x2); fflush(stdin);
printf("\nSex:");
scanf("%c",x3); fflush(stdin);
printf("\nTel:");
scanf("%c",x4); fflush(stdin);
printf("\nAddr:");
scanf("%c",x5); fflush(stdin);
strcpy(L.stu[i].num,x1);
strcpy(L.stu[i].name,x2);
strcpy(L.stu[i].sex,x3);
strcpy(L.stu[i].tel,x4);
strcpy(L.stu[i].addr,x5);
i++;
ch=getchar();
} while(ch!='0');
L.len=i;
return(L);
}


void ListPrint(struct list L)
{ int i;
for(i=0;i<L.len;i++)
{ printf("\nNum:%s\nName:%s\nSex:%s\nTel:%s\nAddr:%s\n",L.stu[i].num,L.stu[i].name,L.stu[i].sex,L.stu[i].tel,L.stu[i].addr);
}
printf("\n");
}


void main()
{ struct list L;
L=ListInit(L);
L=ListCreate(L);
ListPrint(L);
}




应该怎么实现输入和输出才是最好的呢?
多个字符串 scanf();的输入应该怎么办呢?
是不是应该分多行写?
那么输出呢?

2007-04-06 09:11
pinglideyu
Rank: 3Rank: 3
来 自:武汉工程大学
等 级:论坛游侠
威 望:1
帖 子:735
专家分:140
注 册:2007-1-7
收藏
得分:0 
LS:
1.这个include<stdio.h>应该改为:#include<stdio.h>

2.还需要加入头文件#include <string.h>

3.对于多个字符串得输入,应该是分行写。
输出嘛,你写得应该可以得。


~~我的明天我知道~~
2007-04-06 10:52
木木788
Rank: 1
等 级:新手上路
帖 子:17
专家分:0
注 册:2007-4-5
收藏
得分:0 
噢!!!知道啦!!谢谢咯
2007-04-06 11:56
快速回复:帮忙看下问题出在哪里?
数据加载中...
 
   



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

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