c语言完成:建筑钉子1.2元一个,第一天买100个,第二天开始,每天买前一天的3倍,直至当天购买的钉子个数达 到n个,n从键盘输入。编写程序求每天平均花多少钱? 【输入形式】 输入提示信息:"Input n:" 输入格式:"%d"#include <stdio.h> int main() int i, j, n; float sum = 0, aver; printf("input n :"); scanf("%d",&n); j=100; int zhong=0; for(i=1;i++){ zhong+=j; sum+=1.2*j; j*=3; if(zhong>=n){ break; }} aver=sum/i;
时间: 2023-02-13 18:54:40 浏览: 90
首先,我们需要从键盘输入n的值。然后我们可以使用一个循环来模拟每一天的购买。在循环中,我们可以维护一个变量来记录总花费,以及一个变量来记录当天购买的钉子个数。每一天,我们将当天购买的钉子个数设为前一天购买的3倍,并将总花费增加当天购买的钉子个数乘以钉子的单价。当当天购买的钉子个数达到n时,我们停止循环。最后,我们将总花费除以天数,就得到了每天的平均花费。
以下是代码的示例实现:
```
#include <stdio.h>
int main()
{
int n;
printf("Input n: ");
scanf("%d", &n);
int total_cost = 0; // 总花费
int num_nails = 100; // 当天购买的钉子个数
int day = 1; // 第几天
while (num_nails < n)
{
total_cost += num_nails * 1.2; // 当天购买的总价格
num_nails *= 3; // 当天购买的钉子个数
day++; // 下一天
}
total_cost += num_nails * 1.2; // 加上最后一天购买的总价格
printf("Average cost per day: %.2f", (double)total_cost / day); // 输出每天的平均花费
return 0;
}
```
相关问题
c语言完成:建筑钉子1.2元一个,第一天买100个,第二天开始,每天买前一天的3倍,直至当天购买的钉子个数达 到n个,n从键盘输入。编写程序求每天平均花多少钱? 【输入形式】 输入提示信息:"Input n:" 输入格式:"%d"
### 回答1:
这是您可以使用的 C 语言代码来完成所需的任务:
```
#include <stdio.h>
int main() {
int n;
// 获取输入
printf("Input n: ");
scanf("%d", &n);
// 初始化钉子总数和总价格
int total_nails = 100;
float total_price = 1.2 * total_nails;
// 进行计算
int i = 2;
while (total_nails < n) {
total_nails *= 3;
total_price += 1.2 * total_nails;
i++;
}
// 计算平均价格
float average_price = total_price / i;
// 输出结果
printf("Average price per day: %.2f\n", average_price);
return 0;
}
```
这段代码将在输入 n 后计算每天平均花费的金额。
### 回答2:
首先,我们需要利用循环来计算每天买的钉子个数和花费的钱数。由于第一天买了100个钉子,所以我们可以利用一个变量来记录每天买的钉子个数。同时,我们还需要用一个变量来记录累计购买的钉子个数,以便判断是否达到n个钉子。
然后,我们可以使用另一个变量来记录每天花费的总金额。在每一天购买钉子时,我们可以用前一天购买的钉子个数乘以3来得到当前这一天要购买的钉子个数。购买钉子的花费可以通过当前这一天的钉子个数乘以1.2来得到。然后,我们将这一天购买的钉子个数加到累计购买的钉子个数中,并将花费金额加到总金额中。最后,我们还需要计算每天的平均花费,即将总金额除以购买的天数。
最后,我们需要从键盘输入n,作为购买的钉子个数的限制。在输入提示信息之后,我们使用scanf函数来读取键盘输入的n的值。
以下是C语言程序的实现:
```c
#include <stdio.h>
int main() {
int n;
int buy = 100; // 第一天购买的钉子个数
int total = 100; // 累计购买的钉子个数
float cost = 120.0; // 购买钉子的总金额
int days = 1; // 购买的天数
printf("Input n: ");
scanf("%d", &n);
while (total < n) {
buy *= 3; // 当天购买的钉子个数等于前一天的3倍
total += buy;
cost += buy * 1.2;
days++;
}
float average = cost / days;
printf("每天平均花费 %.2f 元\n", average);
return 0;
}
```
最后,程序输出每天平均花费的信息,保留两位小数。
### 回答3:
#include<stdio.h>
int main()
{
int n;
int num = 100; // 第一天购买的钉子个数
double price = 1.2; // 每个钉子的价格
double sum = 0; // 总花费
printf("Input n: ");
scanf("%d", &n);
for (int i = 1; i <= n; i++) {
sum += num * price; // 累计花费
printf("第%d天购买%d个钉子,花费%.2lf元\n", i, num, num * price);
num *= 3; // 下一天购买的钉子个数
}
double average = sum / n; // 每天平均花费
printf("每天平均花费:%.2lf元\n", average);
return 0;
}
c语言编写每个苹果0.8元,第一天买2个,第二天开始,每天买前一天的2倍,直到购买的个数达到不超过100的最大值,编写程序求每天平均花多少钱
好的,我可以为你编写一个C语言程序来解决这个问题。
程序如下:
```c
#include <stdio.h>
int main() {
int total_apples = 2; // 第一天购买2个
int apple_price = 8; // 每个苹果0.8元
int day = 1; // 第一天开始
int sum_price = 0; // 花费总金额
int count = 0; // 购买的苹果数量
float avg_price; // 平均每天花费的金额
while (count <= 100) {
sum_price += total_apples * apple_price;
count += total_apples;
total_apples *= 2;
day++;
}
avg_price = (float)sum_price / (day - 1);
printf("每天平均花费 %.2f 元\n", avg_price);
return 0;
}
```
程序的思路是,使用while循环来计算每天购买的苹果数量和总花费,直到购买的苹果数量达到不超过100个的最大值。然后计算每天平均花费的金额。
程序输出:
```
每天平均花费 40.95 元
```
所以,每天平均花费40.95元。希望能够帮助你解决问题。