今天开始入驻博客园 X)(考试刷题)

Posted 夺夺被使用了

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了今天开始入驻博客园 X)(考试刷题)相关的知识,希望对你有一定的参考价值。

刷完抖音随便写了道简单的题,写完发现运行错误,题的要求如下

Write a function double sum_sequence(int n) that calculates and returns the sum \\begin{equation*} \\frac{1}{1} + \\frac{1+2}{1 \\times 2} + \\frac{1 + 2 + 3}{1 \\times 2 \\times 3} + \\frac{1 + 2 + 3 + 4}{1 \\times 2 \\times 3 \\times 4} + \\cdots + \\frac{1 + 2 + \\cdots + n}{n!} \\end{equation*} where n is a positive integer argument passed to the function. For example, sum_sequence(3) should return the value (1/1) + (3/2) + (6/6) = 3.5.

大致意思就是

编写一个函数,计算并返回总和 \\begin{equation*} \\frac{1}{1} + \\frac{1+2}{1 \\times 2} + \\frac{1 + 2 + 3}{1 \\ times 2 \\times 3} + \\frac{1 + 2 + 3 + 4}{1 \\times 2 \\times 3 \\times 4} + \\cdots + \\frac{1 + 2 + \\cdots + n}{n!} \\end{equation*} 其中是传递给函数的正整数参数。例如,应该返回值 (1/1) + (3/2) + (6/6) = 3.5。double sum_sequence(int n)nsum_sequence(3)

 

发现自己一直忽略的问题是整数与整数相除会产生整数类型,强制转换精度会有很大影响,在输出时分子乘上1.0将分子转换为浮点类型就可以解决这个问题。

 1 int main() {
 2     int a;
 3     int numerator = 0;
 4     int denominator = 1;
 5     scanf("%d", &a);
 6     for (int i = 1; i <= a; ++i) {
 7         numerator += i;
 8     }
 9     for (int j = 1; j <= a; ++j) {
10         denominator *= j;
11     }
12     double c = numerator*1.0/denominator;
13     printf("%f",c);
14     return 0;
15 }

 

入驻博客园

Linux系统起源及主流发行版

 
  本文首先介绍了三大服务器系统,然后介绍了Linux系统的出现背景、以及主要release版本,最后介绍了Linux的文件系统和目录结构。
 
  服务器系统,即安装在服务器上的操作系统。服务器操作系统也可以安装在个人PC机上,但是相对于PC机上的操作系统,服务器系统需要提供更多的功能,比如额外的管理、配置、稳定和安全功能。
 
  • 三大服务器操作系统

  服务器操作系统主要分为三大系列Windows、Unix和Linux。
 
  Windows
 
  如果你使用过个人PC,相信你对Windows有一定的了解了,甚至非常熟悉了,现在个人PC机上大部分安装的是Windows7、Windows 10系统。使用在服务器上的主要有Win2000 Server、Win2003 Server,Windows Server2008.
 
  Unix
 
  UNIX操作系统(尤尼斯),是一个强大的多用户、多任务操作系统,支持多种处理器架构,按照操作系统的分类,属于分时操作系统,最早由KenThompson、Dennis Ritchie和Douglas McIlroy于1969年在AT&T的贝尔实验室开发。
 
  Linux
 
  Unix系统在发布之初,用户可以自由使用、修改、传播,而后随着用户数量额日渐增加,提供维护支持的公司发现了其中潜藏的巨大的利益,1979年,Hewlett-Packard(惠普)公司对以SystemV为基础所研发成的类UNIX操作系统发布版本声明。开发出一款免费开源的新系统尤为重要。
1984年,Richard Stallman发起了GNU项目和自由软件基金会,创建了一些开源的可以运行在UNIX系统上的实用工具,包括Shell工具,Emacs编辑器等。除此之外,创建了通用公共许可证GPL。
更多资讯,请查看GNU官网https://www.gnu.org/
 
  有了可以开源的可运行在Unix系统上的工具,还是不能替代Unix系统。1991年,芬兰的大学生Linus Torvalds对外宣布Linux内核的诞生。1994年3月,Linux1.0发布,并正式采用GPL协议。
 
 
  • Linux主流发型版本

 
1. Slackware系列:在此版本上发行版有SUSE Linux Enterprise Server(SLES),
Open SuSE桌面版系统
2. Debian系列:Ubuntu系列和Mint系列都是基于Debian进行二次开发的。
3. Redhat系列:即由Redhat公司开发发行的RHEL(Redhat Enterprise Linux)、Fedora系列和CentOS系列。
 
