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: 0123456789

    So far .....


Anmelden zum Antworten