Δημοσιεύτηκε: 27 Ιούλ 2011, 16:39
Οπότε, να μια ωραία και πολύ χρήσιμη 1η άσκηση:
Χρησιμοποιώντας την s_get() όσες φορές θέλετε για να διαβάζετε γραμμές εισόδου μέσα σε ένα string, διαβάστε από την κύρια είσοδο:
α) έναν χαρακτήρα, και τυπώστε τον
β) δυο int και τυπώστε το γινόμενό τους
γ) 2 long και τυπώστε το άθροισμα τους
δ) 2 float και τυπώστε το αποτέλεσμα της διαίρεσής του
Η συνάρτηση: s_get() (δεν χρειάζεται να καταλάβετε πως δουλεύει ο κώδικάς της, απλά χρησιμοποιήστε την ! )
EDIT:
Παράδειγμα εξόδου:

Χρησιμοποιώντας την s_get() όσες φορές θέλετε για να διαβάζετε γραμμές εισόδου μέσα σε ένα string, διαβάστε από την κύρια είσοδο:
α) έναν χαρακτήρα, και τυπώστε τον
β) δυο int και τυπώστε το γινόμενό τους
γ) 2 long και τυπώστε το άθροισμα τους
δ) 2 float και τυπώστε το αποτέλεσμα της διαίρεσής του
Η συνάρτηση: s_get() (δεν χρειάζεται να καταλάβετε πως δουλεύει ο κώδικάς της, απλά χρησιμοποιήστε την ! )
- Κώδικας: Επιλογή όλων
// -----------------------------------------------------------------------------
// Διάβασμα της γραμμής εισόδου στο string s (μέχρι len-1 χαρακτήρες)
//
char *s_get(char *s, size_t len)
{
char *cp;
for (cp=s; (*cp=getc(stdin)) != '\n' && (cp-s) < len-1; cp++ )
; // for-loop with empty body
*cp = '\0'; // null-terminate last character
return s;
}
EDIT:
Παράδειγμα εξόδου:
