码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 临近期末,这些题不来看看吗?(上)


    目录

    1、在屏幕上输入9*9乘法表

    2、输入一个值,打印对应的乘法口诀表

    3、求十个整数的最大值

    4、分数求和:计算1/1 - 1/2 + 1/3 - 1/4 + 1/5 +...+ 1/99 - 1/100(3种方法)

    5、编写程序数一下,1到100的所有整数中出现多少个9(2种方法)

    6、输入一个数n,计算1到n的值(两种方法)


    1、在屏幕上输入9*9乘法表

    1. #include
    2. int main()
    3. {
    4. int i = 0;
    5. for (i = 1; i <= 9; i++)//外层for循环控制行
    6. {
    7. int j = 0;
    8. for (j = 1; j <= i; j++)//内层for循环控制列
    9. {
    10. printf("%d*%d=%-2d ", i, j, i * j);//输出结果,%-2d控制宽度为两个字符,且向左对齐
    11. }
    12. printf("\n");
    13. }
    14. return 0;
    15. }

    转化说明的结果

    •0标志

    设定0标志之后,如果数值的前面有空余位,则用0补齐位数(如果省略了0标志,则会用空白位补齐位数)。

    •最小字段宽度

    就是至少要显示出的字符位数。

    例如:%5d --- 显示至少5位的十进制整数

    另外,如果设定“-”,数据会左对齐显示,未设定则会右对齐。

    2、输入一个值,打印对应的乘法口诀表

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

     3、求十个整数的最大值

    1. #include
    2. int main()
    3. {
    4. int i = 0; //下标
    5. int arr[10] = { 0 };
    6. int sz = sizeof(arr) / sizeof(arr[0]);//求数组元素个数
    7. //输入
    8. for (i = 0; i < sz; i++)
    9. {
    10. scanf("%d", &arr[i]);
    11. }
    12. int max = arr[0];//先把数组中第一个元素视作最大的,再在以下的循环中比较
    13. for (i = 1; i < sz; i++)
    14. {
    15. if (arr[i] > max)
    16. {
    17. max = arr[i];//每次比较后,将最大的值附给MAX
    18. }
    19. }
    20. printf("%d\n", max);
    21. return 0;
    22. }

    4、分数求和:计算1/1 - 1/2 + 1/3 - 1/4 + 1/5 +...+ 1/99 - 1/100(3种方法)

    法一:

    分母奇数为正,分母偶数为负

    1. #include
    2. int main()
    3. {
    4. int o = 0;//偶数
    5. int j = 0;//奇数
    6. double sum1 = 0.0;//偶数的和
    7. double sum2 = 0.0;//奇数的和
    8. double sum = 0.0;//总和
    9. for (j = 1; j <= 99; j += 2)
    10. {
    11. sum2 = sum2 + (1.0/j); //计算分母为奇数的和
    12. }
    13. for (o = 2; o <= 100; o += 2)
    14. {
    15. sum1 = sum1 + (1.0/o); //计算分母为偶数的和
    16. }
    17. //奇数的和-偶数的和
    18. sum = sum2 - sum1;
    19. //打印结果
    20. printf("%f\n", sum);
    21. return 0;
    22. }

    法二:

    与法一类似

    1. #include
    2. int main()
    3. {
    4. int i = 0;
    5. double sum = 0.0;
    6. for (i = 1; i <= 100; i++)
    7. {
    8. if (i % 2 == 1)//分母是奇数就相加
    9. {
    10. sum = sum + (1.0 / i);
    11. }
    12. else //分母为偶数就相减
    13. {
    14. sum = sum - (1.0 / i);
    15. }
    16. }
    17. printf("%f\n", sum);
    18. return 0;
    19. }

    法三:

    1. #include
    2. int main()
    3. {
    4. int i = 0;
    5. double sum = 0.0;
    6. int flag = 1;
    7. for (i = 1; i <= 100; i++)
    8. {
    9. sum = sum + flag * (1.0 / i);
    10. flag = -flag;
    11. }
    12. printf("%f\n", sum);
    13. }

    5、编写程序数一下,1到100的所有整数中出现多少个9(2种方法)

    个位:9 19 29 39 49 59 69 79 89

    十位:90 91 92 93 94 95 96 97 98    

    个位和十位:99 

    法一:

    1. #include
    2. int main()
    3. {
    4. int i = 0;
    5. int count = 0;//计算有多少个9
    6. for (i = 1; i <= 100; i++)
    7. {
    8. if (i % 10 == 9) //判断个位含9
    9. {
    10. count++;
    11. }
    12. else if (i / 10 == 9) //判断十位含9
    13. {
    14. count++;
    15. }
    16. }
    17. printf("%d\n", count+1 );//+1的原因是99的十位上还有一个1
    18. return 0;
    19. }

    法二:

    因为if和else if条件为真只会进去一个,去掉else,这样99个位上的9也能+1,十位上的9也能+1

    1. #include
    2. int main()
    3. {
    4. int i = 0;
    5. int count = 0;//计算有多少个9
    6. for (i = 1; i <= 100; i++)
    7. {
    8. if (i % 10 == 9) //判断个位含9
    9. {
    10. count++;
    11. }
    12. if (i / 10 == 9) //判断十位含9
    13. {
    14. count++;
    15. }
    16. }
    17. printf("%d\n", count );
    18. return 0;
    19. }

    6、输入一个数n,计算1到n的值(两种方法)

    法一:

    1. #include
    2. int main()
    3. {
    4. int n = 0;
    5. int i = 0;
    6. int sum = 0;
    7. //输入
    8. scanf("%d", &n);
    9. //循环产生1~n的数
    10. for (i = 1; i <= n; i++)
    11. {
    12. //求和
    13. sum = sum + i;//sum += i
    14. }
    15. //输出
    16. printf("%d\n", sum);
    17. return 0;
    18. }

    法二:

    运用数学中的等差数列求和

    1. #include
    2. int main()
    3. {
    4. int n = 0;
    5. int sum = 0;
    6. //输入
    7. scanf("%d", &n);
    8. //等差求和
    9. sum = n * (1 + n) * 1 / 2;
    10. printf("%d\n", sum);
    11. return 0;
    12. }

  • 相关阅读:
    理论篇2:深度学习之----优化器(1)
    AI市场的资本谜团与流向
    nuc980学习笔记7-设置开机自启动
    数组相关面试题--1.旋转数组
    SpringBoot实现代码生成器——基于SpringBoot和Vue的后台管理系统项目系列博客(十)
    Data Analysis With Python
    软考软件设计师-存储管理-文件管理-计算机网络(中
    JDK1.8的ConcurrentHashMap底层实现解析
    woocommerce虚拟商品和可下载商品介绍
    【DC-DC升压电推剪方案】FP6277,FP6296电源升压芯片在电推剪中扮演着一个怎样的角色?带你深入了解电推剪的功能和应用及工作原理
  • 原文地址:https://blog.csdn.net/Weraphael/article/details/127936129
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号