user-0 提问: 大一小白

回复:
user: user-0
content: 引用 2 楼 chxchxkkk的回复:你的std结构体是怎么声明的？包含了哪些？ sort[30], std[i].book[20], std[i].writer[20], std[i].press[30], 这几个是数组吗？ 如果类似于  char name[20]这样的，那么 printf时直接 std[i].name就行了，不需要后面的[20] struct paper { int opus; char sort[30]; char book[20]; char writer[20]; char press[30]; int number; float price; }; std[15]; 结构体是这个样子的

user: user-0
content: 就是要做一个简易的图书管理系统，然后这个是要输出所有信息。

user: user-0
content: struct paper { 	int opus; 	char sort[30]; 	char book[20]; 	char writer[20]; 	char press[30]; 	int number; 	float price; }; std[15]; 结构体是这个样子的。

user: user-1
content: 你的std结构体是怎么声明的？包含了哪些？ sort[30], std[i].book[20], std[i].writer[20], std[i].press[30], 这几个是数组吗？ 如果类似于  char name[20]这样的，那么 printf时直接 std[i].name就行了，不需要后面的[20]

user: user-2
content: 源码是什么呢？  贴一下可好？

user: user-0
content: 引用 9 楼 ?Victor.??的回复:[quote=引用 8 楼 qq_48935908 的回复:] [quote=引用 1 楼 ?Victor.??的回复:]源码是什么呢？  贴一下可好？   nt xsqb() { 	int i; 		printf("\n编号	分类		书名		作者		出版社		数量	单价"); 	for (i = 0; i < Diaoyon; i++); 		printf("%d	%s	%s	%s	%s	%d	%0.2f", std[i].opus, std[i].sort[30], std[i].book[20], std[i].writer[20], std[i].press[30], std[i].number, std[i].price); } 这个函数完整是这个样子的。[/quote]  struct paper { 	int opus; 	char sort[30]; 	char book[20]; 	char writer[20]; 	char press[30]; 	int number; 	float price; } std[15];     //std[15]前面的分号去掉  int main() { 	int i, Diaoyon; 	printf("\n编号 分类 书名 作者 出版社 数量 单价"); 	for (i = 0; i < Diaoyon; i++)       //这个分号去掉 		printf("%d %s %s %s %s %d %0.2f", std[i].opus, std[i].sort[30], std[i].book[20], std[i].writer[20], std[i].press[30], std[i].number, std[i].price); }[/quote] 解决了，十分感谢，我for和if后面都加了分号,加的入魔了。十分感谢

user: user-2
content: 引用 8 楼 qq_48935908 的回复:[quote=引用 1 楼 ?Victor.??的回复:]源码是什么呢？  贴一下可好？   nt xsqb() { 	int i; 		printf("\n编号	分类		书名		作者		出版社		数量	单价"); 	for (i = 0; i < Diaoyon; i++); 		printf("%d	%s	%s	%s	%s	%d	%0.2f", std[i].opus, std[i].sort[30], std[i].book[20], std[i].writer[20], std[i].press[30], std[i].number, std[i].price); } 这个函数完整是这个样子的。[/quote]  struct paper { 	int opus; 	char sort[30]; 	char book[20]; 	char writer[20]; 	char press[30]; 	int number; 	float price; } std[15];     //std[15]前面的分号去掉  int main() { 	int i, Diaoyon; 	printf("\n编号 分类 书名 作者 出版社 数量 单价"); 	for (i = 0; i < Diaoyon; i++)       //这个分号去掉 		printf("%d %s %s %s %s %d %0.2f", std[i].opus, std[i].sort[30], std[i].book[20], std[i].writer[20], std[i].press[30], std[i].number, std[i].price); }

user: user-0
content: 引用 1 楼 ?Victor.??的回复:源码是什么呢？  贴一下可好？   nt xsqb() { 	int i; 		printf("\n编号	分类		书名		作者		出版社		数量	单价"); 	for (i = 0; i < Diaoyon; i++); 		printf("%d	%s	%s	%s	%s	%d	%0.2f", std[i].opus, std[i].sort[30], std[i].book[20], std[i].writer[20], std[i].press[30], std[i].number, std[i].price); } 这个函数完整是这个样子的。

user: user-0
content: 引用 6 楼 chxchxkkk的回复:printf("%d	%s	%s	%s	%s	%d %0.2f",std[i].opus, std[i].sort[30], std[i].book[20], std[i].writer[20], std[i].press[30], std[i].number, std[i].price); 修改成： printf("%d	%s	%s	%s	%s	%d %0.2f",std[i].opus, std[i].sort, std[i].book, std[i].writer, std[i].press, std[i].number, std[i].price); 还是一样的，显示表达式必须包含结构或联合类型。而且这只是一句代表性的所有语句，我只要加了std，还都是这个样子。

user: user-1
content: printf("%d	%s	%s	%s	%s	%d %0.2f",std[i].opus, std[i].sort[30], std[i].book[20], std[i].writer[20], std[i].press[30], std[i].number, std[i].price); 修改成： printf("%d	%s	%s	%s	%s	%d %0.2f",std[i].opus, std[i].sort, std[i].book, std[i].writer, std[i].press, std[i].number, std[i].price);