最后一个else后面 多了一个分号 ; 去掉。
而且只有else if或if后面才需要条件,else后面不需要。
整数相除向上取整的方法,如m除以n,向上取整是(m+n-1)/n。
所以这道题可以不用这么麻烦
#include<stdio.h>
int main(){
int total,num,price,i,min,P;
scanf("%d",&total);
for(i=0;i<8*sizeof(int)-1;i++){
min|=1<<i;
}
for(i=0;i<3;i++){
scanf("%d%d",&num,&price);
P=((total+num-1)/num)*price;
if(P<min)min=P;
}
printf("%d",min);
return 0;
}