1
2
3
4
5
6
|
struct student
{
char name[20];
int roll_no;
float marks;
};
|
student
structure định nghĩa thuộc tính name
là một mảng gồm 20 ký tự.
1
2
3
4
5
6
|
struct student
{
char name[20];
int roll_no;
float marks[5];
};
|
student_1
là biến có loại là struct student
sau đó:student_1.marks[0]
– tham chiếu tới điểm trong môn đầu tiênstudent_1.marks[1]
– tham chiếu tới điểm trong môn thứ haiarr_student[10]
cũng là array của type struct student
và:arr_student[0].marks[0]
– tham chiếu tới điểm đầu tiên của sinh viên đầu tiênarr_student[1].marks[2]
– tham chiếu tới điểm thứ ba của sinh viên thứ hai
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
|
#include<stdio.h>
#include<string.h>
#define MAX 2
#define SUBJECTS 2
struct student
{
char name[20];
int roll_no;
float marks[SUBJECTS];
};
int main()
{
struct student arr_student[MAX];
int i, j;
float sum = 0;
for(i = 0; i < MAX; i++ )
{
printf("\nEnter details of student %d\n\n", i+1);
printf("Enter name: ");
scanf("%s", arr_student[i].name);
printf("Enter roll no: ");
scanf("%d", &arr_student[i].roll_no);
for(j = 0; j < SUBJECTS; j++)
{
printf("Enter marks: ");
scanf("%f", &arr_student[i].marks[j]);
}
}
printf("\n");
printf("Name\tRoll no\tAverage\n\n");
for(i = 0; i < MAX; i++ )
{
sum = 0;
for(j = 0; j < SUBJECTS; j++)
{
sum += arr_student[i].marks[j];
}
printf("%s\t%d\t%.2f\n",
arr_student[i].name, arr_student[i].roll_no, sum/SUBJECTS);
}
// signal to operating system program ran fine
return 0;
}
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
Enter details of student 1
Enter name: Rick
Enter roll no: 1
Enter marks: 34
Enter marks: 65
Enter details of student 2
Enter name: Tim
Enter roll no: 2
Enter marks: 35
Enter marks: 85
Name Roll no Average
Rick 1 49.50
Tim 2 60.00
|
إرسال تعليق