2D-array-Suche in C

Ich bin immer noch lernen, C und könnte etwas Hilfe gebrauchen. Ich versuche ein Programm zu schreiben, das wird zu tun, eine Suche nach einem 2D-array von char ist. Und es sagt Ihnen, welche Punkte sich der gesuchte char ist in Bezug auf das 2D-array in einen (x, y) - Koordinaten. Mein problem ist, dass das Programm nicht ausgeben rechts (x y) - Koordinaten.
2D-array-Suche in C
Jetzt dachte ich das Programm ausgeben soll (1,0),(1,1), (1,2), (1,3), (1,4) für B. Plane ich auch über die Anpassung der Koordinaten, so dass es zählen würde bei 1 statt bei 0 ich.e für B ausgegeben werden soll (2,1),(2,2), (2,3), (2,4), (2,5). So weit, die nur koordinieren, dass die Drucke aus der rechten, (1,1) und ich bin nicht sicher, warum mein code nicht funktioniert. Was kann ich tun um dies zu beheben?

VOLLSTÄNDIGE CODE:

#define _CRT_SECURE_NO_WARNINGS
#define SIZE 5
#include <stdio.h>


int main()
{
    int c, count = 0;
    int x[SIZE] = { 0 };
    int y[SIZE] = { 0 };

    int j, i;
    char array[SIZE][SIZE] = { { 0 }, { 0 } };
    char array2[SIZE] = { 'A', 'B', 'C', 'D', 'S' };
    char search;

    for (i = 0; i < 5; i++)
    {
        for (j = 0; j < 5; j++)
        {

            array[i][j] = array2[j];
        }
    }

    for (i = 0; i < 5; i++)
    {
        for (j = 0; j < 5; j++)
        {
            printf("%c ", array[i][j]);
        }
        printf(" \n");
    }

    printf("What letter are you lookiong for? ");
    scanf("%c", &search);


    for (j = 0; j < 5; j++)
    {
        for (c = 0; c < 5; c++)
        {
            if (array[j][c] == search)
            {
                y[j] = j;
                x[c] = c;
                count++;
            }
        }
    }

    if (count == 0)
        printf("%c is not present in array.\n", search);
    else
    {
        for (i = 0; i < count; i++)
        {

            printf("%c is present at (%d , %d) times in array.\n", search, x[i], y[i]);
        }

    }



    return 0;
}
  • Screenshots von text windows nutzlos sind. Jedes mal, wenn Sie post einen Gott tötet ein panda. Sie können grep-screenshots, können Sie diff Ihnen, Sie können wählen Sie text in Ihnen, und Sie verschwenden meine Bandbreite. Bitte unterlassen Sie die Veröffentlichung dieser Dinge.
  • Beachten Sie, dass in C, verwenden Sie array[row][column] in der Erwägung, dass Ihre bevorzugte Antwort scheint zu verwenden, Array(Spalte,Zeile) (oder A(C,R)) - notation. Es ist eine Frage der Darstellung, aber Sie wahrscheinlich finden es verwirrend, wenn Sie Eine(C,R) notation. Zumindest, Sie müssen sich bewusst sein, dieses Verhalten.
  • Warum sollte es mich kümmern, wenn es Abfall Ihr Bandbreite? Wenn wir nicht dazu gedacht sind, posten screenshots, warum dann würde diese Website haben die Möglichkeit, für Sie? Bitte erspare snarky Dinge.
  • Wie dumm von mir. Sie sollten nicht in der Tat interessieren, was Menschen, die helfen wollen, denken Sie sich. Nutzen Sie diese und entsorgen Sie Sie. Geschieht Ihnen Recht.
  • Ich sehe nicht, eine Antwort von dir unten oder oben, Kumpel. Ich danke allen, die mich unterstützt und berücksichtigt, was Sie sagen. Alle, die Sie getan haben, beklagt wird.
  • Ich muss mich entschuldigen für die nicht, die man für diese spezielle Frage in einer fristgerechten Weise. Sehen Sie, ich war damit beschäftigt, anderen Menschen zu helfen, die auf dieser Website (eine Tätigkeit, die ich nicht sehen, Sie sich zu viel). Viel Glück mit Ihren Bemühungen.
  • Sie machen mich lachen. Was für ein ego-problem, das Sie haben. Sie konnte nicht einfach entschuldigen mit so ein Seitenhieb auf mich? Wirklich unreif von dir.

InformationsquelleAutor T.Malo | 2014-04-20
Schreibe einen Kommentar