C语言实验--算算男生女生的比例
时间: 1ms 内存:128M
描述:
小黑办了个美术学校,由于上年办的那个班反响不错,所以他今年扩招到3个班,他想了解一下他办的这个班是对女生更有吸引力还是对男生更有吸引力,当然他还想知道到底招了多少人!快来帮帮小黑吧,你需要计算女生占的比例,男生占的比例 ,包括占各班的,占全校的,以及各班总人数和总招收的人数。
输入:
共三个班,分别输入各班男生,女生的个数
输出:
先输出各班的人数,再输出各班的男生占班级总人数的比例,女生占总人数的比例。最后输出全校总人数,及男生占全校总人数的比例,女生占全校总人数的比例 。
输出比例时,保留一位小数,总数不用。
示例输入:
13 21
14 20
10 22
示例输出:
34 0.4 0.6
34 0.4 0.6
32 0.3 0.7
100 0.4 0.6
提示:
参考答案(内存最优[748]):
#include<stdio.h>
int main(){
int a[3][2],i,j;
//float c,d,e;
for(i=0;i<3;i++)
for(j=0;j<2;j++)
{
scanf("%d",&a[i][j]);
}
int sum=0;
float m,w;
int SM=0;
for(i=0;i<3;i++)
{
for(j=0;j<2;j++)
{
sum+=a[i][j];
SM+=a[i][j];
}
m=(float)a[i][0]/sum;
w=(float)a[i][1]/sum;
printf("%d% .1f% .1f\n",sum,m,w);
sum=0;
}
float b=0,c=0;
for(i=0;i<3;i++)
//for(j=0;j<2;j++)
{
b+=a[i][0];
c+=a[i][1];
}
b=(float)b/SM;
c=(float)c/SM;
printf("%d %.1f %.1f",SM,b,c);
return 0;
}
参考答案(时间最优[0]):
#include<iostream>
#include<iomanip>
using namespace std;
int main(){
float a1,b1,a2,b2,a3,b3;
float s,s1,s2;
cin>>a1>>b1>>a2>>b2>>a3>>b3;
s1=a1+a2+a3;
s2=b1+b2+b3;
s=s1+s2;
cout<<setiosflags(ios::fixed);
cout<<setprecision(0)<<a1+b1<<setprecision(1)<<" "<<a1/(a1+b1)<<" "<<b1/(a1+b1)<<endl;
cout<<setprecision(0)<<a2+b2<<setprecision(1)<<" "<<a2/(a2+b2)<<" "<<b2/(a2+b2)<<endl;
cout<<setprecision(0)<<a3+b3<<setprecision(1)<<" "<<a3/(a3+b3)<<" "<<b3/(a3+b3)<<endl;
cout<<setprecision(0)<<s<<setprecision(1)<<" "<<s1/s<<" "<<s2/s<<endl;
return 0;
}
题目和答案均来自于互联网,仅供参考,如有问题请联系管理员修改或删除。