C#语言的基础
一、C#的引入
01..net和C#的区别
1)大概在2000年,微软推出了一种革命性的产品--.NET(战略)
目标:任何人,在任何地方,使用任何终端设备,都可以访问微软提供的服务。
2).net Framework:要想让我们自己写的C#应用可以运行在Good Friend的Computer上,必须有.net Framework
3)IDE(Itergrated Developer Environment)集成开发环境
区别:net是一种平台,这种平台上可以跑多种语言,例如,vb,j#,C#
c#只是一种语言
02.Main方法四种形式,返回值只能是void或者int
Static void Main(){}
Static void Main(string[] args){}
Static int Main(){}
Static int Main(string[] args){}
03.什么是常量和变量
1)变量:可以变化的量。
解析:Int num=5;
Num=7;
2)常量;一旦定义,其值不能再后续代码中再次修改。
解析:PI
Int num=5;
04.Console类的了解和第一步的接触
1)C#向控制台输出利用Console.WriteLine()方法输出有三种方式
方式一:
Console.WriteLine();
方式二:
Console.WriteLine(要输入的值);
方式三:
Console.WriteLine(“格式是字符串”,变量列表);
eg、
string name=“C#”;
Console.WriteLine(“我是第一个{0}”,name);
注意小点:
Console.Write();输出后不换行
Console.WriteLine(); 输出后换行
Console.WriteLine();该方法的返回值是string类型
05.C#中类,对象和方法
1)什么是类?
解析:具有相同属性和行为的一系列事物的统称。
eg、Car Student Teacher Person
2)什么是对象?
解析:对象是能在现实生活中找到的某个能区别于其他事物的一个独特个体。
3)类和对象的关系
解析:类是对象的抽象(模板),对象是类的实例
4)自定义方法
语法:
[访问修饰符] 返回值类型 方法名 (参数类表)
{
//方法的主体
}
5)注释
文档注释:///
注意点:在方法上面使用
06.数据转换(int.Parae())
eg
int num=int.Parae(Console.ReadLine());
07·海量代码折叠
快捷键是Ctrl+K+S:#region
二、 c#语法快速热身
01.C#与java中的条件判断语句对比
条件判断语句 java c#
if if()
{
...
} 二者完全相同
if...else... if()
{
else
} 二者完全相同
注意:java和c#中switch用法有以下两点不同:
01.java中switch后的表达式取值只能为(int/char),
但是c#中取值可以是(int/char/string)
02.java中case后可以没有break语句,但是在c#则不行
多个可以case 可以共用一个break语句
02.c#中的一维数组
//在C#中和java中如下语句都可以定义一个长度为3的int类型数组
方式一:
int[] arr=new int[]{1,2,3};
方式二:
int[] arr;
arr=new int[]{1,2,3};
//int[] arr=new int[3]{1,2,3;//C#中正确,java中不可以
1)C#中数组定义语法:
数据类型[] 数组名;
02.如何循环输出数组中元素?
1) // 循环输出数组元素
int[ ] array = new int[5] { 0, 1 ,2, 3, 4}; // 声明并初始化一维数组
for (int i = 0; i < array.Length;i++ ) // 输出数组中的所有元素
{
Console.WriteLine(array[i]);
}
2)使用foreach循环遍历数组元素
foreach循环一般用于遍历整个集合或数组
语法:foreach (元素类型 变量名 in 集合或者数组名)
{
// 语句
}
03.二重循环复习
eg
int i, j; // 循环变量
// 外层循环控制打印的行数
for (i = 1; i <= 5; i++)
{
// 内层循环控制每行打印数字的个数
for (j = 1; j <= i; j++)
{
Console.Write(j);
}
Console.WriteLine();
}
04.冒泡排序
eg
namespace Day04_0100冒泡排序
{
class Program
{
static void Main(string[] args)
{
/*01.冒泡排序算法
*
*02.字符串常用方法
*03.类型转换
*
*/
//有 5个数字 4轮
//i j
//1 4
//2 3
//3 2
//4 1
/* i+j=4
* j=4-i;
*
*/
//本质:二重循环
int[] nums = { 10, 5, 8, 9, 50 };
Console.WriteLine("排序前:");
foreach (int item in nums)
{
Console.Write(item+"\t");
}
Console.WriteLine("");
//01.核心排序代码
for (int i = 0; i <4; i++)
{
for (int j = 0; j <4-i; j++)
{
if (nums[j]>nums[j+1])
{
int temp = nums[j];
nums[j] = nums[j + 1];
nums[j + 1] = temp;
}
}
}
小小总结,请多多指教.
C#语言的基础的更多相关文章
- iOS开发系列--C语言之基础知识
概览 当前移动开发的趋势已经势不可挡,这个系列希望浅谈一下个人对IOS开发的一些见解,这个IOS系列计划从几个角度去说IOS开发: C语言 OC基础 IOS开发(iphone/ipad) Swift ...
- Golang友团无闻Go语言Web基础视频教程
教程内容:GO语言资料Golang友团无闻Go语言编程基础Golang友团无闻Go语言Web基础教程 Go语言Web基础教程列表:[Go Web基础]12Go Web 扩展学习.mp4[Go Web基 ...
- 10个经典的C语言面试基础算法及代码
10个经典的C语言面试基础算法及代码作者:码农网 – 小峰 原文地址:http://www.codeceo.com/article/10-c-interview-algorithm.html 算法是一 ...
- Linux基础与Linux下C语言编程基础
Linux基础 1 Linux命令 如果使用GUI,Linux和Windows没有什么区别.Linux学习应用的一个特点是通过命令行进行使用. 登录Linux后,我们就可以在#或$符后面去输入命令,有 ...
- LINUX下C语言编程基础
实验二 Linux下C语言编程基础 一.实验目的 1. 熟悉Linux系统下的开发环境 2. 熟悉vi的基本操作 3. 熟悉gcc编译器的基本原理 4. 熟练使用gcc编译器的常用选项 5 .熟练使用 ...
- Java学习-033-JavaWeb_002 -- 网页标记语言JSP基础知识
JSP 是 Sun 公司提倡的一门网页技术标准.在 HTML 文件中,加入 Java 代码就构成了 JSP 网页,当 Web 服务器访问 JSP 请求的时候,首先执行其中的 Java 程序源码,然后以 ...
- c语言学习基础:[1]开发工具介绍
标签:c语言 1 2 3 4 分步阅读 学习编程语言的童鞋们一开始接触到的最多的估计就是C语言了,其次才是什么java.c++等,可以说学习c语言是我们走向编程世界的一座桥梁,学好它,对于我们学习和研 ...
- 关于JS脚本语言的基础语法
JS脚本语言的基础语法:输出语法 alert("警告!"); confirm("确定吗?"); prompt("请输入密码");为弱 ...
- 2.4JAVA基础复习——JAVA语言的基础组成数组
JAVA语言的基础组成有: 1.关键字:被赋予特殊含义的单词. 2.标识符:用来标识的符号. 3.注释:用来注释说明程序的文字. 4.常量和变量:内存存储区域的表示. 5.运算符:程序中用来运算的符号 ...
- 2.3JAVA基础复习——JAVA语言的基础组成函数
JAVA语言的基础组成有: 1.关键字:被赋予特殊含义的单词. 2.标识符:用来标识的符号. 3.注释:用来注释说明程序的文字. 4.常量和变量:内存存储区域的表示. 5.运算符:程序中用来运算的符号 ...
随机推荐
- HashSet源码详解
序言 在写了HashMap文章后,隔了几天才继续这一系列的文章,因为要学的东西实在是太多了,写一篇要花费的时间很多,所以导致隔了几天才来写.不过希望自己坚持下去.终有一天会拨开云雾见青天的.学Hash ...
- LLBL Gen Template Studio 2.x
Template Studio for LLBLGen Pro released Today we released Template Studio, a full-featured IDE for ...
- SQL Server中的版本号
在SQL Server中,通常版本号的命名是大版本.小版本.累积更新这种形式,比如说9.X.XXX就是SQL Server 2005.下面我将把SQL Server中版本号对应的版本列出来,以 ...
- 【WP 8.1开发】自定义(RAW)通知的使用
继续前面的话题,还是推送通知.上一篇文章中遗留了RAW通知的推送没有给各位演示,特特地留到现在,不为别的,只为这个RAW通知有点意思,玩起来会比较有意思.官方文档将RAW通知译为“原始通知”,这里还是 ...
- Objective-C中@property的所有属性详解
1,assign : 简单赋值,不更改索引计数 假设你用malloc分配了一块内存,并且把它的地址赋值给了指针a,后来你希望指针b也共享这块内存,于是你又把a赋值给(assign)了b.此时a 和b指 ...
- codeforces B. Pasha and String(贪心)
题意:给定一个长度为len的字符序列,然后是n个整数,对于每一个整数ai, 将字符序列区间为[ai,len-ai+1]进行反转.求出经过n次反转之后的序列! /* 思路1:将区间为偶数次的直接去掉!对 ...
- poj2253 Frogger(最短路变型或者最小生成树)
/* 题意:就是源点到终点有多条的路径,每一条路径中都有一段最大的距离! 求这些路径中最大距离的最小值! Dijkstra, Floyd, spfa都是可以的!只不过是将松弛的条件变一下就行了! 想了 ...
- [Qt5] Develop openCV3 by QML on Qt-creator
QML的酷炫控件,适合移动设备开发. qt-creator的跨平台是QML与opencv的粘合剂. 关键: QImage有若干种格式,转化为相应的Mat. Mat处理完后,还要正确得还原为原来格式的Q ...
- Screenfly – 各种设备的屏幕和分辨率下快速测试网站
Screenfly 让你能够在各种设备的屏幕和分辨率下查看你的网站.输入网址,并点击GO开始浏览网页.Screenfly 可以使用代理服务器来模拟设备,当您查看您的网站,代理服务器模仿您所选择的设备的 ...
- Apache+MySQL+PHP开发环境的搭建(二)
通过自主选择相应的apache,mysql,php等软件,根据自己的应用开发需求进行安装.此方法搭建的环境自主性较强,搭建过程较为复杂,繁琐. 1.所需软件: Apache: http-2.2.22- ...