【急!】c语言for语句循环结构(求小明应付金额具体如题!!)

试题描述
小明至超市购物,他运气真好,超市在搞促销活动,优惠如下:购物金额满500元,打八折,满300元打九折,300元以下不打折。 现告诉你小明买了n件物品以及每件物品的价格,请帮助小明计算他的应付款。

输入要求
两行,第一行一个整数n表示物品的数量;
第二行n个实数表示物品的价格(每个数之间用空格隔开);

输出要求
小明应付的金额。(保留一位小数)

输入样例
3
123.5 177 200

输出样例
400.4

急求~~

/*c语言for语句循环结构(求小明应付金额解答如下!!)*/
#include<stdio.h>
main()                 /*缺省值*/
{
    int a;
    float b[100],sum;     /*分配数组*/
    printf("购买物品总量:\n");
    scanf("%d",&a);     
    for(i=0;i<a;++i)       /*for 语句的应用*/
    {
        printf("每个物品的价格:\n");
        scanf("%.1f",&b[i]);
        sum += b[i];
    }
    if(sum<300)            /*条件判断*/
    {
        printf("应付款:%.1f",sum);
    }
    else if(sum>=500)
    {
        printf("应付款:%.1f",sum*0.8);
     }
    else
        printf("应付款:%.1f",sum*0.9);       
}

温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-10-17
#include<stdio.h>
main()
{
int i,n;
float m,sum=0;
printf("请输入商品的数量:");
scanf("%d",&n);
printf("请输入每个商品的价格:\n");
for(i=1;i<=n;i++)
{
scanf("%f",&m);
sum+=m;
}

printf("总付款:%f",sum);
if(sum>=300&&sum<500)
sum=sum*0.9;
else if(sum>=500)
sum=sum*0.8;
printf("应付款:%f",sum);
}

300以下不打折就是总付款,所以不用加条件语句,其他的不懂可以再问
第2个回答  2013-10-17
#include <stdio.h>
void main()
{
int i,n;
float a[100],sum=0;
scanf("%d",&n);
for(i=0;i<n;i++){
scanf("%f",&a[i]);
sum+=a[i];
}
if(sum>=500)
printf("%.1f",sum*0.8);
else if(sum>=300)
printf("%.1f",sum*0.9);
else 
printf("%.1f",sum);

}
满意请采纳!