7-3 查询水果价格

这篇具有很好参考价值的文章主要介绍了7-3 查询水果价格。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

分数 15

全屏浏览题目

切换布局

作者 C课程组

单位 浙江大学

给定四种水果,分别是苹果(apple)、梨(pear)、桔子(orange)、葡萄(grape),单价分别对应为3.00元/公斤、2.50元/公斤、4.10元/公斤、10.20元/公斤。

首先在屏幕上显示以下菜单:

[1] apple
[2] pear
[3] orange
[4] grape
[0] exit

用户可以输入编号1~4查询对应水果的单价。当连续查询次数超过5次时,程序应自动退出查询;不到5次而用户输入0即退出;输入其他编号,显示价格为0。

输入格式:

输入在一行中给出用户连续输入的若干个编号。

输出格式:

首先在屏幕上显示菜单。然后对应用户的每个输入,在一行中按格式“price = 价格”输出查询结果,其中价格保留两位小数。当用户连续查询次数超过5次、或主动输入0时,程序结束。

输入样例1:

3 -1 0 2

输出样例1:

[1] apple
[2] pear
[3] orange
[4] grape
[0] exit
price = 4.10
price = 0.00

输入样例2:

1 2 3 3 4 4 5 6 7 8

输出样例2:

[1] apple
[2] pear
[3] orange
[4] grape
[0] exit
price = 3.00
price = 2.50
price = 4.10
price = 4.10
price = 10.20

代码长度限制

16 KB

时间限制

400 ms

内存限制

64 MB

我的答案:

解题过程:

1. 分析问题:
首先,需要在屏幕上显示一个菜单。然后,根据用户的输入显示相应的水果价格。程序的两种退出方式:连续查询5次或用户输入0。

2. 确定解题步骤:

  • 显示菜单。
  • 创建一个数组或其他数据结构来存储水果和其价格。
  • 迭代最多5次或直到用户输入为0,进行以下操作:
    • 读取用户的输入。
    • 根据输入查询并显示价格。

3. 写代码:

C语言:

#include <stdio.h>

int main() {
    double prices[] = {0.0, 3.00, 2.50, 4.10, 10.20};
    int choice, count = 0;

    // Display menu
    printf("[1] apple\n");
    printf("[2] pear\n");
    printf("[3] orange\n");
    printf("[4] grape\n");
    printf("[0] exit\n");

    while (count < 5) {
        scanf("%d", &choice);
        
        if (choice == 0) {
            break;
        }

        if (choice >= 1 && choice <= 4) {
            printf("price = %.2f\n", prices[choice]);
        } else {
            printf("price = 0.00\n");
        }
        
        count++;
    }

    return 0;
}

C++:

#include <iostream>
#include <iomanip>
using namespace std;

int main() {
    int choice, count = 0;

    // Display menu
    cout << "[1] apple" << endl;
    cout << "[2] pear" << endl;
    cout << "[3] orange" << endl;
    cout << "[4] grape" << endl;
    cout << "[0] exit" << endl;

    while (count < 5) {
        cin >> choice;

        if (choice == 0) {
            break;
        }

        cout << "price = " << fixed << setprecision(2);
        switch (choice) {
            case 1:
                cout << 3.00 << endl;
                break;
            case 2:
                cout << 2.50 << endl;
                break;
            case 3:
                cout << 4.10 << endl;
                break;
            case 4:
                cout << 10.20 << endl;
                break;
            default:
                cout << "0.00" << endl;
                break;
        }

        count++;
    }

    return 0;
}

总结:

学到了什么?

这道题目提供了多个学习和思考点:

1. **选择结构的应用**:通过使用`switch`语句,我们可以明白其如何根据不同的条件选择不同的执行路径。它是一个常用的结构,特别是当有多个条件需要判断时。

2. **循环控制**:这道题目要求在查询超过5次后自动退出,这介绍了循环的使用,并在循环内部通过条件判断进行中断。

3. **输入/输出格式的控制**:使用`fixed`和`setprecision`来控制输出格式,让我们知道如何以特定的格式显示数字。

4. **用户交互与界面**:通过提供一个简单的菜单,我们学习了如何创建基础的用户交互界面。

5. **边界条件的处理**:处理无效的输入是编程中的一个常见任务。这里,如果输入的选项不在预期的范围内,则输出为0.00,这教给我们总是要考虑和处理可能的非预期输入。

6. **程序的组织和结构**:虽然这是一个相对简单的程序,但它的结构(如何组织`switch`语句、如何控制循环等)为更复杂的程序提供了模板。

7. **问题分析与解决策略**:在实际编程任务中,首先要对问题进行分析,确定输入和输出,然后选择适当的策略来解决它。这道题目提供了一个很好的练习机会,因为它要求从问题描述中提取关键信息,并将这些信息转化为有效的代码。

总的来说,这道题目提供了一个很好的练习机会,通过它我们可以学习并加强对基本编程概念和策略的理解。

