C#入门教程

C#入门小教程

一、C#的发展历史
C#是.net开发平台支持的多种语言中的一门编程语言。是Microsoft专门为.net
平台开发的一种新的编程语言,语法类似于C语言。
1998年,Delphi设计的第一个C#语言版本
2002年,发布了第一个C#版本(1.0)
二、C#能干什么
1.Windows窗口应用程序。Microsoft office,Windows外观应用程序(按钮,工具)
2.web应用程序(邮箱、论坛、网站)
3.网络数据库等应用程序
4.web服务以及各种分布应用程序
三、C#程序结构
一个C#程序主要包括以下部分:
1.命名空间声明
2.一个class
3.方法
4.属性
5.Main方法
6.语句,表达式
7.注释

using System;–>引入System命名空间(C语言:#include<stdio.h>)
using System.Collections.Generic;–>引入C#泛型命名空间
using System.Linq;–>主要作用是对集合进行查询
using System.Text;–>输出文本类型
using System.Threading.Tasks;–>异步操作

namespace cxsw–>创建命名空间
{
class demo1–>创建一个名为demo1的类
{
static void Main(string[] args)–>main方法,程序的入口
{
}
}
}

main方法的四种写法:
1)static void Main(){}string[] args
2)static void Main(){}
3)static int Main(String[] args){}
4)static int Main(){}

注意:
C#的主方法名第一个字母必须大写:Main(),且必须有static关键字
四.从控制台输出:
1.输出字符串常量
Console.WriteLine(“字符串常量”);
2.输出单个变量
Console.WriteLine(变量);
3.使用连接符(+)混合输出字符串和变量
Console.WriteLine(“字符串”+变量);
4.使用格式占位符混合输出字符串和变量
Console.WriteLine(“字符串{0},{1}”,表达式1,表达式2);
五.从控制台输入:
1)输入字符串类型
定义一个字符串类型的变量,接受用户输入的字符串
String name;
给用户一个提示,提示用户进行输入
Console.WriteLine(“请输入姓名:”);
将用户输入的内容存入变量中
name=Console.Readline();
2)把字符串转化成数字
age=int.Parse(Console.Readline());
六.注释
注释方式:
单行注释://
多行注释:/……/
文档注释:/// xml注释
using System;namespace cxsw { //创建命名空间
class Test101HelloWorld { //创建类
static void Main(string[] args) { //主函数
//输出
Console.WriteLine(“今天第一天”); //控制台输出
int i = 1;
Console.WriteLine(i); //输出变量
Console.WriteLine(“i的值为:”+i);
Console.WriteLine("1+1={0},22={1}",1+1,22);
//输入
string name;
Console.WriteLine(“请输入你的名字:”);
name = Console.ReadLine();
Console.WriteLine(“用户输入的姓名为:”+name);
//把字符串转换为数字
Console.WriteLine(“请输入要转换为字符串的数字:”);
int age = int.Parse(Console.ReadLine());
Console.WriteLine(“被转换为数字的字符串为:”+age);

        //Console.ReadKey();//针对VS.NET用户的
        //这使得程序会等待一个按键的动作,防止程序从VisualStudio.NET
        //启动时屏幕会快速运行并关闭的问题
        //也就是说加上他程序执行最后会等待你按键才退出
    }
}}

第二章:数据类型常量变量
一.数据类型
(1)整数类型
数学上的整数可以从负无穷到正无穷,但是计算机的存储单位是有限的,
所以计算机语言提供的整数类型的值总是一定范围之内的。
C#有八种数据类型:
短字节型(sbyte),字节型(byte),短整型(stort),无符号短整型(ustort),
整型(int),无符号整型(unit),长整型(long),无符号长整型(ulong)。

(2)字符类型
除了数字,计算机处理的信息还包括字符。字符主要包括数字字符,英文字符,
表达式字符等,C#提供的字符类按照国际上公认的标准,采用Unicode字符集。
字符型书数据占用两个字节的内存,可以用来存储Unicode字符集当中的一个字符(
注意,只是一个字符,不是一个字符串)。

(3)实数类型
C#有三种实数类型:float(单精度型),doudle(双精度型),decimal(十进制小数型)。

