Hallo,
habe volgendes Problem:
Der Compiler gibt eine Warnung aus , und das Programm arbeitet nicht richtig...
Warnmeldung: "warning C4244: '=' : Konvertierung von 'int' in 'float', moeglicher Datenverlust".
Obwohl ich die Varible "anteil" alsTyp float deklariert habe rechnet es die Nachkommastellen nicht aus, z.B. bei 16.67% stehen da nur 16.00 % an.
warum?
habe volgendes Problem:
Der Compiler gibt eine Warnung aus , und das Programm arbeitet nicht richtig...
Warnmeldung: "warning C4244: '=' : Konvertierung von 'int' in 'float', moeglicher Datenverlust".
Obwohl ich die Varible "anteil" alsTyp float deklariert habe rechnet es die Nachkommastellen nicht aus, z.B. bei 16.67% stehen da nur 16.00 % an.
warum?
Code:
#include <stdio.h>
#include <string.h>
#include <conio.h>
main()
{
char text[50];
int gesamtanzahl, e_anzahl=0, i;
float anteil;
printf("geben sie den text ein: ");
gets(text);
gesamtanzahl = strlen(text);
for(i = 0; i <= 50 ; i++)
{
if( text[i] == 'e')
{
e_anzahl ++;
}
}
printf("In diesem Text sind %3i 'e' Zeichen enthalten", e_anzahl);
anteil = e_anzahl *100 /gesamtanzahl;
printf("\n\nDer prozentuale Anteil betraegt %6.2f %%", anteil);
getch();
return(0);
}