标题:C结构体初始化问题
只看楼主
lifeng2007
Rank: 1
等 级:新手上路
帖 子:18
专家分:0
注 册:2007-4-27
 问题点数:0 回复次数:5 
C结构体初始化问题
main()
{
struct stu
{
int num;
char *name;
char *sex;
float score;
}boy[5]={{101,"Li ping","M",45},
{102,"Zhang ping","M",62.5},
{103,"He fang","F",92.5},
{104,"Cheng ling","F",87},
{105,"Wan ming","M",58}};
int i;
for(i=1;i<=5;i++)
printf("%5d%5s%5s%5f\n",boy[i].num,boy[i].name,boy[i].sex,boy[i].score);
getch();
}
结果最后一行的显示怎么是乱码呀?还有显示时怎么让它空格啊就是这里怎么改啊printf("%5d%5s%5s%5f\n"
thank you!
搜索更多相关主题的帖子: 结构体 score char name stu 
2007-07-10 17:01
酒肉弥勒佛
Rank: 3Rank: 3
等 级:新手上路
威 望:8
帖 子:399
专家分:0
注 册:2006-6-6
得分:0 
给字符串赋值的时候,结束后要加上'\0'

编程是为了提高效率,好的程序是因为他的高效;在编程的道路上,永远追逐高效的算法
2007-07-10 18:28
huangfengchu
Rank: 1
等 级:新手上路
威 望:2
帖 子:274
专家分:0
注 册:2007-5-22
得分:0 
只说句,数组是从0号元素开始的。

深山苦学C语言,终年不见外面世界。
2007-07-10 18:55
huangfengchu
Rank: 1
等 级:新手上路
威 望:2
帖 子:274
专家分:0
注 册:2007-5-22
得分:0 
空格就在两格式输出符号之间加个空格,输出时候就有。

深山苦学C语言,终年不见外面世界。
2007-07-10 18:59
pinglideyu
Rank: 3Rank: 3
来 自:武汉工程大学
等 级:论坛游侠
威 望:1
帖 子:735
专家分:140
注 册:2007-1-7
得分:0 
这个符合你的要求:
#include <stdio.h>
#include <conio.h>

int main()
{
struct stu
{
int num;
char *name;
char *sex;
float score;
}boy[5]={{101,"Li ping","M",45},
{102,"Zhang ping","M",62.5},
{103,"He fang","F",92.5},
{104,"Cheng ling","F",87},
{105,"Wan ming","M",58}};
int i;
for(i=0;i<5;i++)
printf("%-5d%-15s%-5s%-5f\n",boy[i].num,boy[i].name,boy[i].sex,boy[i].score);
getch();
return 0;
}

~~我的明天我知道~~
2007-07-10 19:32
cmanlee
Rank: 1
等 级:新手上路
帖 子:17
专家分:0
注 册:2007-6-13
得分:0 
楼上的果然是正确的   

用心做事  真心做人
2007-07-10 23:01



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-154406-1-1.html




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

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