Ascii code tabelle ausgeben C
-
Du bist registriert, heisst du kannst Editieren statt vier Posts nacheinander abzugeben...
Hello World schrieb:
Dan poste es bitte ich verstehe es leichter wenn ich den Code sehe !!
Sag doch gleich, dass wir dir den
Kackcoden sollen -.-EDIT: Sorry wegen dem Kraftausdruck...
-
Nein ihr sollt mir nicht den "kack" coden sondern das was ich nicht verstehe, was fehlt bzw. falsch habe coden -.-
-
Hello World schrieb:
Gut vermutlich hast du recht ... kommen wir zum 1. Fehler in welcher Zeile liegt der?
Willst du Debuggen, oder kannst du den Code so nachvollziehen?
Welchen Fehler willst du denn gefunden haben?P.S.: Es gibt auch Programme, mit denen du Texte vergleichen kannst.
-
Debuggen wäre nicht schlecht (benütze Code::Blocks)
Was bringt mir das Texte vergleichenen?
-
Hello World schrieb:
Debuggen wäre nicht schlecht (benütze Code::Blocks)
Was bringt mir das Texte vergleichenen?Damit du merkst, wo der Unterschied zwischen deiner Ausgabe und der Lösung liegt.
-
gut und wie mach ich das?
-
Google
-
xD Wie immer
-
Das mit dem Textvergleich war eigentlich ein verzweifelter Scherz, aber nun gut
-
http://www.bildershare.de/?v=unbenannt-1295725599.png
Hab jetzt plöztlich einen Warning: ascii may be uninatilized in this function, aber es beginnt jetzt richtig ?? komisch o.O was ist da jetzt passiert?
-
Ich kenne deinen Code nicht, aber du solltest in der Zeile, wo
int ascii;
steht, stattdessen folgendes schreiben:
int ascii = 0;UND: Nein, es beginnt immer noch nicht richtig.
-
ok wo ist da der fehler??? Ich checks nicht
#include <stdio.h> #include <stdlib.h> int main() { int sterne, zahlenzeile, zaehler1, zeilenh; int ascii=0; printf(" *"); for(zahlenzeile=0; zahlenzeile<=19;zahlenzeile++){ if(zahlenzeile<=9) printf(" %d", zahlenzeile); else printf(" %d", zahlenzeile); } printf("\n"); for(sterne=0; sterne<=65; sterne++){ printf("*");} printf("\n"); for(zaehler1=0; zaehler1<=255; zaehler1++) { zeilenh=zaehler1%20; if(zeilenh==0) { printf(" %.3d *", zaehler1); } ascii++; if(ascii>=32) { printf(" %c ", ascii); } else { printf(" "); } if(zeilenh==19) { printf("\n"); } } return 0; }
-
Zeile 25, 27, 33, 37, 41
-
Hab ich sie vertauscht oder ..??
-
So schon besser??
#include <stdio.h> #include <stdlib.h> int main() { int sterne, zahlenzeile, zaehler1, zeilenh; int ascii=0; printf(" *"); for(zahlenzeile=0; zahlenzeile<=19;zahlenzeile++){ if(zahlenzeile<=9) printf(" %d", zahlenzeile); else printf(" %d", zahlenzeile); } printf("\n"); for(sterne=0; sterne<=65; sterne++){ printf("*");} printf("\n"); for(zaehler1=0; zaehler1<=255; zaehler1++) { zeilenh=zaehler1%20; if(zeilenh==19) { printf("\n"); } ascii++; if(ascii>=32) { printf(" %c ", ascii); } else { printf(" "); } if(zeilenh==0) { printf(" %.3d *", zaehler1); } } return 0; }
Jetzt sin die schon mal etwa in der richtigen reihen folge nur links das ist durcheinander -.-
-
Nein, das hat mit Vertauschen nichts zu tun. Wie ich bereits mindestens 2 mal gesagt habe, musst du zeilenh gar nicht auf 0 überprüfen. Und ich wette, du kapierst immer noch nicht, was in der Schleife passiert. Vielleicht solltest du ja mal deinen Mittagsschlaf nachholen.
P.S.: Raten hilft nur selten weiter...
-
Hello World schrieb:
Das leben ist ein Programm
Und über die API und das Betriebssystem ist man sich noch nicht im Klaren
-
wenn ich die überprüfung auf zeilenh==0 weg lasse kommt ein komplettes Chaos raus
-
Hello World schrieb:
wenn ich die überprüfung auf zeilenh==0 weg lasse kommt ein komplettes Chaos raus
Du sollst die nicht weglassen sondern auf etwas anderes als 0 prüfen. Worauf wurde schon geschrieben.
Und dann schau mal wie viel Zeichen (auch Leerzeichen) du ausgibst, wenn dein Zeichen >= 32 und wenn < 32 ist (Zeile 33 und 37).
-
So ein letztes mal ...
#include <stdio.h> int main() { int sterne =0, zahlenzeile =0, spalten =0; float zeilenh =0; int ascii =0, anzahl =0; printf(" *"); for(zahlenzeile=0; zahlenzeile<=19;zahlenzeile++){ if(zahlenzeile<=9 && zahlenzeile >0) printf(" %d", zahlenzeile); else printf(" %d", zahlenzeile); } printf("\n"); for(sterne=0; sterne<=64; sterne++){ printf("*");} printf("\n"); for(spalten=0; spalten<=255; spalten++) { zeilenh=spalten%20; if(zeilenh == 0) { printf(" %3d *", spalten); } else if(zeilenh==19) { printf("\n"); } ascii++; if(ascii >= 32 && anzahl <= 19) { printf(" %c ", ascii); } else if(ascii < 32 && anzahl <= 19) { printf(" "); } } return 0; }
1. Benötige ich noch eine schleife? Wenn ja ... Wo mit welchen Variablen?
2. Was Fehlt/ist zu viel/ist falsch bei den if else Verzweigungen
3. Wo liegen sonnst noch FehlerBITTE