如图所示,我应该怎样正确输出打印结构体指针对应的字符串数据呢??
用结构体指针同样可以 printf("%d\t%s\n",Stu[i].number,Stu[i].name);输出
或者是 printf("%d\t%s\n",(Stu+i)->number,(Stu+i)->name);
你题目的解答代码如下:(如有帮助,望采纳!谢谢! 点击我这个回答右上方的【采纳】按钮)
#include <stdio.h>
#include <stdlib.h>
typedef struct Node{
int number;
char name[256];
struct Node *link;
} Nodelist;
int main()
{
Nodelist stu[3] = {
{1,"aaa"},
{2,"bbb"},
{3,"ccc"}
};
Nodelist *Stu = stu;
for (int i = 0; i < 3; i++)
{
printf("%d\t%s\n",(Stu+i)->number,(Stu+i)->name);
}
return 0;
}
stu[i].name这样不是更方便吗
而且在里面你定义的样子是链表的格式,可为什么又用到了数组,emm,