(4)布尔类型
布尔类型是用来表示“真”和“假”两个概念的,在C#里用true和false来表示。

1.常用数据类型
整数:(4种)
int(32位整数)、short(16)、long(64)、byte(8)
浮点型:(3种)
float(32位浮点数,精确到小数点后7位)
double(64位浮点数,精确到小数点后15~20位)
decimal(128位浮点数,精确到小数点后28~29位)
布尔型:bool true、false
字符型:char(单个字符,用单引号存储)
字符串类型:string(双引号)

2.数据类型转换
数据类型之间的大小关系:
byte–>short–>int–>float–>double–>decimal
1.隐式类型转化
由低类型向高类型的转化
注意:转化的两种数据类型之前必须兼容
2.显式类型转化(强制类型转化)
由高类型向低类型的转化
1)利用Parse方法进行转化
double d1=2.23;
int i1=int.Parse(d1);
2)使用convert提供的类进行强制转化
语法:
ToDouble(变量)

			double d = 23.5;
			int i;
			i = (int)d;

3.引用类型
using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;
namespace Csp个人课程备课.第二章数据类型变量{
class Test201数据类型
{
static void Main(string[] args)
{
//数据类型
int age;//用来表示年龄
double score;//用来表示分数
char gender;//用来表示性别
bool b;//用来表示真假
}
}}

二.常量
语法:
const 数据类型 变量名 = 常量值;
在声明和初始化变量的时候,在变量前加上关键字const,就可以把一个变量指定为常量。
在使用过程当中,常量值不会发生变化,后期不允许修改常量值,常量的命名规范和变量是一样的。
using System;namespace Csp个人课程备课.第二章数据类型变量{
class Test202 {
const double pi = 3.14; //定义常量
static void Main(string[] args) {
Console.WriteLine(pi);
}
}}
三.变量
1.变量的声明
变量类型 变量名;
int num;
变量类型 变量名 = 变量值;
房间类型 房间号 = 入住客人;
2.变量的命名
1)驼峰命名法:最中间单词的首字母是大写的
demodirect–>demoDirect
2)帕斯卡命名法:每个单词的首字母都大写
demodirect–>DemoDirect
3.变量的命名规则
1)由字母、数字、下划线组成,不能以数字开头
2)不能用保留字作为变量名(console)
3)建议用英文单词
4)变量名区分大小写
4.注意事项:
1)未经声明的变量不能使用
2)未经赋值的变量不能输出
3)可以一次性声明多个变量
4)可以先声明再赋值,也可以声明的同时初始化
using System;namespace Csp个人课程备课.第二章数据类型变量{
class Test203 {
static void Main(string[] args) {
//定义在函数体当中的变量为局部变量 只能在当前函数体内使用
//定义变量
int a;
a = 10;
Console.WriteLine(“变量a的值为:”+ a);
int b = 20;
Console.WriteLine(“变量b的值为:”+b);
b = 40;
Console.WriteLine(“变量b修改后的值为:”+ b);
int c, d;
c = 3;
d = 4;
Console.WriteLine(“变量c的值为:”+c+“,变量d的值为:”+d);
int e = 1, f = 2;
Console.WriteLine(“变量e的值为:”+e+“,变量f的值为:”+f);
}
}}
using System;namespace Csp个人课程备课.第二章数据类型变量{
class Test204 {
static int i; //定义在函数体外的变量为全局变量 可以在当前文件中使用
static void Main(string[] args)
{
//定义在函数体当中的变量为局部变量 只能在当前函数体内使用
//定义变量
int a = 10;
Console.WriteLine(“变量a输出:”+a);

		i = 30;
		Console.WriteLine("常量输出:"+i);
	}
	void eat(){
		//a = 11; //提示未定义访问不到
		i = 31; //不提示错误证明可以访问到
	}

}}

