强制类型转换
#include <stdio.h>
int max3(int a,int b,int c){
if(a >= b && a >= c)
return a;
if(b >= a && b >= c)
return b;
if(c >=a && c >= b)
return c;
return 0;
}
int main(){
int a = 0;
int b = 0;
int c = 0;
double m = 0.00;
scanf("%d %d %d", &a, &b, &c);
m = (double)(max3(a+b, b, c))/(max3(a,b+c,c)+max3(a,b,b+c));
printf("%.2f\n", m);
return 0;
}
若计算m时不加(double)则算出来的是0.00,加上算出0.30
多组输入,对应每行输出
#include <stdio.h>
int main()
{
int num = 0;
while(scanf("%d", &num) == 1)
{
for(int i = 0; i<num; i++)
{
printf("*");
if(i == num-1)
printf("\n");
}
}
return 0;
}
当i==num-1时就输出换行符,不然会多打印一个*
数组输入,求平均
#include <stdio.h>
int main()
{
float stu[5][5];
for(int i = 0;i < 5; i++)
{
float sum = 0.0f;
for(int j = 0;j < 5; j++)
{
scanf("%f", &stu[i][j]);
sum += stu[i][j];
printf("%.1f ", stu[i][j]);
}
printf("%.1f\n", sum);
}
return 0;
}
%.1f表示小数点后1位,输出后带一个空格
求平均数时,平均数有几位小数,除数就带几个小数avg = sum/5.00