#include<stdio.h>
int main()
{
unsigned int a,b,c,d,e,f;
scanf("%d%d",&a,&b);
scanf("%d%d",&c,&d);
scanf("%d%d",&e,&f);
printf("#1 result: %d\n",a+(b-a)/2);
printf("#2 result: %d\n",c+(d-c)/2);
printf("#3 result: %d",e+(f-e)/2);
return 0;
}
我们上课说溢出了要这样求平均值改用a+(b-a)/2来计算 但是试了最后还是提交不通过 不知道有什么办法
%d是用于输出有符号整数的
而且2^64已经超出了int的表示范围,unsigned int也不行
尝试改为unsigned long long
无符号整数的输出应使用%u
尝试将所有的%d替换为%u
有帮助望采纳~