当前位置: 首页 > news >正文

一般网站开发的硬件要求网络工具

一般网站开发的硬件要求,网络工具,企业管理的五大核心,wordpress数据库内容目录 if语句例题题目分析代码题目总结 循环语句例题题目分析代码题目总结 函数例题题目分析代码题目总结 if语句例题 计算1/1-1/21/3-1/41/5 …… 1/99 - 1/100 的值,打印出结果题目分析 1:首先我们不难看出算式中的加号和减号是交替出现的&#xff0…

目录

  • if语句例题
    • 题目分析
    • 代码
    • 题目总结
  • 循环语句例题
    • 题目分析
    • 代码
    • 题目总结
  • 函数例题
    • 题目分析
    • 代码
    • 题目总结

if语句例题

计算1/1-1/2+1/3-1/4+1/5 …… + 1/99 - 1/100 的值,打印出结果

题目分析

1:首先我们不难看出算式中的加号和减号是交替出现的,因此这种情况我们可以理解为要么奇数符号为正,偶数符号为负,或者奇数符号为负,偶数符号为正
2:如果我们不关注算式中的正负号的话,我们可以写出通项,即an=1/n(n>=1),由于n为分母且每一项逐渐加1,因此我们可以用循环中的i表示分母的变化

代码

#include<stdio.h>
int main()
{int n;float sum = 0, an;//如果为int会因为1/i中的小数部分丢失,导致最后的结果为1scanf("%d", &n);//这里的scanf可以不要,直接让n=100也行for(int i=1;i<=n;i++){if (i % 2)//判断奇数{an = 1.00 / i;//因为1/100中的小数为两位数,因此我们需要他保留两位小数sum = sum + an;}else//偶数{an = -1.00/ i;sum = sum + an;}}printf("%f", sum);return 0;
}

题目总结

1:遇到加减法交替出现的时候我们可以判断奇偶数来确定符号(如果用<math.h>头文件的话可以用次方来表示这种规律)
2:如果算式中的通项存在一个数字是变量,并且是以等差的方式增加的话我们可以用循环来表示变量,即i+d(d为公差)
3:要注意每次计算时会不会丢失数据就比如上面代码中的1/i,会丢失小数点后的数据

循环语句例题

编写代码在一个整形有序数组中查找具体的某个数。
要求:使用二分查找,并且找到了就打印数字所在的下标,找     不到则输出:找不到。

题目分析

1:这道题需要用到二分查找。
二分查找就是每次查找后就减去所查找数的一半,比如我们要从1 2 3 4 5 这5个数中找出2,根据二分查找我们会最先寻找最中间的数3,如果3大了,那么就会在1 2 这两个数中寻找1,如果1又小了,那么就只能是2。
2:因为是有序数组,为了方便解题,我们可以将有序数组设的非常特殊。
3:为了表示每次二分查找的下标,我们需要设置right=数组最右边的下标,left数组最左边的下标,还有seek=(right+left)/2表示每次二分查找的下标。
4:每次查找后right或者left都会变化,进而缩小查找的范围

代码

#include<stdio.h>
int main()
{int arr[10] = { 0,1,2,3,4,5,6,7,8,9 };int n = 0;printf("输入你想找的数字\n");scanf("%d", &n);int seek = 0;int right = 9, left = 0;int sz = sizeof(arr) / sizeof(arr[0]);//计算数组的大小while (1){seek = (right - left) / 2 + left;/*如果用的是(right + left) / 2可能会因为计算结果过大导致计算不出数字的结果,因为int有最大值*/if (seek + 1 == n && 0 <= n && n < sz)//因为数组比较特殊,下标+1就是对应的数组元素{printf("找到了\n");printf("下标是%d,数字为%d\n", seek, arr[seek + 1]);break;}else if (seek + 1 < n && 0 <= n && n < sz){left = seek + 1;seek = (right - left) / 2 + left;continue;}else if (seek + 1 > n && 0 <= n && n < sz){right = seek - 1;seek = (right - left) / 2 + left;continue;}else{printf("找不到");break;}}return 0;
}

题目总结

1:二分查找用在查找大型数据中效果非常显著,但前提是要有从大到小或者从小到大的规律排序才行
2:计算数组的大小是我们日常写代码时经常用到的一种方式,因此需要熟练运用
3:要注意每一种数据类型的范围,避免计算结果过大或过小导致超出数据类型范围

函数例题

实现一个函数is_prime,判断一个数是不是素数。
利用上面实现的is_prime函数,打印100到200之间的素数。

题目分析

1:我们需要设置一个函数来判断一个数是否是素数,因此如果是素数我们就让代码返回1,不是素数就让代码返回0(这里的代码没有用这个方法)
2:素数的定义一个大于1的自然数,除了1和它自身外,不能被其他自然数整除的数叫做质数,而且我们知道一个大于1的自然数可以写成一个数的平方,比如16=4×4=a*b,假设a<b,那么我们可以推断出a的范围[1,4](我们这里讨论的是a为正整数)b的范围则是[4,16],为了好判断素数,我们只需要看他是否能被a整除就行了(a!=1)
3:因为是打印100到200之间的素数,所以一定会用到循环

代码

#include<stdio.h>
#include<math.h>
int is_prime(int n)
{for (int x = 2; x <= sqrt(n); x++)//因为我们所找的数都是可以被1整除的,所以我们之间从2开始,sqrt(n)为n的算数平方根{if (n % x != 0)//判断素数的条件即不能被整除{printf("%d ", n);break;}elsebreak;}return 0;
}
int main()
{for (int i = 100; i <= 200; i++)//通过循环不断的调用函数,不断的去找出里面的素数{is_prime(i);}return 0;
}

题目总结

判断素数可以用以上的方法,使代码效率更加高,当然其他的题依然可以用到以上的方法

http://www.hkea.cn/news/294147/

相关文章:

  • 长沙市在建工程项目免费seo快速排名工具
  • 南宁定制网站制作电话图片外链生成工具
  • 哪些网站做的海报比较高大上百度客服电话是多少
  • 菏泽网站建设电话常州seo外包
  • 做木皮的网站裂变营销五种模式十六种方法
  • 精美 企业网站模板微信软文推广怎么做
  • 怎么建立一个网站里面可以查询资料百度权重域名
  • 网站建设顺序镇江交叉口优化
  • 低价企业网站搭建软文新闻发布网站
  • 创造与魔法官方网站做自己喜欢的事seo视频
  • 淘宝联盟推广网站怎么做吉安seo招聘
  • 工程招聘网站如何免费制作自己的网站
  • 网站建设调研问卷搜易网托管模式的特点
  • 在哪个网站可以做java面试题宁德市蕉城区疫情
  • 2021年重大新闻事件seo快速工具
  • 拼多多网店南宁优化推广服务
  • 洛阳建筑公司排名长沙官网seo服务
  • 网站关键词优化公司哪家好企业网站seo点击软件
  • 做网站有必要?优化师培训
  • 网站怎么发布信息百度推广优化技巧
  • 西安软件培训百度百科优化排名
  • 网站上文章加入音乐是怎么做的网页代码
  • 深圳公布最新出行政策徐州seo招聘
  • wordpress的漏洞seo优化知识
  • 网站建设高端seo和sem分别是什么
  • 成交功能网站怎么推广自己的产品
  • 北京宣传片网站seo综合查询
  • 滨海网站建设公司百度指数的使用
  • 湛江网站建设外包seo到底是什么
  • 做收集信息的网站河源市企业网站seo价格