四.注意事项
using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;
namespace Csp个人课程备课.第二章数据类型变量{
class Test205{
static void Main(string[] args)
{
short s = 1;
int i = 2;
long l = 3;
char ch = ‘a’;
Console.WriteLine(s + " " + i + " " + l + " " + ch);
//i = 2200000000;//选用数据类型时 注意是否超出范围
//如果超出范围则错误

		float ff = 3.14f; //浮点数类型后面加f
		double dd = 3.14;
		Console.WriteLine(ff + " " + dd);

		//char类型
		char cs = 'a';//char类型的值要用单引号引起来
		char cc = ' ';//char类型的值不能啥也没有哪怕是一个空格也可以
		char ccc = '\n';//表示转义字符
		char c1 = (char)97;//ASCII码
		Console.WriteLine(cs+" "+cc+" "+ccc+" "+c1);

		//数据类型转换
		short st1 = 2;
		int it1 = st1;//隐式转换
		Console.WriteLine("it1的值为:"+it1);
		double db1 = 25.5;
		int it2 = (int)db1;//强制转换
		Console.WriteLine("it2的值为:"+it2);
	}
}}

五.ASCII码表

六.转义字符

第三章:运算符
一.算数运算符

      • / % ++ –
        +号的用法:
        1)对两个数字进行相加
        2)字符串的连接
        ++、–复合运算:
        1)++在前:先运算,后赋值
        2)++在后:先赋值,后运算
        using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;
        namespace Csp个人课程备课.第三章运算符和表达式{
        class Test301算数运算符{
        static void Main(string[] args) {
        int A = 10, B = 5;
        //算数运算符的各种运算
        Console.WriteLine(“A=10,B=5”);
        Console.WriteLine(“A+B=”+(A + B));
        Console.WriteLine(“A-B=”+(A - B));
        Console.WriteLine(“A*B=”+(A * B));
        Console.WriteLine(“A/B=”+(A / B));
        //取模,表达式中书写了A%%B,其中两个%表示输出一个%
        Console.WriteLine(“A%B=”+(A % B));

         int a = 1, b = 2, c = 3, d = 0;
         Console.WriteLine("a,b,c的值为:"+a+" "+b+" "+c);
         Console.WriteLine("a++的值为:"+(a++));
         Console.WriteLine("a的值为:"+a);
         Console.WriteLine("++a的值为:"+(++a));
         Console.WriteLine("a的值为:"+a);
         a = 1; b = 2; c = 3; d = 0;
         //a = 3; b = 3; c = 3;
         //   1    2    3    3    3
         d = a++ + a + ++b + b + ++a;  //在下一次计算时才会得到所有加一后的值
         Console.WriteLine("d的值为:"+d);//12
        

        }
        }}

二.关系运算符
(比较是否相等) != > < >= <=
1
using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;/**

  • 关系运算符
  • == != > < >= <=
    **/namespace Csp个人课程备课.第三章运算符和表达式{
    class Test302关系运算符
    {
    static void Main(string[] args) {
    int a = 20; int b = 20; int c = 30;
    Console.WriteLine(a == b);//true
    Console.WriteLine(a != b);//false
    Console.WriteLine(a > b);//false
    Console.WriteLine(a > c);//false
    Console.WriteLine(c > b);//true
    Console.WriteLine(a < c);//true
    Console.WriteLine(a >= c);//false
    Console.WriteLine(a <= c);//true
    }
    }}

三.逻辑运算符
&& || !
1
using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;/**

  • 逻辑运算符
  • &&(与):符号两边同时成立 则 成立
  • ||(或):只要有个成立 则 成立
  • !(非): 结果相反
    **/namespace Csp个人课程备课.第三章运算符和表达式{
    class Test303逻辑运算符
    {
    static void Main(string[] args) {
    bool a = true;
    bool b = false;
    bool c = true;
    Console.WriteLine(a && b);//false
    Console.WriteLine(b || c);//true
    Console.WriteLine(!c);//false
    int d = 1;
    int e = 2;
    int f = 3;
    Console.WriteLine(d > e && f < e);//false
    Console.WriteLine(e < f || d > f);//true
    Console.WriteLine(!(f > d));//false
    }
    }}

四.赋值运算符
(赋值) += -= = /= %=
1
using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;/
*

  • 赋值运算符
  • = += -= *= /= %=
    **/namespace Csp个人课程备课.第三章运算符和表达式{
    class Test304赋值运算符
    {
    static void Main(string[] args) {
    int a = 10;
    int b = 20;
    int c;
    c = a + b;
    Console.WriteLine©;//30
    c += a;
    Console.WriteLine©;//40
    c -= a;
    Console.WriteLine©;//30
    c /= 1;
    Console.WriteLine©;//30
    b %= 2;
    Console.WriteLine(b);//0
    }
    }}

