(题目来源--西工大计算机微信公众号)
.
#include<stdio.h>
#include<stdlib.h>
typedef struct TIME{
int m;
int s;
int ms;
}T;
int main(){
int n;
scanf("%d",&n);
while(n--){
T a,b,c,aver;
int sum;
scanf("%d%d%d%d%d%d%d%d%d",&a.m,&a.s,&a.ms,&b.m,&b.s,&b.ms,&c.m,&c.s,&c.ms);
sum=((a.m+b.m+c.m)*60*1000+(a.s+b.s+c.s)*1000+a.ms+b.ms+c.ms)/3;
aver.m=sum/60000;
aver.s=(sum%60000)/1000;
aver.ms=(sum%60000)%1000;
printf("%d %d %d\n",aver.m,aver.s,aver.ms);
}
return 0;
}
2.排序问题:给定n组数,每组m个,对每组数进行从小到大排序;
Input:
2 4
3 5 2 8
2 7 9 8
Output:
2 3 5 8
2 7 8 9
2017
2018
2019均出现此题
3.输入行数,再在每行输入一个表达式,得出结果
Input:
3
1+1
2.2/3
1+2*3+2
Output:
2
0.7
9
#include <stdio.h>
#include <string.h>
int main()
{
int n;
scanf("%d",&n);
while(n--)
{
double a[100],sum=0;
char c;
int i=0;
scanf("%lf",&a[0]);
c=getchar();
while(c!='\n')
{
double temp;
scanf("%lf",&temp);
switch(c)
{
case '+':a[++i]=temp;break;
case '-':a[++i]=-temp;break;
case '*':a[i]*=temp;break;
case '/':a[i]/=temp;break;
}
c=getchar();
}
for(int j=0;j<=i;j++)
{
sum=sum+a[j];
}
if(sum-int(sum)<=1e-6) printf("%.0f\n",sum);
else printf("%.1f\n",sum);
}
return 0;
}
4.利用海伦公式计算三角形面积
Input:
2
3 4 5
1 1 1
Output:
6
NaN
#include<stdio.h>
#include<math.h>
int main(){
int n;
scanf("%d",&n);
while(n--){
float a,b,c,area,p;
scanf("%f %f %f",&a,&b,&c);
if(a+b<=c||a+c<=b||b+c<=a)
printf("0.00\n");
else{
p=(a+b+c)/2;
area=sqrt(p*(p-a)*(p-b)*(p-c));
printf("%.2f",area);
}
}
return 0;
}