问题遇到的现象和发生背景
两行printf 打印,输出错误,如果只打印一个结果就没问题,这是什么原因?
代码和结果截图
#include <iostream>
#include <string>
#include <stdio.h>
using namespace std;
int main()
{
// 请在此输入您的代码
int num,jige_num,youxiu_num,score;
float jige_ration,youxiu_ration;
int jige,youxiu;
cin>>num;
for(int i = 0;i < num;i++)
{
cin>>score;
if(score>=60) jige_num++;
if(score>=85) youxiu_num++;
}
jige_ration = (jige_num*1.0)/(num*1.0);
youxiu_ration = (youxiu_num*1.0)/(num*1.0);
if(int(jige_ration*1000)%10 >=5)
jige = int(jige_ration*100) + 1;
else
jige = (int)(jige_ration*100);
// printf("%d%\r\n",jige_ration);
if(int(youxiu_ration*1000)%10 >=5)
youxiu = int(youxiu_ration*100) + 1;
else
youxiu = (int)(youxiu_ration*100);
printf("%d%\n",jige);
printf("%d%\n",youxiu);
return 0;
}