מחלקת צומת
שיעור 3 מתוך 14 בקורס רשימה מקושרת – סדרת מבני נתונים #5 של Coddy.
אתגר
קלכתבו מחלקה Node עם:
- בנאי שמקבל מספר שלם
value. שמרו אותו כשדה במחלקה, ואתחלו אתnextל־null(או לערך המקביל בשפה שלכם). - מתודה
getValueשלא מקבלת קלט ומחזירה אתvalueשנשמר.
נסו בעצמכם
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include "node.h"
int main() {
Node* node = NULL;
char line[256];
while (fgets(line, sizeof(line), stdin)) {
line[strcspn(line, "\r\n")] = '\0';
char* cmd = strtok(line, " \t");
if (!cmd) continue;
if (strcmp(cmd, "create") == 0) {
char* arg = strtok(NULL, " \t");
if (arg) node = Node_new(atoi(arg));
}
if (strcmp(cmd, "getValue") == 0) {
printf("%d\n", Node_getValue(node));
}
if (strcmp(cmd, "nextIsNull") == 0) {
printf("%s\n", node->next == NULL ? "true" : "false");
}
}
return 0;
}
כל השיעורים ביחידה רשימה מקושרת – סדרת מבני נתונים #5
תרגלו בעצמכם: קומפיילר C אונליין