五.位运算
&(按位与) |(或) ^(异或) ~(非) <<(左移) >>(右移)
1
using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;/**

  • 位运算符
  •  &(按位与)	   |(或)		^(异或)	~(非)   <<(左移)	>>(右移)	 >>>(无符号右移)
    
  •  二进制
    
  •  	十进制转换二进制
    
  •  13	二进制	1101
    
  •  2048	1024	512	  256	128	 64	 32	  16   8  4  2  1 权次方
    
  •  											   1  1  0  1
    
  •  154							1     0   0    1   1  0  1  0
    
  •  685				1       0   1     0   1    0   1  1  0  1
    
  •  1250	1       0       0   1     1   1    0   0  0  1  0
    
  •  243                         1     1   1    1   0  0  1  1
    
  •  684             1       0   1     0   1    0   1  1  0  0
    
  •  60                                    1    1   1  1  0  0
    
  •  //如243可以减128用得到就是1余数再往后减可以减就是1,不够减就是0
    
  •  符号位  1代表负数   0 代表 正数
    

**/namespace Csp个人课程备课.第三章运算符和表达式{
class Test305位运算符
{
static void Main(string[] args) {
int a = 60;
//二进制:111100
int b = 13;//二进制:001101 1101前面的0是补上去的 正数补0负数补1 为了和要比较的二进制位数一致
int c = 0; //
c = a & b; // 二进制:001100 相对应的位都为1时结果为1
Console.WriteLine©;//12

		c = a | b;//二进制:111101相对应的只要有一个为1结果为1 	111101
		Console.WriteLine(c);//61

		c = a ^ b;//二进制:110001相对应的位 相同为0 不同为1
		Console.WriteLine(c);//49

		c = ~a;   //二进制:000011 相对应的位  取反
		Console.WriteLine(c);//-61

		c = a << 2; //二进制:11110000
		Console.WriteLine(c);//240

		c = -a >> 60;//二进制:二进制 32个1
		Console.WriteLine(c);//-1
	}
}}

六.条件运算符
(三元运算符) 表达式1?表达式2:表达式3 -> 3>2?3:2
1
using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;/**

  • 三目运算符 如果 否则
  •  1? 2: 3
    
  •  1:条件	2:条件成立的话要做的事	3.条件不成立要做的事**/namespace Csp个人课程备课.第三章运算符和表达式{
    
    class Test306三元运算符
    {
    static void Main(string[] args) {
    int a = 10;
    int b;
    b = (a > 10) ? 100 : 50; //如果a大于10 条件 则 成立为100,否则 为 50.
    Console.WriteLine(b);//条件不成立所以50
    }
    }}
