‘壹’ 如何编写一个shell脚本,求费波纳奇数列的前10项及总和
shell脚本。首先它是一个脚本,并不能作为正式的编程语言。因为是跑在linux的shell中,所以叫shell脚本。说白了,shell脚本就是一些命令的集合。举个例子,我想实现这样的操作:
1)进入到/tmp/目录;
2)列出当前目录中所有的文件名;
3)把所有当前的文件拷贝到/root/目录下;
4)删除当前目录下所有的文件。简单的4步在shell窗口中需要你敲4次命令,按4次回车。这样是不是很麻烦?当然这4步操作非常简单,如果是更加复杂的命令设置需要几十次操作呢?那样的话一次一次敲键盘会很麻烦。所以不妨把所有的操作都记录到一个文档中,然后去调用文档中的命令,这样一步操作就可以完成。其实这个文档呢就是shell脚本了,只是这个shell脚本有它特殊的格式。
Shell脚本能帮助我们很方便的去管理服务器,因为我们可以指定一个任务计划定时去执行某一个shell脚本实现我们想要需求。这对于linux系统管理员来说是一件非常值得自豪的事情。现在的139邮箱很好用,发邮件的同时还可以发一条邮件通知的短信给用户,利用这点,我们就可以在我们的linux服务器上部署监控的shell脚本,比如网卡流量有异常了或者服务器web服务器停止了就可以发一封邮件给管理员,同时发送给管理员一个报警短信这样可以让我们及时的知道服务器出问题了。
有一个问题需要约定一下,凡是自定义的脚本建议放到/usr/local/sbin/目录下,这样做的目的是,一来可以更好的管理文档;二来以后接管你的管理员都知道自定义脚本放在哪里,方便维护。
‘贰’ c语言:编写函数,根据整数参数n,求Fibonacci数列第n项的值。
/*斐波那契数列,前两项之和等于第3项*/
#include "stdio.h"
int fun(int n)
{
int a=1,b=1;
int r=0;
if(n==1||n==2)
return 1;
for(int i=2;i<=n;i++)
{
r=a+b;
if(i%2==0)
a=r;
else
b=r;
}
return r;
}
main()
{ int k,i;
scanf("%d",&k);
for(i=1;i<=k;i++)
printf("%10d",fun(i));
printf(" ");
}
‘叁’ 编写一段C语言程序:利用函数的递归调用求斐波那契数列,该数列的公式如下:
#include<stdio.h>
#include<stdlib.h>
int f(int n)
{
if (n == 1 || n == 2)
{
return 1;
}
else
{
return f(n - 1) + f(n - 2);
}
}
int main()
{
int n;
scanf("%d", &n);
for (int i = 1; i <= n; i++)
{
printf("%d ", f(i));
}
system("pause");
return 0;
}
‘肆’ C语言 写程序,输出斐波那契数列的前20项,每行输出4个数
方法一for循环
publicclassFeiBoMethod{
定义三个变量方法
publicstaticvoidmain(String[]args){
inta=1,b=1,c=0;
System.out.println("斐波那契数列前20项为:");
System.out.print(a+"\t"+b+"\t");
因为前面还有两个1、1所以i<=18
for(inti=1;i<=18;i++){
c=a+b;
a=b;
b=c;
System.out.print(c+"\t");
if((i+2)%4==0)
System.out.println();
}
}
}
方法2使用数组的方式实现
publicclassFeiBoMethod{
定义数组方法
publicstaticvoidmain(String[]args){
intarr[]=newint[20];
arr[0]=arr[1]=1;
for(inti=2;i<arr.length;i++){
arr[i]=arr[i-1]+arr[i-2];
}
System.out.println("斐波那契数列的前20项如下所示:");
for(inti=0;i<arr.length;i++){
if(i%4==0)
System.out.println();
System.out.print(arr[i]+"\t");
}
}
}
(4)编写一个脚本求斐波那契扩展阅读:
递归实现
publicclassFeiBoMethod{
使用递归方法
privatestaticintgetSum(intnum){
if(num==1||num==2)
return1;
else
returngetSum(num-1)察氏+getFibo(num-2);
}
publicstaticvoidmain(String[]args){
System.out.println("斐波那契数列的前20项为:");
for(败昌散inti=1;i<=20;i++){
System.迅毕out.print(getSum(i)+"\t");
if(i%4==0)
System.out.println();
}
}
}
‘伍’ 使用VB如何编写程序求第n项斐波那契数列的值
Function F(n As Long) As Long
If n > 2 Then
F = F(n - 1) + F(n - 2)
Else
F = 1
End If
End Function
Private Sub Command1_Click()
Cls
Dim I As Long
I = Val(inputbox("n=?"))
Print "第 " & I & " 项斐波那契数列值为:" & F(i)
End Sub
‘陆’ 斐波那契数列c++编程
1、点击文件选项,选择文件→新建→项目→常规→空项目→输入项目名,鼠标点击确定。
‘柒’ c语言编写计算斐波那契(Fibonacci)
斐波那契数列为:0,1,1,2,3,5,8,13.....
/*你的程序*/
#include<stdio.h>
int fib(int n,int f)
{
if(n==1&&n==2) /*n不可能同时等于1和2,所以递归无终点,会一直递归下去。*/
{f=1;} /*正确的斐波那契数列是n==1时f=0,n==2时f=1*/
else
{f=fib(n-1,f)+fib(n-2,f);}
return f;
}
int main()
{
int n,f; /*n没有赋初始值*/
f=fib(n,f);
printf("%d",f);
return 0;
}
/*改正后的程序*/
#include<stdio.h>
int fib(int n,int f)
{
if(n==1)
{
f=0;
}
else if(n==2)
{
f=1;
}
else
{
f=fib(n-1,f)+fib(n-2,f);
}
return f;
}
int main()
{
int n,f;
scanf("%d,%d",&n,&f);
f=fib(n,f);
printf("%d",f);
return 0;
}