So versuche ich habe meinen Weg durch eine Zuweisung Lernen C zu arbeiten, und habe nur gehofft, für eine Art von Korrektur, wohin ich gehe falschZählwerte in einem 2D-Array - C
Das Szenario ist eine Umfrage, und dies wird i der Ausgang ist erwartet
POPULARITY TABLE
----------------------------------------------------
City Cricket Footy Tennis Soccer
-----------------------------------------------------
Melbourne 4 1 1 4
Sydney 4 5 1 0
Brisbane 2 2 4 4
Adelaide 1 0 2 0
-----------------------------------------------------
Variablen sind M, S, B, A und 1,2,3,4 für die Tabelle
Jedesmal, produzieren wir meinen Code ausführen Es zählt entweder die Werte nicht oder es steht ein Wert von
#include <stdio.h>
int main()
{
int i, j;
char M, B, S, A;
int m_cricket = 0, m_footy = 0, m_tennis = 0, m_soccer = 0;
int s_cricket = 0, s_footy = 0, s_tennis = 0, s_soccer = 0
int b_cricket = 0, b_footy = 0, b_tennis = 0, b_soccer = 0
int a_cricket = 0, a_footy = 0, a_tennis = 0, a_soccer = 0
int survey[36][2] = {{M, 1}, {S, 2}, {B, 1}, {B, 3}, {M, 2}, {B, 4}, {S, 1}, {A, 3}, {M, 4}, {B, 2}, {B, 1}, {S, 3}, {B, 4}, {B, 4}, {M, 1}, {M, 1}, {B, 3}, {B, 3}, {S, 1}, {S, 1}, {S, 2}, {M, 4}, {M, 4}, {S, 2}, {A, 1}, {S, 2}, {B, 3}, {M, 1}, {B, 1}, {S, 2}, {A, 3}, {M, 4}, {S, 1}, {B, 2}, {M, 3}, {B, 4}};
for (int i = 0; i < 36; i++)
{
for (int j = 0; j == 2; j++)
{
if (survey[i][j] == M, 1)
{
m_cricket++;
}
}
}
printf("\tCity Cricket Footy Tennis Soccer\n");
printf("------------------------------------------------\n");
printf("Melbourne:\t %d\t %d\t %d\t %d\t\n", m_cricket, m_footy, m_tennis, m_soccer);
printf("Sydney:\t %d\t %d\t %d\t %d\t\n", s_cricket, s_footy, s_tennis, s_soccer);
printf("Brisbane:\t %d\t %d\t %d\t %d\t\n", b_cricket, b_footy, b_tennis, b_soccer);
printf("Adelaide:\t %d\t %d\t %d\t %d\t\n", a_cricket, a_footy, a_tennis, a_soccer);
return 0;
}
Wo bin ich falsch gelaufen? Gibt es eine bessere Möglichkeit, das zu programmieren?
ich nur für Melbourne codiert als wenn diese Codierung, i unter der Logik würde, wenn ich eine Stadt zum Laufen bringen könnte, würde der Rest
'int i, j;' überflüssig ist, da man sie wieder in den Schleifen zu erklären, und sie sind nur in den Schleifen verwendet. – InternetAussie
Bei der C-Programmierung können Sie die Syntax nicht einfach durch Versuch und Irrtum "erraten". Das wird niemals funktionieren. Stattdessen müssen Sie tatsächlich wissen, was Sie tun, an jeder Codezeile, die Sie schreiben. Dieser Code macht keinen Sinn - Sie müssen Zeichenfolgen und Zeichen in Ihrem Programmierbuch für Anfänger studieren. – Lundin