• C语言题目练习


    目录

    前言

    1、网购

    1.1题目

    描述

    输入描述:

    输出描述:

    ​编辑

    1.1 解题

    2、带空格直角三角形图案

    2.1题目

    描述

    输入描述:

    输出描述:

    ​编辑

    2.2 解题

    3、小乐乐改数字

    3.1 题目

    描述

    输入描述:

    输出描述:

    3.3解题

    4 结语


    前言

            纸上得来终觉浅,觉知此事要躬行。C语言的学习不仅要了解理论知识,更要不断练习,在练习中成长。下面我将给出几到例题,并分析讲解,帮助我们在实践中了解C语言。

    1、网购

    1.1题目

    描述

    KiKi非常喜欢网购,在一家店铺他看中了一件衣服,他了解到,如果今天是“双11”(11月11日)则这件衣服打7折,“双12” (12月12日)则这件衣服打8折,如果有优惠券可以额外减50元(优惠券只能在双11或双12使用),求KiKi最终所花的钱数。

    数据范围:衣服价格满足 1≤val≤100000 

    输入描述:

    一行,四个数字,第一个数表示小明看中的衣服价格,第二和第三个整数分别表示当天的月份、当天的日期、第四个整数表示是否有优惠券(有优惠券用1表示,无优惠券用0表示)。 注:输入日期保证只有“双11”和“双12”。

    输出描述:

    一行,小明实际花的钱数(保留两位小数)。(提示:不要指望商家倒找你钱)

    1.1 解题

            看完本题,先想思路。本题主题就是一个条件判断的程序,输入的参数分别是商品价格、当天日期(只能是双十一和双十二中的一个),最后一个表示有无优惠卷,有就为1,没有就是0。

            下面开始编程:

    1. #include
    2. int main()
    3. {
    4. float a = 0;
    5. int b = 0;
    6. int c = 0;
    7. int d = 0;
    8. scanf("%f", &a);
    9. scanf("%d", &b);
    10. scanf("%d", &c);
    11. scanf("%d", &d);
    12. int i = 0;
    13. float val = 0;
    14. if (b == 11 && c == 11)
    15. {
    16. val = a * 0.7;
    17. if (d == 1)
    18. {
    19. val = val - 50;
    20. }
    21. }
    22. if (b == 12 && c == 12)
    23. {
    24. val = a * 0.8;
    25. if (d == 1)
    26. {
    27. val = val - 50;
    28. }
    29. }
    30. if(val<0)
    31. {
    32. val=0;
    33. }
    34. printf("%.2f", val);
    35. return 0;
    36. }

            输出成功。

    2、带空格直角三角形图案

    2.1题目

    描述

    KiKi学习了循环,BoBo老师给他出了一系列打印图案的练习,该任务是打印用“*”组成的带空格直角三角形图案。

    输入描述:

    多组输入,一个整数(2~20),表示直角三角形直角边的长度,即“*”的数量,也表示输出行数。

    输出描述:

    针对每行输入,输出用“*”组成的对应长度的直角三角形,每个“*”后面有一个空格。

    2.2 解题

            注意,这是需要多组输入的。解此题只需要用到循环即可。

            下面看代码:

    1. #include
    2. int main()
    3. {
    4. int a = 1;
    5. int i = 0;
    6. int j = 0;
    7. while (a) {
    8. scanf("%d", &a);
    9. for (i = 0; i < a; i++)
    10. {
    11. for (j = 0; j < a; j++)
    12. {
    13. if (i + j >= a - 1)
    14. {
    15. printf("* ");
    16. }
    17. else
    18. {
    19. printf(" ");
    20. }
    21. }
    22. printf("\n");
    23. }
    24. }
    25. return 0;
    26. }

            通过循环,只需要判断何时需要打印‘* ’,何时需要打印“空格”,即可。

    3、小乐乐改数字

    3.1 题目

    描述

    小乐乐喜欢数字,尤其喜欢0和1。他现在得到了一个数,想把每位的数变成0或1。如果某一位是奇数,就把它变成1,如果是偶数,那么就把它变成0。请你回答他最后得到的数是多少。

    输入描述:

    输入包含一个整数n (0 ≤ n ≤ 109)

    输出描述:

    输出一个整数,即小乐乐修改后得到的数字。

    3.3解题

            此题需要我们知道,如何将一个整型数据的每一位进行判断,如何去判断每一位数的奇偶性。

            对于奇偶判断,只需要%2,值为1则为奇数,值为0则为偶数。整型数组每次‘/10’,少一位。比如123这个数字,一次'/10',就变成12,再'/10',就变成1。利用这个性质,我们写出如下代码:

    1. #include
    2. #include
    3. int main()
    4. {
    5. int n = 0;
    6. scanf("%d", &n);
    7. int i = 0;
    8. int a = 0;
    9. for (i = 0;i < 9;i++)
    10. {
    11. if (n % 2 == 1)
    12. {
    13. a = a + (int)pow(10, i);
    14. }
    15. n = n / 10;
    16. }
    17. printf("%d", a);
    18. return 0;
    19. }

    验证输出: 

    4 结语

            每天保持练习,持之以恒,我们的C语言技术才会越发熟练,不要小瞧每一次练习。

  • 相关阅读:
    几种后端开发中常用的语言。
    ES 未分片 导致集群状态飘红
    星环科技TDS 2.4.0 发布: 数据开发、数据治理、数据运营套件能力再次升级
    大数据开发工程师要求高么?有前景么
    python经典百题之逐字写文件
    IT入门知识大纲(0/10)
    无刷三相直流电机电动工具驱动方案设计
    YOLO目标检测——无人机航拍输电线路绝缘瓷瓶数据集下载分享【对应voc、coco和yolo三种格式标签】
    计算机竞赛 深度学习 机器视觉 人脸识别系统 - opencv python
    统计学考研笔记:回归方程计算题
  • 原文地址:https://blog.csdn.net/Pxiaoyao/article/details/136333651