C#完整教程以下是目录: 第一章 C#语言基础 5 1.1 C#语言特点 5 1.2 编写控制台应用程序 6 1.3 类的基本概念 10 1.4 C#的数据类型 13 1.5 运算符 20 1.6 程序控制语句 23 1.7 类的继承 26 1.8 类的成员 28 1.9 类的字段和属性 28 1.10 类的方法 30 1.11 类的多态性 36 1.12 抽象类和抽象方法 38 1.13 密封类和密封方法 39 1.14 接口 39 1.15 代表 42 1.16 事件 43 1.17 索引指示器 44 1.18 名字空间 45 1.19 非安全代码 46 习题 47 第二章 Windows编程的基础知识 48 2.1 窗口 48 2.2 Windows的消息系统 48 2.3 Windows编程接口和类库 49 2.4 Windows应用程序的基本结构 50 习题 57 第三章 常用控件和类的使用 58 3.1 控件通用属性 58 3.2 Form类 58 3.3 标签(Label)控件 59 3.4 按钮(Button)控件 60 3.5 事件处理函数的参数 60 3.6 文本框(TextBox)控件 61 3.7 Convert类 62 3.8 单选按钮(RadioButton)和GroupBox控件 62 3.9 Font类 63 3.10 多选框(CheckBox)控件 63 3.11 列表选择控件(ListBox) 65 3.12 下拉列表组合框(ComboBox)控件 66 3.13 ToolTip控件 66 3.14 超级链接(LinkLable)控件 67 3.15 定时(Timer)控件 67 3.16 DateTime类 68 3.17 菜单 69 3.18 工具条 70 3.19 状态栏(StatusBar)控件 72 3.20 鼠标事件 73 3.21 快捷菜单(ContextMenu) 74 3.22 综合例子:计算器 75 习题: 77 第四章 文本编辑器的实现 79 4.1 用RichTextBox控件实现文本编辑器 79 4.2 实现文本编辑器的剪贴板功能 80 4.3 实现文本编辑器的存取文件功能 80 4.4 修改字体属性 83 4.5 实现About对话框 84 4.6 实现文本编辑器查找替换功能 85 4.7 提示用户保存修改的文件 88 4.8 打印和打印预览 90 4.9 编写多文档界面应用程序 94 习题 100 第五章 图形图像编程 102 5.1 图形设备环境接口(GDI) 102 5.2 Graphics类 102 5.3 GDI+中三种坐标系统: 103 5.4 GDI+中常用的结构 104 5.5 画笔 105 5.6 创建画刷 106 5.7 基本图形的绘制和填充 110 5.8 Matrix类和图形的平移、变形、旋转 122 5.9 图形文件格式 124 5.10 图形框PictureBox控件 125 5.11 Bitmap类 126 5.12 图像剪贴板功能 130 5.13 图像的处理 133 习题 136 第六章 文件和流 137 6.1 用流读写文件 137 6.2 File类和FileInfo类 138 6.3 Directory类和DirectoryInfo类 140 6.4 例子:查找文件 143 6.5 例子:拆分和合并文件 144 习题: 145 第七章 多线程程序设计 146 7.1 线程类(Thread)的属性和方法 146 7.2 线程的创建 147 7.3 建立线程类 148 7.4 线程的优先级 149 7.5 多个线程互斥 150 7.6 Monitor类 151 7.7 线程的同步:生产者和消费者关系 151 习题: 153 第八章 ADO.NET与数据操作 154 8.1 数据库基本概念 154 8.2 设计连接和不连接数据库应用程序的基本步骤: 154 8.3 用ACCESS创建数据库 155 8.4 结构化查询语言SQL 157 8.5 用Connection对象连接数据库。 158 8.6 Command对象 158 8.7 DataAdapter对象 159 8.8 DataSet对象 160 8.9 用DataGraid控件显示数据和数据绑定 162 8.10 不连接数据库应用程序的完整的例子 162 8.11 修改数据并保存修改的数据到源数据库 163 8.12 其它数据绑定控件 164 8.13 建立主从关系表 165 第九章 ASP.Net编程基础知识 167 9.1 网络基础 167 9.2 HTML标记语言 171 9.3 ASP.NET技术基础 181 第十章 Web服务器端控件 188 10.1 常用的ASP.NET服务器端控件 188 10.2 ASP.Net控件数据绑定 192 10.3 数据验证控件 209 10.4 DataGraid控件 219 10.5 AdRotator控件 235 10.6 Calender控件 236 10.7 Visual Studio.Net实现留言板 239 第十一章 ASP.NET内建对象 242 11.1 Request对象 242 11.2 Response对象 244 11.3 Cookie对象 246 11.4 Application对象 250 11.5 Session对象 253 11.6 Server 对象 257 习题 258 第十二章 可扩展标记语言 259 12.1 HTML及其缺点 259 12.2 SGML(标准通用置标语言) 259 12.3 XML(可扩展置标语言) 259 12.4 XML的文档格式 260 12.5 用XSL文件显示XML文档 261 12.6 .NET对XML的支持 265 12.7 ADO.NET和XML 268 12.8 使用Visual Studio.Net建立和显示XML文档 271 第十三章 Web服务 273 13.1 Web服务的概念和用途 273 13.2 建立Web服务 274 13.3 基于.Net的Web服务客户端程序 277 13.4 建立Web服务客户端程序一般方法 280 13.5 发布和发现Web服务 281

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

我不是码神(dn)

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值