大笔记合集(编程基础)

C语言

头文件

#include<stdio.h>

注释

单行注释://
多行注释:/*   */

main

每一个C语言程序都有且仅有一个main函数,它是C语言程序的入口,也是出口!
其他函数被main函数调用,调用完返回main函数!

非打印字符

空格,制表符\t,换行符\n,单引号\',双引号\",等

标识符

字母,数字,下划线
首字母不能是数字,严格区分大小写

基本数据
类型

整型,字符型(必须用单引号引起来,如'a'),
单精度浮点型(6位精度),双精度浮点型(10位精度)

派生数据类型

使用signed,unsigned,long,short修饰基本数据类型

变量

变量是内存空间别名,变量要先声明后使用,

 

整数%d,单精度%f,单字符%c,字符串%s
scanf("%d",&a);(字符串不加&),printf("%d",a);

算数运算符

  +,-,*,/,%,++,--,

关系运算符

>,<,>=,<=,==,!=

逻辑运算符

&&,||(中间不能有空格),!

运算符优先级

(),++/--,*/%,+-,关系,!,&&,||,=,逗号(,)

数组

int age[3]={18,19,20};
char name[3]={'T','o','m'};
char name[3][20]={{"Tom","Rose","Mike"};二维数组用于存放三个学员的
姓名每个名字最长20个字符
数组不允许整体赋值:
int a[2];
a={1,2};//不能整体赋值;
int b[2]={3,5};
a=b;//不能整体赋值;

字符串

char a[]="how are you!";有12个字符,存储时末尾自动添加了'\0',
实际需要的存储空间长度是13

结构体

结构体是一种构造数据类型
struct student
{
char name[20];
int age;
char sex;
char tel[13];
};//这里的分号必须要
struct 结构体名称 结构体变量;//访问时是结构体变量.属性
结构体数组:结构体类型名 数组名[数组长度];
如 student a[3];
student b[2]={{"孙悟空",500,"男","13566666666"},
{"猪八戒",500,"男","13588888888"}};

 

 

SQL

数据库发展历程

三代:网状,关系,面向对象(教材是这么分的)

数据文件

主要数据文件,有且仅有一个主数据文件,.mdf
次要数据文件,零个或多个,.ndf

日志文件

至少一个,.ldf

注释

-- 单行注释         /*  */  多行注释

创建数
据库

CREATE DATABASE 数据库名   --这一行是必须的,on和log on可选,省略采用系统默认
ON
(
NAME='STUDENT',
FILENAME='D:\STUDENT.MDF',
SIZE=5,
FILEGROWTH=10%
)
LOG ON
(
NAME='STUDENT_LOG',
FILENAME='D:\STUDENT.LDF',
SIZE=5,
FILEGROWTH=10%
)

数字数据类型

整数类型:bigint,int,smallint,tinyint,bit
小数类型:decimal,numeric
货币类型:money,smallmoney

字符数据类型

varchar,变长,最长8000个
char,定长
text,最大长度2的31次方-1

日期和时间类型

datetime:1753年1月1日---9999年12月31日,精确到百分之三秒
smalldatetime:1900-1-1---2079-6-6,精确到分钟

二进制数据类型

binary,固定长度二进制,vbinary,可变长度二进制,二者最大长度都是8000

完整性

数据完整性用于保证数据库中的数据在逻辑上的一致性、正确性和可靠性,防止无效数据或错误数据保存进数据库。
数据完整性主要包含:实体完整性、域完整性和参照完整性。

实体完整性:规定表的每一行记录在表中是唯一的。一般通过主键约束(Primary key)、自增约束(identity)和唯一约束(unique)实现.

(1)主键约束(Primary key):每个数据表只能有一个主键。设定为主键的字段内容不能有重复值,且不能为NULL值。

(2)自增约束(identity):字段值按一定的增长规则自动增长,只能在整数类型的字段上设置自增约束不能对设定了自增约束的字段内容进行输入操作;通常在整数类型的主键上设置自增约束。

(3)唯一约束(unique):唯一约束保证在一个字段或一组字段中的数据与表中其他行的数据相比是唯一的;与主键约束相比,唯一约束也用于确保列中不存在重复值,但其列值可以是NULL;每个表可以有多个唯一约束,但只能有一个主键约束。


域完整性:数据表中的列必须满足某种特定的数据类型或约束,如范围,精度.
Check,foreign key,default,not null
引用完整性:两表的主键和外键的数据对应一致
禁止在子表中添加主表中不存在的记录,禁止修改主表的值,禁止删除子表中有对应记录的主表记录
用户自定义完整性:规则,约束,触发器等

创建数
据表

CREATE TABLE 数据表名
(
列名1 数据类型 约束
列名2 数据类型 约束
......
)

删除数据表

DROP TABLE 表名

primary
 key

一张表中只有一个主键,主键可以是一列也可以由多列组成
CREATE TABLE STUDENT
(
StudentNo varchar(20) PRIMARY KEY,
StudentName varchar(20) NOT NULL,
StudentAge int NOT NULL CHECK (StudentAge>20 and StudentAge<30),
Class int FOREIGN KEY REFERENCES 表名(列名),--外键约束,来源于哪个表哪个字段
Country varchar(20) NOT NULL DEFAULT '中国'
)

关系运算符

=(不是==),>,<,>=,<=,<>,!=       不等号有两种写法

逻辑运算符

AND,OR,NOT

INSERT
语句

INSERT INTO 表名 (列1,列2......) VALUES (值1,值2......)
INTO可省略;
列和值一一对应;若全列插入,列列表可以省略;
值为varchar,datetime,值必须使用单引号引起来('');
自增的列不能显式给出,由系统自动给值;
一次性添加多行在后面加UNION连接,但最后两条记录之间的UNION要省略
INSERT INTO 表名 (列1,列2......) 
SELECT 值1,值2......     UNION
SELECT 值1,值2......         UNION
SELECT 值1,值2......        UNION
SELECT 值1,值2......

时间类型的数据给空的时候写成null或''(单引号中间空着,null不能有单引号)

DELETE

DELETE FROM 表名 WHERE 条件  (WHERE省略删除整张表的数据,但效率低);

TRUNCATE

TRUNCATE TABLE 表名   (删除整张表的数据,效率比DELETE高)

UPDATE

UPDATE 表名 SET 列1=值1,列2=值2.......WHERE 条件

SELECT

SELECT 列1,列2.......
FROM 表名
WHERE 表达式
ORDER BY 列名 ASC(升)或DESC(降)
不区分大小写
SELECT 和 FROM是必须的,后面的可选
查询的多列用逗号分隔,若是所有列,可以用*替代所有列
删除查询结果中重复的列:在列名前加DISTINCT
使用别名:SELECT 列名1 AS 别名,列名2 AS 别名2......
         SELECT 列名1 别名,列名2 别名2......
         SELECT 别名1=列名1,别名2=列名2......
SELECT ?1,?2 WHERE 条件 ORDER BY ?1 ASC,?2 DESC   --多列排序
SELECT TOP N ....../SELECT TOP N PERCENT ....../全列是SELECT TOP N *......
查询为空:WHERE 列名 IS NULL,不为空为 IS NOT NULL,不能写成列名!=NULL

模糊查询

LIKE运算符:通配符有%(任意个,可以是0个),_(任意一个字符),[]
           ([a-f],a-f的任意一个字符;[[],[字符;[^a],不能为a)

IN运算符:SELECT ?,? FROM 表名 WHERE 列? IN(值1,值2)   
          查询列?值为值1或值2的数据
         IN和OR可以实现相同的功能,条件多时IN运算符简洁,运行效率高于OR
         IN后面所列的条件可以是SELECT子句!

BETWEEN运算符:SELECT ? FROM ? WHERE ? BETWEEN 1 AND 6

聚合函数

聚合函数不能作为WHERE子句的直接搜索条件

分组查询

GROUP BY,分组的列出现NULL时,会将所有的NULL值分在一组,认为它们是相当的
HAVING子句与WHERE子句的相似之处在于定义了搜索条件,但与WHERE子句不同的是
HAVING与组有关,WHERE子句不能直接以聚合函数作为搜索条件

 

SELECT 列1,列2.......
FROM 表名
WHERE 表达式
ORDER BY 列名 ASC(升)或DESC(降)
不区分大小写
SELECT 和 FROM是必须的,后面的可选
查询的多列用逗号分隔,若是所有列,可以用*替代所有列
删除查询结果中重复的列:在列名前加DISTINCT
使用别名:SELECT 列名1 AS 别名,列名2 AS 别名2......
         SELECT 列名1 别名,列名2 别名2......
         SELECT 别名1=列名1,别名2=列名

 

SELECT 列1,列2.......
FROM 表名
WHERE 表达式
ORDER BY 列名 ASC(升)或DESC(降)
不区分大小写
SELECT 和 FROM是必须的,后面的可选
查询的多列用逗号分隔,若是所有列,可以用*替代所有列
删除查询结果中重复的列:在列名前加DISTINCT
使用别名:SELECT 列名1 AS 别名,列名2 AS 别名2......
         SELECT 列名1 别名,列名2 别名2......
         SELECT 别名1=列名1,别名2=列名

简单两表
连接查询

SELECT A.AA,A.BB,B.CC,B.DD
FROM A,B           --用关键字做表名,列名,要用[]括起来
WHERE A.AA=B.CC    --若三表连接 A.AA=B.CC AND B.DD=C.EE
   AND B.DD IN('张三')
   AND A.BB LIKE 'C%'

SELECT a.AA,a.BB,b.CC,b.DD
FROM Aaaaa AS a,Bbbbb AS b              --表使用别名
WHERE a.AA=b.CC
   AND b.DD IN('张三')
   AND a.BB LIKE 'C%'

自连接
(留下匹配的)

表与自身进行连接,自连接时必须给表取别名,否则中间表产生后因表同名产生错误
SELECT a.A,b.C
FROM AA AS a,BB AS b
WHERE a.B=b.D

内连接
(留下匹配的)

SELECT A.AA,A.BB,B.CC,B.DD
FROM A INNER JOIN B            --INNER关键字可以省略
ON A.AA=B.CC
WHERE A.BB IN ('中国','美国') AND B.CC LIKE '张%'

外连接
(不匹配的
也留下)

SELECT ......
FROM A LEFT OUTER JOIN B      --OUTER可以省略,左外LEFT,右外RIGHT,全外FULL
ON                            --连接中没有数据的用NULL表示

 

 

C#

基本数据类型

整数类型:byte,short,int,long
浮点类型:float,double
字符类型:char
字符串类型:string                 Java里string不是基本数据类型
布尔类型:bool                     Java里布尔类型是boolean

标识符

严格区分大小写                    Java也严格区分大小写  Html不区分
必须以字母,_,@开头                Java是字母,_开头
只能由字母,数字,_组成             Java由字母,数字,_,$组成
不能有空格,标点符号,运算符等其他符号

变量

访问修饰符 数据类型 变量名
int i;                             变量必须先声明并赋值初始化后才可以使用

常量

const 数据类型 常量名=值;          Java里是 final 数据类型 常量名=值;
在数组中声明为int型,有默认值0,其他类型数字没有初值,非数组也没有初值

运算符

算术运算符:+,-,*,/,%,++,--
关系运算符:<,>,<=,>=,!=,==
逻辑运算符:&&,||,!
赋值运算符:=,+=,-=,*=,/=,%=
条件运算符:?:

优先级

()
!,++,--
*,/,%
+,-
>,<,>=,<=
==,!=
&&
||
?:
=,+=,-=,*=,/=,%=

注释

单行注释 //
多行注释 /* */
文档注释///   ///  系统会自动生成对应的XML标记

注释不能嵌套!!!第一个/*后的/*会忽略,直到碰到*/结束,后面的*/认为多余,会报错

Console类

Clear:清除控制台缓冲区和相应控制台窗口的显示信息
Read:从标准输入流读取下一个字符
ReaeLine:从标注输入流读取下一行字符
Write:将指定值的文本表示形式写入标准输出流
WriteLine:将指定值的文本表示形式写入标准输出流后换行

输出方式

1.Console.WriteLine("输出内容");
2.Console.WriteLine("格式字符串",值列表);

string name = "张三";
string sex = "男";
Console.WriteLine("姓名:"+name+"\t性别:"+sex);
Console.WriteLine("姓名:{0}\t性别:{1}",name,sex); 

String转为Int

int 变量名=int.Parse(字符串)  或   int 变量名=Convert.ToInt32(字符串)

String转为Float

float.Parse(字符串)       Convert.ToSingle(字符串)

String转为Double

double.Parse(字符串)       Convert.ToDouble(字符串)

switch

表达式的值可以是byte,short,int,long,char,string;            Java中不能是string!!!
switch (表达式)
{
    常量表达式1:                  C#中这个break是必须的,不能省略任何一个break
                 语句快1;         但可以把语句块和break都省了,多个case共用一个
                 break;           语句块和break,而Java中的break可省略!
    常量表达式2:
                 语句快2;
                 break;
    常量表达式3:
                 语句快3;
                 break;
    ............................
    default:
                 语句快n;
                 break;
}

foreach

foreach(数据类型 变量 in 集合)    |     foreach(int i in Arr)
{                                 |     {
    语句块;                       |         Console.WriteLine(i);
}                                 |     }          //遍历了int型数组Arr;

break和continue

break结束本层循环;continue结束本次循环,继续下一次循环;

do...while

do 
{
    .........
} while (条件);             //这里的分号不能忘记

数组

        int [] student;//声明
        student =new int [5];//定义长度分配空间     
或写成  int [] student = new int [5];//声明,分配空间一气呵成
或写成  int [] student = new int [] {1,2,3,4,5};//声明,分配空间,赋值;
或写成  int [] student = new int [5] {1,2,3,4,5};//少给一个值不行,且Java中不能这样
或写成  int [] student = {1,2,3,4,5};
或写成  在程序动态运行过程中逐个赋值;

 

static void Main(string[] args)           M不能小写!!!

Array类

Sort()方法:将数组数据升序排序                    Array.Sort(数组名)
Reverse()方法:将数组数据反转                     Array.Reverse(数组名)

方法的定义

访问修饰符 返回值类型 方法名称 (形参列表)
{
  方法体;
  //如果有返回值还要有return语句;
}

方法的调用

同一类中可以通过方法名调用
在同一命名空间的不同类中,可以通过"对象名.方法名"调用
在不同命名空间中,先导入命名空间中的类,再通过"对象名.方法名"调用
静态方法可以通过类名.方法名调用,不能实例化!!!
静态方法只能调用静态方法

参数传递

值方式传递:将实参值的副本传给形参,改变形参不影响实参
引用方式传递:将实参的别名(地址)传给形参,对形参的更改就是对实参的更改
            方法定义时,引用方式传递的参数要使用ref参数,调用方法实参也要用ref参数

String类

Equals 两个字符串对象是否相等               A.Equals(B)    A是否与B相等
EndsWith  是否以指定的字符串结尾
StartsWith  是否以指定的字符串开始
CompareTo  与指定的字符串进行比较
IndexOf  指定字符串在当前字符串第一个匹配的索引
LastIndexOf  最后一个匹配的索引

取随机数

Random random = new Random();
int i=random.next(100);//0--99的随机数,不包含100

 

 

Html

文档结构

一个完整的HTML文档至少包含html,head,title,body 4个标签,它们成对出现
<html>
   <head>
            <title>无标题文档</title>
   </head>

   <body>
   </body>
</html>

 

<body bgcolor="背景颜色" background="背景图片url">

注释

<!-- 中间是注释内容 -->   CSS里注释是 /* */

特殊字符

<       <         这里的分号绝对不能省略!!!
>       >
圈c     ©       版权所有
圈g     ®        注册商标
空格            半个汉字宽的空格

段落标签

<p>这里的内容将会显示在一个单独的段落中</p>

居中标签

<center>这里的内容将会居中显示</center>

有序列表

<ol>
 <li>第一章</li>
 <li>第二章</li>
 <li>第三章</li>
</ol>

无序列表

<ul>
 <li>第一章</li>
 <li>第二章</li>
 <li>第三章</li>
</ul>

自定义列表

<dl>
 <dt>标题</dt>
 <dd>内容缩进</dd>
 <dt>标题</dt>
 <dd>内容缩进</dd>
</dl>

预定义格式

<pre>预排版内容</pre>

环绕标签

<marquee direction="left" scrolldelay="100">滚动内容</marquee>
方向:up,down,left,right
延时:单位是毫秒,默认90毫秒

标题标签

<hn>标题</hn>  标题的字体大小是h1~h6,自己会单独占一行

字体形状

<b>文字</b>    加粗
<i>文字</i>    斜体
<u>文字</u>    下划线
<sup>文字</sup>上标
<sub>文字</sub>下标
<cite>斜体显示引用文字</cite>  斜体显示要强调的文本
<strong>黑体加粗显示文字</strong>   黑体加粗显示文本

字体标签

<font size="字号" face="字体" color="颜色">文本内容</font>

img标签

<img src="image/abc.jpg" alt="图片简介" width="200" height="300" border="2" align="对齐方式" />
src:跟本网页在一个路径下的image文件夹中的abc.jpg图片
alt:当图片无法显示时,或鼠标移动到图片上时,可以显示图片简介文字
width:图片的宽度   height:图片的高度   border:图片的边框线宽度
align:图文混排时图片的对齐方式,left,center,right(先把图片放左中右,再填文字)

路径

绝对路径:网络URL地址
相对路径:同一目录中的文件引用,<img src="a.jpg" width="100" height="100" />
        不同目录中文件引用,"../"表示当前目录上一级目录,

超链接

<a href="链接地址">超链接文字</a>

锚点

创建锚点:在要创建锚点的地方插入 <a name="锚点名">
链接到锚点:本文档中      <a href="#锚点名">点此处跳转</a>
          不同文档中  <a href="目录文件名#锚点名">点此处跳转</a>

电子邮件链接

<a href="mailto:电子邮件地址">联系我们</a>

表格

<table border="1" width="400">
 <caption>这里是表格的标题,不显示在表格里</caption>
 
 <tr><th>标题列1</th><th>标题列2</th><th>标题列3</th></tr>
 <tr><td>21</td><td>22</td><td>23</td></tr>
 <tr><td>31</td><td>32</td><td>33</td></tr> 
</table>

表格属性

width:宽度     height:高度
border:边框大小   bordercolor:边框颜色
background:背景图像   bgcolor:背景颜色
align:水平方向对齐left,center,right   valign:垂直方向对齐top,middle,bottom
colspan:跨列     rowspan:跨行
cellspacing:单元格间距   cellpadding:单元格边距

表单

<form name="value" action="value" method="value" enctype="value"></form>
name:设置标识表单的名称
action:设置接收和处理表单内容的服务器程序的URL,如 action="checkLogin.do"
method:设置将表单信息提交给服务器的方式,有get和post,post信息不显示在地址栏中,大小还无限制,get会显示在地址栏,大小限制为8000字节

输入元素
input

name:输入元素名称
type:button,checkbox,file,hideen,image,password,radio,reset,submit,text
value:值
size:宽度
maxlength:长度限制
checked:设置单选按钮,复选框的选中状态
disabled:设置输入元素的使用状态
readonly:设置输入元素为只读

 

<form>
 <fieldset>
 <legend>用户名和密码</legend>
  <lable>用户名:</lable>
  <input type="text" id="username" name="username" size="15" maxlength="20" /><br/>
  <label>密  码:</lable>
  <input type="password" id="password" name="password" size="15" maxlength="20" /><br/>
 </fieldset>
 <fieldset>
 <legend>性别</legend>
  <lable>男</lable>
  <input type="radio" id="sex" value="1" name="sex" /><br/>
  <lable>女</lable>
  <input type="radio" id="sex" value="2" name="sex" /><br/> 
 </fieldset>
 <fieldset>
 <legend>爱好</legend>
  <lable>计算机</lable>
  <input type="checkbox" id="fav" name="fav" value="1" /><br/>
  <lable>旅  游</lable>
  <input type="checkbox" id="fav" name="fav" value="2" /><br/>
  <lable>购  物</lable>
  <input type="checkbox" id="fav" name="fav" value="3" /><br/>
 </fieldset>
 <fieldset>
 <legend>密保问题</legend>
  你喜欢的明星:
  <select>
   <option value="andy" selected="selected">刘德华</option>
   <option value="jack">张学友</option>
   <option value="lemon">黎明</option>
  </select>
 </fieldset>
 <fieldset>
 <legend>照片</legend>
  <label>个性照片上传</label>
  <input type="file" id="myimage" name="myimage" size="20" maxlength="255" />
 </fieldset>
 <fieldset>
 <legend>提交</legend>
 <input type="submit" value="确定" id="submit" name="submit" />
 <input type="reset" value="重置" id="reset" name="reset" />
 </fieldset>
</form>

 

 


















 

样式表

CSS样式分为行内样式,内嵌样式,外部样式文件3种,
样式由:选择器(selector),属性(properties)和属性值(value)3部分组成
    selector { property:value}
id选择器和类选择器的名字,区分大小写的,而且不能用数字!
li做导航,先设置ul的list-style属性为none,也就是去掉列表的符号,标签选择器li的float属性为left
要把a标签的超链接下划线去掉:text-decoration属性设置为none,要有效果,a标签里边的href属性必须设置
div框起来的内容,要居中,在div上的类选择器,id选择器,标签选择器的margin:0px auto;

CSS注释

/*  注释  */

行内样式

只对当前标签有效
<p style="color:#FF0000;">段落内容</p>

内嵌样式

<style type="text/css">
 选择器 {
   样式属性:属性值;
 }
</style>

外部样式文件

外部样式文件:style.css内容如下
p {........}
.a {........}
html文件:index.html代码如下
<head>
<title>标题</title>
<link href="style.css" rel="stylesheet" type="text/css"
</head
1.链接方式:<link href="style.css" rel="stylesheet" type="text/css"
2.导入方式:<style type="text/css">
              <!--
               @import url(样式文件的url);    或@import url("style.css")
               -->
           </style> 


1.标签选择器

<style type="text/css">
    标签名 {
            属性:值;
    }
</style>                        对每一个标签起作用

2.类选择器

<style type="text/css">
    .类名 {
            属性:值;
    }
</style>
使用:<标签名 class="类名" />     对用户指定的标签起作用      

3.ID选择器

<style type="text/css">
    # id名称 {
            属性:值;
    }
</style>
使用:<标签名 id="id名称" />      id唯一,id选择器禁止重复使用

4.伪类选择器

hover:鼠标悬停,link:链接访问前,active:对象被用户激活,visited:访问后
<style type="text/css">
    选择器:伪类名 {
            属性:值;
    }
</style>

5.包含选择器

<style type="text/css">        也叫后代选择器,E1元素包含的所有E2元素
    E1 E2 {
            属性:值;
    }
</style> 

6.组合选择器

<style type="text/css">
 选择器1,选择器2 {
            属性:值;
    }
</style> 

样式表优先级

1.行内样式优先于内嵌样式,内嵌样式优先于外部样式
2.ID选择器优先于类选择器,类选择器优先于标签选择器

容器

<div>和<span>只是容器,对中间的内容不产生任何作用,多用来分割文档,让样式依附在其上
div是块级标签,span是行级标签
块级元素会换行,想在同一行显示,需浮动或者display: inline
行级元素不换行,多个可以并排显示,默认设置宽度是不起作用,需设置 display: inline-block或者block才行

字体样式

font-size,color,font-family,font-weight,font-style,line-height

边框样式

border-width,border-style,border-color

文本样式

text-indent,text-align,vertical-align

方框样式

border,margin外补丁,padding内补丁,

显示样式

display:block;          display:inline;

浮动与清除

float       clear

长度单位

CSS中长度单位有
绝对单位:pt(印刷中的标准长度单位,mac一般分辨率是72像素/英寸,1pt是1/72英寸)
         cm(厘米)
相对单位:em(字体高,浏览器默认字高是16px,未经调整的1em=16px)
         px(像素)

页面布局

表格布局:表格嵌套
框架布局:<framset cols="30%,*">          fram标签的地方可以嵌套framset标签布局
            <fram src="left.html" />
            <fram src="right.html" />
         </framset>
div布局:

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值