Für meine Aufgabe muss ich Zahlen auf den Bildschirm drucken und sie in ihre spezifischen Buchstaben entschlüsseln. Ich benutze nur die Buchstaben a-l in diesem Code, nur um es einfach zu halten, damit ich es verstehen kann.Verwenden eines Arrays zum Dekodieren von Zahlen in Buchstaben
Das Problem, das ich habe, ist, dass, wenn ich zum Beispiel die Nummer 0, die dem ersten Eintrag in das Array, das ein ist, enthält, wird es herausnehmen und drucken b-l.
Wie mache ich es so, wenn ich die Zahl 0 einstelle, wird der Code nur einen auf den Bildschirm drucken?
#include <stdio.h>
int main()
{
char code[] = "abcdefghijkl";
int i, j, k;
printf("how many letters does your code contain?: ");
scanf("%d", &j);
for(i=0; i<j; ++i){
printf("enter a number between 0 and 11\n");
scanf("%d", &k);
printf("%s\n", &code[k]);
}
}
habe ich versucht, dass und den folgenden Fehler bekommen: code.c: 12: 3: Warnung: format '% c' erwartet Argument des Typs 'int', aber Argument 2 hat Typen ' int * '[-Wformat] – user1304516
@ user1304516 Dann stimmt der Code, den Sie gepostet haben, nicht mit dem Code überein, den Sie kompilieren. – nos
@ user1304516: Sie müssen '&' auch während des Druckens entfernen? – Naveen