Problem mit STRINGS in C
-
Hallo!
Ich muss ein Programm machen, welches folgende Aufgaben erfüllt:Aufgabenstellung: (Testen aller Operatoren) "Operator.c" Schreibe ein C Programm, das die im folgenden beschriebene Aufgabe zum oben angeführten Thema löst: • Gib zwei beliebige Zahlen ein nämlich b,c. • Verknüpfe diese beiden Zahlen mit allen angeführten Operatoren, und zwar: (+, -, *, /, %) a = b + c; a = b - c; .. a = b % c; Versuche das gleiche auch mit Gleitkommerzahlen (ausgenommen %). Logische Operatoren (&&, ||, !) sollen ebenfalls getestet werden. Hinweise: Die Ausgabe soll folgende Tabelle ergeben: Operator Beschreibung Beispiel Ergebnis + Addition von Zahlen 10 + 5 15 … % Modulo (Rest der Division) 17 % 7 3 && UND (b1 and b2) (17<7) && (17 != 7) True || ODER (b1 or b2) (17 == 7) || (17 < 7) False Falls dir noch Zeit bleibt kannst du auch Strings verknüpfen. Verwende dabei die Funktionen „strcpy (…)“, „strcmp (…)“, … Operator Beschreibung Beispiel Ergebnis strcpy Kopieren von Zeichenketten strcpy (s, “Hallo“) s = “Hallo“
Ich habe die ein und ausgabe schon programmiert, weiß aber nicht wie ich einen string deklariere, oder dem string einen wert zuzuweisen!
kann mir mal bitte wer erklären wie das alles funzt?und wie kann ich eine zahl (float) so einrücken dass der kommapunkt auf der z.b. 7. stelle ist? (ich denke das geht so: %6.2f)
-
Tag,
Ein String ist ein array von chars oder eben ein Zeiger auf ein array von chars.
#include<stdio.h> #include<string.h> int main(void) { /*declaration eines statischen strings der laenge 10*/ char string10[11]; char copy_of_string10[11]; /*zeiger auf string*/ char *str_ptr; /*fuellen des string10 mittels strcpy*/ strcpy(string10,"0123456789"); /*zuweisung des string10 an str_ptr*/ str_ptr=string10; /*kopie von string10 erzeugen*/ strcpy(copy_of_string10,string10); /*testen der aktionen*/ printf("String10: %s\nCopy_of_String10: %s\nstr_ptr: %s\n",string10,copy_of_string10,str_ptr); return 0; }
Ausgabe:
String10: 0123456789
Copy_of_String10: 0123456789
str_ptr: 0123456789So far .....