cysior Opublikowano 9 Kwietnia 2014 Udostępnij Opublikowano 9 Kwietnia 2014 Witam. Mam pytanie co do podstaw języka C. Obecnie piszę proste programiki, obliczenia, wyświetlanie wyników etc. int a, b, c; printf("podaj a \n"); scanf_s("%\d", &a); printf("podaj b \n"); scanf_s("%\d", &b); printf("podaj c \n"); scanf_s("%\d", &c); double delta = b*b - 4 * a*c; double pdelta = sqrt(delta); printf("Delta = %\lf", delta); Moje pytanie dotyczy specyfikatorów, dlaczego gdy w zaznaczonym miejscu mam samo "f" to program w konsoli wypisuje " Delta = ♀ " ? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Threef Opublikowano 10 Kwietnia 2014 Udostępnij Opublikowano 10 Kwietnia 2014 Dużo już C nie pamiętam ale wydaje mi się że nie ma backslash w formatowanie, a więc: scanf_s("%d", &a); Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
cysior Opublikowano 10 Kwietnia 2014 Autor Udostępnij Opublikowano 10 Kwietnia 2014 To prawda, mój błąd. Moje pytanie wciąż aktualne. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Konrad-GM Opublikowano 10 Kwietnia 2014 Udostępnij Opublikowano 10 Kwietnia 2014 "Delta = %\lf" - Kompilator C++ ma tendencje aby backslashe w łańcuchach zmieniać na inne znaki względem tego układu: http://msdn.microsoft.com/en-us/library/6aw8xdf2.aspx Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Threef Opublikowano 11 Kwietnia 2014 Udostępnij Opublikowano 11 Kwietnia 2014 O to mi chodziło. Próbowałeś dać: printf("Delta = %f", delta); Co chciałeś uzyskać tym '\l'? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Rekomendowane odpowiedzi
Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto
Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.
Zarejestruj nowe konto
Załóż nowe konto. To bardzo proste!
Zarejestruj sięZaloguj się
Posiadasz już konto? Zaloguj się poniżej.
Zaloguj się