37 print "\n----------------------------------_exercise_6_1--------------------------\n";     38 my %bless_function = ( #hash may be a lexical variable     39    "constructors" => "default_values",     40    "error_ha…
数组就是一些列具有相同类型的数据的集合,这些数据在内存中一次挨着存放,彼此之间没有缝隙. 我们可以将二维数组看作一个Excel表格,有行有列,length1 表示行数,length2 表示列数,要在二维数组中定位某个元素,必须同时指明行和列. 二维数组在概念上是二维的,但在内存中是连续存放的,换句话说,二维数组的各个元素是相互挨着的,彼此之间没有缝隙.在线性内存中存放二维数组有两种方式: 1. 按行排列,放完一行之后再放入第二行 2. 按列排列,放完一列之后再放入第二列. ===========…
#! /usr/bin/perl use strict; use warnings; print "\n----------------------------------_substitutions_with_s///--------------------------\n";$_ = "He's out bowling with Barney tonight.";s/Barney/Fred/;print $_."\n";s/filehandl…
Perl语言入门: 斜线不是元字符,所以在不作为分隔符时不需要加上反斜线.…
第一章简介 问题与答案 这本书适合你吗? 为何有这么多的脚注? 关于习题和解答? 习题前标的数字是什么意思? 如果我是Perl讲师? “Perl”这个词表示什么意思? Larry为什么要创造Perl? Larry干吗不用其他语言? Perl算容易,还是算难? Perl怎么会这么流行? 现在的Perl发展得怎么样了? 哪些事情最适合用Perl来做? 哪些事情不适合用Perl来做? 如何取得Perl? CPAN是什么? 如何得到Perl的技术支持? 还有别的技术支持方式吗? 如果发现Perl有bug…
---------第十四章 字符串与排序------------------- index查找子字符串 my $stuff = "howdy world!"; my $where = index($stuff, "wor"); #6 #返回首个字符匹配的位置,字符串第一个位置为0,上例即wor匹配的w位置 #无法匹配返回-1 my $here = index($stuff,"w",2); #返回2(从2+1个字符开始) my $there = i…
Perl 是 Practical Extraction and Report Language 的缩写,可翻译为 "实用报表提取语言". Perl语法基础: (1)Perl程序由声明和语句组成 (2)Perl程序自上而下执行 (3)Perl语句以分号(:)结尾,包括循环判断等语句 (4)Perl没有严格的格式规范,可以根据自己喜欢的方式缩进 第一个Perl程序: (1)交互式编程 perl -e 'print "hellow, wold"' 使用-e选项来执行Per…
Go语言入门系列前面的文章: Go语言入门系列(三)之数组和切片 Go语言入门系列(四)之map的使用 Go语言入门系列(五)之指针和结构体的使用 在Go语言入门系列(二)之基础语法总结这篇文章中已经介绍过了Go语言的函数的基本使用,包括声明.参数.返回值.本文再详细介绍一下函数的其他使用. 1. 变参 Go语言的函数除了支持0个或多个参数,还支持不定数量的参数,即变参.声明方式为: func foo(变参名 ...参数类型) 函数类型 { //函数体 } 下面是一个具体的函数,它接收不定数量的…
文件内容: bash-2.03$ cat file_4_ex_ch7.txt anonymous attribute demolition grammar rules indices refernces lignAAlign, ligning..AABB 代码: 80 print "\n----------------------------------exercise_ch7_4--------------------------\n";     81 while(<>)…
2 鞍点(5分) 题目内容: 给定一个n*n矩阵A.矩阵A的鞍点是一个位置(i,j),在该位置上的元素是第i行上的最大数,第j列上的最小数.一个矩阵A也可能没有鞍点. 你的任务是找出A的鞍点. 输入格式: 输入的第1行是一个正整数n, (1<=n<=100),然后有n行,每一行有n个整数,同一行上两个整数之间有一个或多个空格. 输出格式: 对输入的矩阵,如果找到鞍点,就输出其下标.下标为两个数字,第一个数字是行号,第二个数字是列号,均从0开始计数. 如果找不到,就输出 NO 题目所给的数据保证…
1 多项式加法(5分) 题目内容: 一个多项式可以表达为x的各次幂与系数乘积的和,比如: 现在,你的程序要读入两个多项式,然后输出这两个多项式的和,也就是把对应的幂上的系数相加然后输出. 程序要处理的幂最大为100. 输入格式: 总共要输入两个多项式,每个多项式的输入格式如下: 每行输入两个数字,第一个表示幂次,第二个表示该幂次的系数,所有的系数都是整数.第一行一定是最高幂,最后一行一定是0次幂. 注意第一行和最后一行之间不一定按照幂次降低顺序排列:如果某个幂次的系数为0,就不出现在输入数据中了…
按照first name找last name 知识点: 1. hash的使用和初始化 2. 使用exists函数检测hash中的键是否存在…
读取标准输入 chomp($line = <STDIN>); #去掉后面的换行 while (defined($line = <STDIN>)) { print "I saw $line"; } #上面代码简写 while (<STDIN>) { print "I saw $_"; } 来自钻石操作符<> while (defined($line = <> )){ chomp($line); print &…
子程序定义和返回值 sub sum{ print "调用了子程序\n"; $a + $b; #后一行为返回值 } ; ; $s =∑ #34 调用子程序 子程序中的参数,参数固定(下面例子只能2参数),程序第一个参数为$_[0],第二个为$[1],依次类推 sub max { ] > ] ){ ]; }else{ ]; } } ,); #结果为15 子程序中私有变量 sub max { my($m,$n) = @_; } 限制参数长度 sub max{ ){ print &quo…
1-列表list指的是标题的有序集合, 而数组(array)则是存储列表的变量. 更精确地说,列表指的是数据,而数组指的是变量. 访问数组中的元素 ] = "yabba"; ] = "dabba"; ] = "doo"; $number = 2.71111; ]; #dabba 如果下标不是整数,会舍去小数. ] #如果不存在下标则返回 undef 特殊数组索引, 获得最后一个元素 ] = "one"; ] = 'last';…
$what ='steak'; print "fred ate $n ${what}s.\n"; 布尔值 如果是数字0为假, 如果是空字符串''为假, 如果即不是数字也不是字符串,那就先转成数字或字符串再行判断. 字符串'0'也为假 获取用户输入 $line = <STDIN>; 去除最右边换行 $text ="a line \n"; chomp($text); print $text; undef值 如果是数据相当undef值为0, 如果与字符串相加则…
---- 第6章 哈希----------- 简介 键值对.键和值都是任意标量,但键总是会被转换成字符串. 键唯一,值可重复. 应用场景:一组数据对应到另一组数据时. 如找出重复/唯一/交叉引用/查表等 访问哈希元素 $name{'fred'} = 'peng'; $name{'barney'} = 'guo'; foreach my $person (qw(barney fred)){ print "you are $person $name{$person}.\n"; } #胖箭头…
----------第十章 其他控制结构---------------- unless结构 unless($fred =~ /\A[A-Z_\w*\z]/i){print "yes";} #等同 if(!($fred =~ /\A[A-Z_\w*\z]/i)){print "yes";} if($fred =~ /\A[A-Z_\w*\z]/i){}else{print "yes";} until结构 while的相反,条件为假时重复执行. 表达…
第一章 简介 perl -v 文字处理,编写小型CGI脚本(Web服务器调用程序)的最佳语言 CPAN: Perl综合典藏网 shebang: #! /usr/bin/perl 或#! /usr/local/bin/perl perldoc 第二章 标量 数字 1.25 -1.2e24 3 61_300_100 0377 #八进制 0xff #十六进制 ob1111111 #十六进制 运算符 + - * / % ** 单引号和双引号 'hello\n' #\n两个字符 "hello\n"…
6.1编写一个函数,它在一个字符串中进行搜索,查找所有在一个给定字符集中出现的字符,返回第一个找到的字符位置指针,未找到返回NULL #include <stdio.h> char * find_char(char const *source, char const *chars) { char const *sptr = source; char const *cptr = chars; if (sptr == NULL || cptr == NULL) { return NULL; } w…
今天开始尝试改变! 今天要学习函数,一个C语言中的重要组成部分. 首先先聊聊为什么要使用函数?随着学习的深入很多人会发现某段的代码重复使用的几率很大,而如果用一次写一次的话很明显的效率就会比较低,如果有一种方法可以把之前写的相同或者相差不大的代码拿到现在来用的话是不是能提高写代码的效率呢,而且如果出错了纠正的时候也更加的清晰明了.这个时候我们就用到了今天将要学习的内容:函数,它很好的解决了我们想把一段代码多次重复使用的需求.下面让我们看看什么是函数,他的定义是什么. 函数:为了完成某些功能而编写…
现有文件test.txt,内容为:"123\n456" 1,打开文本test.txt #!/usr/bin/perl open d,"test.txt"; d 为文件句柄,指向打开的文件 2,逐行读取文本test.txt #!/usr/bin/perl open d,"< test.txt"; while(<d>){ print $_; } close d; 结果:123 456 或者:print <d>; 结果:同…
一.算数运算符 **:是幂 结果不能超过数的范围 当指数为小数时 底数不能为负数 %:取余数  两边的操作数为整数,如果不是则要截取,把所有的小数部分去掉 注意:当一个字符串参加运算,需要转化为整数时,如果不能转化为整数则值为零, '2'+1=3   'a'+1=1 二.数字比较运算符 大于小于等于   :比较结果为真或非零 ,假或零 <=> : 比较运算   $a <=> $b 当a大于b时:值为1 当a小于b时:值为-1 当a等于b时:值为0 用这个运算符的时候,自动把操作数转…
1.chop函数:删除标量变量或数组中每个字符的最后一个字 举个栗子: #!/usr/bin/perl $v = 'Flowers'; $r = chop($v); print "$v (without $r)\n";…
一.$ 简单变量:$          以$开头+字母或下划线 区分大小写,变量长度不限,没有关键字,但不能和默认变量重复 1.整数的表示: 12 12e2 #1200 -12 #-12 1_200_000     #perl可以使用下划线当做分隔符 数字还是1200000,但方便看 012           #八进制数,值为10 0x1f           #十六进制,值为31   f不分大小写 2.浮点数 11.4 0.3 .3 3. 5.4e2    e或E,+或-,e后面最多一到三位…
A.  手工安装 从CPAN下载了DBI模块1.13版的压缩文件DBI-1.13.tar.gz.假设放在/usr/local/src(一般需要编译安装的软件,都放在此目录下安装). # cd /usr/local/src   # tar xvzf DBI-1.13.tar.gz (这时候会创建一个去掉tar.gz这部分的文件夹)   # cd DBI-1.13 # perl Makefile.PL (生成makefile,无论什么包都是这个命令,什么包都会生成一个这个Makefile文件) # …
====C语言typedef 的用法==== 1. C语言允许为一个数据类型起一个新的别名,就像给人起绰号一样. typedef OldName newName; typedef 和 #define 的区别 理解他们之间的区别就是把typedef 看成一种彻底的封装类型,声明之后不能再往里面增加别的东西. ====C语言const 的用法==== 1.有时候我们希望定义这样一种变量,它的值不能被改变,在整个作用域中都保持固定.例如,用一个变量来表示班级的最大人数,或者表示缓冲区的大小.为了满足这…
函数就是一段封装好的,可以重复使用的代码,它使得我们的程序更加模块化,不需要编写大量重复的代码.函数可以提前保存起来,并给它起一个独一无二的名字,只要知道它的名字就能使用这段代码.函数还可以接收数据,并根据数据的不同做出不同的操作,最后再把处理结果反馈给我们. ====比较字符串的大小:strcmp() 函数==== #include<stdio.h> #include<string.h> int main() { char str1[] = "haozhijian&qu…
16.8 计算平均年龄 #include <stdlib.h> #include <stdio.h> #define MAX_LEN 512 int main() { int age; int totalAge; float avgAge; int peopleNum; FILE *file; char info[MAX_LEN]; char *infoPtr; file = fopen("D:/family.txt", "r"); //按行…
用傅里叶变换加速卷积,直接上代码,Mat版是Copy他人的. CvMat版 #include "stdafx.h" #include "cv.h" #include "highgui.h" #include <iostream> using namespace cv; using namespace std; void speedy_convolution(const CvMat* A,const CvMat* B,CvMat* C)…