除此之外,还有以轻量简洁著名的ArchLinux、以极致著称的Gentoo和可以自己定制的 LFS(Linux From Scratch)系列。
现在占据移动设备市场大部分份额的Android智能设备,所持有的android系统也是基于Linux系统开发的。
由此看来,Linux系统已经渗透到现代人的方方面面。
 
  • Linux系统文件结构

 
  /:根目录,所有的目录、文件、设备都在/之下,/就是Linux文件系统的组织者,也是最上级的领导者。
  /bin:bin 就是二进制(binary)英文缩写。在一般的系统当中,都可以在这个目录下找到linux常用的命令。系统所需要的那些命令位于此目录。
  /boot:Linux的内核及引导系统程序所需要的文件目录,比如 vmlinuz initrd.img 文件都位于这个目录中。在一般情况下,GRUBLILO系统引导管理器也位于这个目录。
  /cdrom:这个目录在刚刚安装系统的时候是空的。可以将光驱文件系统挂在这个目录下。例如:mount /dev/cdrom /cdrom
  /dev:dev 是设备(device)的英文缩写。这个目录对所有的用户都十分重要。因为在这个目录中包含了所有linux系统中使用的外部设备。但是这里并不是放的外部设备的驱动程序。这一点和常用的windows,dos操作系统不一样。它实际上是一个访问这些外部设备的端口。可以非常方便地去访问这些外部设备,和访问一个文件,一个目录没有任何区别。
  /etc:etc这个目录是linux系统中最重要的目录之一。在这个目录下存放了系统管理时要用到的各种配置文件和子目录。要用到的网络配置文件,文件系统,x系统配置文件,设备配置信息,设置用户信息等都在这个目录下。
  /home:如果建立一个用户,用户名是"xx",那么在/home目录下就有一个对应的/home/xx路径,用来存放用户的主目录。
  /lib:lib是库(library)英文缩写。这个目录是用来存放系统动态连接共享库的。几乎所有的应用程序都会用到这个目录下的共享库。因此,千万不要轻易对这个目录进行什么操作,一旦发生问题,系统就不能工作了。
  /lost+found:在ext2或ext3文件系统中,当系统意外崩溃或机器意外关机,而产生一些文件碎片放在这里。当系统启动的过程中fsck工具会检查这里,并修复已经损坏的文件系统。有时系统发生问题,有很多的文件被移到这个目录中,可能会用手工的方式来修复,或移到文件到原来的位置上。
  /mnt:这个目录一般是用于存放挂载储存设备的挂载目录的,比如有cdrom等目录。可以参看/etc/fstab的定义。
  /media:有些linux的发行版使用这个目录来挂载那些usb接口的移动硬盘(包括U盘)、CD/DVD驱动器等等。
  /opt:这里主要存放那些可选的程序。
  /proc:可以在这个目录下获取系统信息。这些信息是在内存中,由系统自己产生的。
  /root:Linux超级权限用户root的家目录。
  /sbin:这个目录是用来存放系统管理员的系统管理程序。大多是涉及系统管理的命令的存放,是超级权限用户root的可执行命令存放地,普通用户无权限执行这个目录下的命令,这个目录和/usr/sbin; /usr/X11R6/sbin或/usr/local/sbin目录是相似的,凡是目录sbin中包含的都是root权限才能执行的。
  /selinux :对SElinux的一些配置文件目录,SElinux可以让linux更加安全。
  /srv 服务启动后,所需访问的数据目录,举个例子来说,www服务启动读取的网页数据就可以放在/srv/www中
  /tmp:临时文件目录,用来存放不同程序执行时产生的临时文件。有时用户运行程序的时候,会产生临时文件。/tmp就用来存放临时文件的。/var/tmp目录和这个目录相似。
  /usr:这是linux系统中占用硬盘空间最大的目录。用户的很多应用程序和文件都存放在这个目录下。在这个目录下,可以找到那些不适合放在/bin或/etc目录下的额外的工具
  /usr/local:这里主要存放那些手动安装的软件,即不是通过“新立得”或apt-get安装的软件。它和/usr目录具有相类似的目录结构。让软件包管理器来管理/usr目录,而把自定义的脚本(scripts)放到/usr/local目录下面、。
  /usr/share :系统共用的东西存放地,比如 /usr/share/fonts 是字体目录,/usr/share/doc和/usr/share/man帮助文件。
  /var:这个目录的内容是经常变动的,看名字就知道,可以理解为vary的缩写,/var下有/var/log 这是用来存放系统日志的目录。/var/ www目录是定义Apache服务器站点存放目录;/var/lib 用来存放一些库文件,比如MySQL的,以及MySQL数据库的的存放地。

以上是关于今天开始入驻博客园 X)(考试刷题)的主要内容,如果未能解决你的问题,请参考以下文章

入驻博客园

[美化] 博客园美化历程

(转)博客园登陆__JSEncrypt 分析

开门,建立MWEB的博客园连接!

我在博客园的日子

小白如何开始在博客园上开始自己的第一篇博文