嗨朋友们,我正在尝试将整个结构复制到另一个结构。当我编译时,我没有得到错误......当我打印时显示一些垃圾值......请指导我......谢谢!
在两个不同的函数中,我试图添加值并打印它。我的第一个函数是“read_list”...在这个函数中,我得到了学生的姓名和从用户那里插入的标记。
我的第二个功能是“print_list”,使用此功能我正在打印学生的详细信息。
请指导我阅读教程,在其中我可以找到一些使用 C 中结构的非常有趣的示例
#include<stdio.h>
typedef struct _student
{
char name[50];
unsigned int mark;
} student;
void print_list(student list[], int size);
void read_list(student list[], int size);
int main(void)
{
const int size = 3;
student list_first[size]; //first structre
student list_second[size]; //second structre of same type
read_list(list_first, size); //list_first structer fills with values
print_list(list_first, size); //to check i have printed it here
//Now as i knew that my first struct is filled with data .....so now i wanted to copy it
list_second[size] = list_first[size]; //cpoid from one struct to another
printf("Second list is copied from another struct: \n");
print_list(list_second, size); //Tried to print it here ....
system("pause");
return 0;
}
void read_list(student list[], int size)
{
unsigned int i;
printf("Please enter the info:\n");
for(i = 0; i<size; i++)
{
printf("\nname: ");
scanf("%s",&list[i].name);
printf("\nMark: ");
scanf("%d",&list[i].mark);
}
}
void print_list(student list[], int size)
{
unsigned int i;
for(i=0; i<size; i++)
{
printf("Name: %s\t %d\n",list[i].name,list[i].mark);
}
}