7-3 查询水果价格,PTA课后练习,c++

 文章来源地址https://www.toymoban.com/news/detail-651587.html

到了这里,关于7-3 查询水果价格的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 数据结构(Data Structure)(C/C++)PTA习题+课后习题

    课本:《数据结构——从概念到c++实现(第三版)》 1-1 数据元素是数据的最小单位。 F         课本:数据元素是数据的基本单位;构成数据元素的最小单位称为数据项,数 据元素是讨论数据结构时涉及的最小数据单 位,数据结构是指相互之间存在一定关系的数据元素

    2024年02月04日
    浏览(42)
  • 【C/PTA】结构体专项练习

    本文结合PTA专项练习带领读者掌握结构体,刷题为主注释为辅,在代码中理解思路,其它不做过多叙述。 小明最近喜欢玩一款新游戏。在该游戏中,需要组建队伍去完成任务以获取奖励。小明挑出了所有的队员(每个人能力不同),需要一个函数挑出队长(能力最强的队员)

    2024年02月03日
    浏览(39)
  • 【C/PTA】结构体进阶练习

    本文结合PTA专项练习带领读者掌握结构体,刷题为主注释为辅,在代码中理解思路,其它不做过多叙述。 “一帮一学习小组”是中小学中常见的学习组织方式,老师把学习成绩靠前的学生跟学习成绩靠后的学生排在一组。本题就请你编写程序帮助老师自动完成这个分配工作,

    2024年02月05日
    浏览(36)
  • 【C/PTA】指针专项练习(一)

    本文结合PTA专项练习带领读者掌握指针,刷题为主注释为辅,在代码中理解思路,其它不做过多叙述。 删除一个字符串中的所有数字字符。 函数接口定义: 其中 s 是用户传入的参数。 函数的功能是删除指针 s 所指的字符串中的所有数字字符。 裁判测试程序样例: 输入样例

    2024年02月04日
    浏览(42)
  • 【C/PTA】函数专项练习(四)

    本文结合PTA专项练习带领读者掌握函数,刷题为主注释为辅,在代码中理解思路,其它不做过多叙述。 函数 fun 的功能是:根据整型形参 n,计算某一数据项的值。 A[1]=1, A[2]=1/(1 + A[1]), A[3]=1/(1 + A[2]), …,A[n]=1/(1 + A[n-1]) 例如,若 n=10,则应输出:A10=0.617977。 函数接口定义: 其

    2024年02月05日
    浏览(37)
  • 【C/PTA】指针专项练习(二)

    本文结合PTA专项练习带领读者掌握指针,刷题为主注释为辅,在代码中理解思路,其它不做过多叙述。 《孙子算经》记载:“今有雉兔同笼,上有三十五头,下有九十四足,问雉兔各几何?” 函数原型 说明:head 和 foot 为头和脚的数量,chicken 和 rabbit 为指示鸡和兔数量的指

    2024年02月04日
    浏览(43)
  • 【C/PTA】选择结构专项练习(额外)

    本文结合PTA专项练习带领读者掌握选择结构,刷题为主注释为辅,在代码中理解思路,其它不做过多叙述。 孔融小时候聪明好学,才思敏捷,巧言妙答,大家都夸他是奇童。4岁时,他已能背诵许多诗赋,并且懂得礼节,父母亲非常喜爱他。 一日,父亲买了一些梨子,特地拣

    2024年02月08日
    浏览(45)
  • 【PTA-C语言】编程练习4 - 数组Ⅱ

    如果代码存在问题,麻烦大家指正 ~ ~ 有帮助麻烦点个赞 ~ ~ 作者 李民 单位 武汉理工大学 本题模拟2048游戏的规则,提供4X4个格子,输入每个格子的初始值(空白格子值为0),玩家选择向下移动,所有数字向下靠拢,相同的数字相撞时会合并。移动结束后,输出合并后的数值

    2024年02月03日
    浏览(46)
  • 团体程序设计天梯赛----pta 练习集

    这道超级简单的题目没有任何输入。 你只需要在一行中输出著名短句“Hello World!”就可以了。 解法 略 本题要求你写个程序把给定的符号打印成沙漏的形状。例如给定17个“*”,要求按下列格式打印 解法 记录一下个数就好 给定一个 k 位整数 N,请编写程序统计每种不同的个

    2024年02月13日
    浏览(47)
  • 数据结构第5章练习答案(PTA)

    2-1以下说法错误的是( A ) A.树形结构的特点是一个结点可以有多个直接前趋 B.线性结构中的一个结点至多只有一个直接后继 C.树形结构可以表达(组织)更复杂的数据 D.树(及一切树形结构)是一种\\\"分支层次\\\"结构 E.任何只含一个结点的集合是一棵树 2-2利用二叉链表存储树,则根

    2024年02月04日
    浏览(51)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包