我不明白爲什麼我的部門的結果出現向下舍入?爲什麼我的分部結果顯示爲關閉?
#include <iostream>
#include <stdio.h>
using namespace std;
int rVote, oVote, dVote;
int rTotal, oTotal, dTotal, total;
int rPercent, dPercent, oPercent;
bool loop(char vote){
switch(toupper(vote)){
case 'D':
dVote = 1;
dTotal = dTotal + dVote;
return true;
case 'R':
rVote = 1;
rTotal = rTotal + rVote;
return true;
case 'O':
oVote = 1;
oTotal = oTotal + oVote;
return true;
case 'Q':
return false;
}
return true;
}
int main(){
char vote;
do{
printf("Enter Vote [D/R/O] or Q to quit: ");
scanf("%c%*c", &vote);
} while (loop(vote));
total = dTotal + rTotal + oTotal;
rPercent = ((rTotal/total)*100);
dPercent = ((dTotal/total)*100);
oPercent = ((oTotal/total)*100);
printf("Democrate total vote %d: %d%%\n", dTotal, dPercent);
printf("Republican total vote %d: %d%%\n", rTotal, rPercent);
printf("Other total vote %d: %d%%\n", oTotal, oPercent);
}
大,我是非常愚蠢的.... 爲什麼說任何不打印在這個C/C++程序的百分比值我*Percent
的嗎?
謝謝。
這是做到這一點:也許因爲它四捨五入爲最接近%這樣的事情可能更合適一個不是C/C++程序。這是一個唯一的C++程序,因爲它不會編譯爲C.但是,它被編寫爲一個C程序。你應該選擇其中的一個並且學習它,而不是學習兩者之間的某種混合。儘管出現,他們是非常不同的語言。如果你決定使用C++,我會推薦[一本好的C++入門書](http://stackoverflow.com/q/388242/46642)。 –
我想成爲一名C程序員,首先選擇C語言,但在C++編程類atm中。老師似乎並不介意。所以主要是爲什麼我說我所有的代碼都是用c格式寫的。 –