generated from kenryuS/report-temp
finished cls12
This commit is contained in:
@@ -0,0 +1,18 @@
|
||||
include ../common.mk
|
||||
|
||||
PROJECT_NAME:=cls12
|
||||
|
||||
TGTS:=$(patsubst %.c,%,$(wildcard *.c))
|
||||
|
||||
all: $(TGTS) a2-alt
|
||||
|
||||
%: %.c
|
||||
@mkdir -p $(BUILD_PATH)/$(PROJECT_NAME)
|
||||
$(CC) $(CFLAGS) $^ -o $(BUILD_PATH)/$(PROJECT_NAME)/$@
|
||||
|
||||
a2-alt: a2.c
|
||||
@mkdir -p $(BUILD_PATH)/$(PROJECT_NAME)
|
||||
$(CC) $(CFLAGS) -D ALT_DATA $^ -o $(BUILD_PATH)/$(PROJECT_NAME)/$@
|
||||
|
||||
clean:
|
||||
$(RM) -drf $(BUILD_PATH)/$(PROJECT_NAME)
|
||||
@@ -0,0 +1,41 @@
|
||||
#include <stdio.h>
|
||||
|
||||
#define STUDENTS_NUM 4
|
||||
|
||||
struct student {
|
||||
char name[20];
|
||||
int english;
|
||||
int mathematics;
|
||||
int japanese;
|
||||
double average;
|
||||
};
|
||||
|
||||
int main(void) {
|
||||
struct student students[] = {
|
||||
{ .name = "佐藤", .english = 82, .mathematics = 72, .japanese = 58 },
|
||||
{ .name = "秋山", .english = 77, .mathematics = 82, .japanese = 79 },
|
||||
{ .name = "永田", .english = 52, .mathematics = 62, .japanese = 39 },
|
||||
{ .name = "藤田", .english = 61, .mathematics = 82, .japanese = 88 }
|
||||
};
|
||||
|
||||
for (int i = 0; i < STUDENTS_NUM; i++) {
|
||||
students[i].average = (double)(
|
||||
students[i].english +
|
||||
students[i].mathematics +
|
||||
students[i].japanese
|
||||
) / 3.f;
|
||||
}
|
||||
|
||||
for (int i = 0; i < STUDENTS_NUM; i++) {
|
||||
printf(
|
||||
"%10s: 英語=%3d\t数学=%3d\t国語=%3d\t平均=%.2lf\n",
|
||||
students[i].name,
|
||||
students[i].english,
|
||||
students[i].mathematics,
|
||||
students[i].japanese,
|
||||
students[i].average
|
||||
);
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
@@ -0,0 +1,73 @@
|
||||
#include <stdio.h>
|
||||
|
||||
#define STUDENTS_NUM 4
|
||||
|
||||
struct student {
|
||||
char name[20];
|
||||
int english;
|
||||
int mathematics;
|
||||
int japanese;
|
||||
double average;
|
||||
};
|
||||
|
||||
int main(void) {
|
||||
#ifdef ALT_DATA
|
||||
struct student students[] = {
|
||||
{ .name = "佐藤", .english = 89, .mathematics = 86, .japanese = 78 },
|
||||
{ .name = "秋山", .english = 78, .mathematics = 65, .japanese = 79 },
|
||||
{ .name = "永田", .english = 64, .mathematics = 33, .japanese = 53 },
|
||||
{ .name = "藤田", .english = 89, .mathematics = 47, .japanese = 62 }
|
||||
};
|
||||
#else
|
||||
struct student students[] = {
|
||||
{ .name = "佐藤", .english = 82, .mathematics = 72, .japanese = 58 },
|
||||
{ .name = "秋山", .english = 77, .mathematics = 82, .japanese = 79 },
|
||||
{ .name = "永田", .english = 52, .mathematics = 62, .japanese = 39 },
|
||||
{ .name = "藤田", .english = 61, .mathematics = 82, .japanese = 88 }
|
||||
};
|
||||
#endif
|
||||
|
||||
for (int i = 0; i < STUDENTS_NUM; i++) {
|
||||
students[i].average = (double)(
|
||||
students[i].english +
|
||||
students[i].mathematics +
|
||||
students[i].japanese
|
||||
) / 3.f;
|
||||
}
|
||||
|
||||
int grades[4] = {0};
|
||||
for (int i = 0; i < STUDENTS_NUM; i++) {
|
||||
char grade = 0;
|
||||
int avg = students[i].average;
|
||||
if (avg < 60) {
|
||||
grade = 'D';
|
||||
grades[3]++;
|
||||
} else if (avg >= 60 && avg < 70) {
|
||||
grade = 'C';
|
||||
grades[2]++;
|
||||
} else if (avg >= 70 && avg < 80) {
|
||||
grade = 'B';
|
||||
grades[1]++;
|
||||
} else {
|
||||
grade = 'A';
|
||||
grades[0]++;
|
||||
}
|
||||
printf(
|
||||
"%10s: 英語=%3d\t数学=%3d\t国語=%3d\t平均=%.2lf\t成績=%c\n",
|
||||
students[i].name,
|
||||
students[i].english,
|
||||
students[i].mathematics,
|
||||
students[i].japanese,
|
||||
students[i].average,
|
||||
grade
|
||||
);
|
||||
}
|
||||
|
||||
printf("成績: ");
|
||||
for (int i = 0; i < 4; i++) {
|
||||
printf("%c=%d人\t", 'A' + i, grades[i]);
|
||||
}
|
||||
putchar('\n');
|
||||
|
||||
return 0;
|
||||
}
|
||||
Reference in New Issue
Block a user