Hallo!
Bin auch noch relativ neu in C, aber ich kann dir da weiterhelfen.
Du hast die Anzahl der Arraystellen vergessen.
Ohne Array kannst du mit char ja nur ein Zeichen zuweisen.
Ausserdem kannst du das nicht mit scanf machen, sondern musst mit fgets() arbeiten.
Meine Version/Idee:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main(void)
{
char entscheidung[16];
int addition;
int subtraktion;
int division;
int multiplikation;
printf("Was willst du tun?\n");
fgets(entscheidung, 16, stdin);
if(strncmp(entscheidung, "addition\n", 16) == 0)
{
printf("Gut, du willst addieren");
}
else if(strncmp(entscheidung, "subtraktion\n", 16) == 0)
{
printf("Gut, du willst subtrahieren");
}
else if(strncmp(entscheidung, "division\n", 16) == 0)
{
printf("Gut, du willst dividieren");
}
else if(strncmp(entscheidung, "multiplikation\n", 16) == 0)
{
printf("Gut, du willst multiplizieren");
}
return 0;
}
Alles anzeigen
Ungetestet, aber sollte eigentlich funktionieren. EDIT: War ein Fehler drin, du musst überall noch neue Zeilen mit \n machen, die hängt er automatisch dran. Jetzt funktioniert der Code von oben.
Falls du dich mit Arrays nicht auskennst, kannst du es ja mit Zahlen machen (für Addition tippen Sie 1, für Subtraktion 2,...).
Ich hoffe, ich konnte helfen
LG FlasH
EDIT: Fehler im Code