C#中常量\枚举\结构及数组的运用
又一天结束了,今天在云和学院学习的知识下面继续来做总结。
一、常量\枚举\结构的运用
理论:
常量:const 类型 常量名 = 常量值
确定数量、确定值的几个取值:东西南北、男女、上中下。
枚举: enum Gender{male,female}
字符串与枚举的转换:(Gender)(Enum.Parse( typeof(Gender),“male”));每一个值都对应一个数字
结构体:访问修饰符struct结构名
{
定义结构成员
}
实操:
1,const
tatic void Main(string[] args)
{
const int PI = 3.14;
PI = 3.20;
}
2,enum
enum QQStatus{online,offline,hidden}
QQStatus status = QQStatus.online;
3,结构体和枚举的运用
class Program
{
public enum Gender {femal,meal};
public struct person { public string name; public int age; public Gender gender;}
static void Main(string[] args)
{
//定义一个结构类型Person,有三个成员,分别为姓名,性别,年龄 性别用枚举类型
//声明两个Person类型的变量,分别表示 张三 男 18岁/ 小兰 女 16岁
person p1 = new person();
p1.name = "张三";
p1.gender = Gender.femal;
p1.age = 18;
person p2 = new person();
p2.name = "小兰";
p2.gender = Gender.meal;
p2.age = 16;
Console.WriteLine("大家好,我是{0},是个{1}生,今年{2}岁",p1.name,p1.gender,p1.age);
Console.WriteLine("大家好,我是{0},是个{1}生,今年{2}岁", p2.name, p2.gender, p2.age);
Console.ReadKey();
}
}
二、数组
理论:
保存多个值;几乎任意类型都可以声明数组; int[] nums = new int[3];int[] nums = {5,3,8};
in[]nums=new int[3]{1,2,3};int[]nums=new int[]{2,3,5};
int[] nums = new int[3]{5,3,8}//个数和声明数必须一致
int[] nums = new int[5]{5,3,8}//错误
int[] nums = new int[]{5,3,8}//正确,可以省略数组个字
数组的声明:以上四种
使用索引器访问指定编号位置的元素,访问数组元素:nums[0]、nums[1]。索引从0开始。取到的元素的类型就是数组元素的类型。还可以对数组元素进行赋值。
常见问题:求平均值,求最大值,求和,排序
Array排序 和反序
实操:
数组里面都是人的名字,分割成:例如:老杨|老苏|老邹…”
string names = "";
string[] name = new string[8] { "老杨", "老苏", "老邹", "老虎", "老牛", "老蒋", "老王", "老马" };
for (int i = 0; i < name.Length - 1; i++)
{
names += name[i] + "|"; }
Console.Write(names + name[name.Length - 1]);
Console.ReadKey();
将一个整数数组的每一个元素进行如下的处理:如果元素是正数则将这个位置的元素的值加1,如果元素是负数则将这个位置的元素的值减1,如果元素是0,则不变。
for (int i = 0; i < num.Length; i++)
{
Console.WriteLine(num[i]);
}
Console.WriteLine("----------------------------");
for (int i = 0; i < num.Length; i++)
{
if(num[i]<0)
{
num[i]--;
}
else if (num[i] > 0)
{
num[i]++;
}
else
{ }
Console.WriteLine("现在的值是:{0}",num[i]); }
Console.ReadKey();
将一个字符串数组的元素的顺序进行反转。{“我”,“是”,”好人”} {“好人”,”是”,”我”}。第i个和第length-i-1个进行交换
string [] str = {"我","是","好人" };
for (int i = 0; i < str.Length/2; i++)
{
string temp = str[i];
str[i] = str[str.Length - 1 - i];
str[str.Length - 1 - i] = temp;
}
for (int i = 0; i < str.Length; i++)
{
Console.Write(str[i]);
}
Console.ReadKey();
从一个整数数组中取出最大的整数,最小整数,总和,平均值
int[] num = { 51, 21, 82, 41, 10, -5 };
int max = 0;
int min = 0;
int sum = 0;
for (int i = 0; i < num.Length; i++)
{
if (num[i] > max)
{
max = num[i];
}
else if (num[i] < min)
{
min = num[i];
}
sum = sum + num[i];
}
Console.WriteLine("最大的整数是:{0},最小的整数是:{1}", max, min);
Console.WriteLine("总和是{0},平均值是:{1}", sum, sum /num.Length);
Console.ReadKey();
好了,今天就写到这里,明天再继续吧!加油!
C#中常量\枚举\结构及数组的运用的更多相关文章
- Cocos2D在新版Swift中常量枚举值引用代码的修改
大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请多提意见,如果觉得不错请多多支持点赞.谢谢! hopy ;) 我们知道在SpriteBuilder中是无法直接给一个CCB文 ...
- .Net基础篇_学习笔记_第八天_复杂数据类型(常量/枚举/结构)
1.常量: 声明的常量的语法:const 变量类型 变量名=值;最大的特点就是,声明了常量后,就不能再被重新赋值. 2.枚举 语法:[public] enum 枚举名{ 值1, 值2, 值3, ... ...
- 【C语言入门教程】7.2 结构体数组的定义和引用
7.2 结构体数组的定义和引用 当需要使用大量的结构体变量时,可使用结构体定义数组,该数组包含与结构体相同的数据结构所组成的连续存储空间.如下例所示: struct student stu_a[50] ...
- C语言中的结构体,结构体数组
C语言中的结构体是一个小难点,下面我们详细来讲一下:至于什么是结构体,结构体为什么会产生,我就不说了,原因很简单,但是要注意到是结构体也是连续存储的,但要注意的是结构体里面类型各异,所以必然会产生内存 ...
- C语言 结构体数组保存到二进制文件中
在项目中我定义了一个结构体数组,头文件如下: C/C++ code ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 ...
- c++中如何定义编译期间常量,即这个常量可以用于定义数组下标
在c++中,类里面的成员变量不仅仅可以被const修饰,还可以被static const修饰,此时一个内建类型(如int ,char ,long等)的static const 可以看做是一个编译期间的 ...
- matlab学习笔记12_2创建结构体数组,访问标量结构体,访问非标量结构体数组的属性,访问嵌套结构体中的数据,访问非标量结构体数组中多个元素的字段
一起来学matlab-matlab学习笔记12 12_2 结构体 创建结构体数组,访问标量结构体,访问非标量结构体数组的属性,访问嵌套结构体中的数据,访问非标量结构体数组中多个元素的字段 觉得有用的话 ...
- 说说Java中的枚举(一)
在实际编程中,往往存在着这样的“数据集”,它们的数值在程序中是稳定的,而且“数据集”中的元素是有限的.例如星期一到星期日七个数据元素组成了一周的“数据集”,春夏秋冬四个数据元素组成了四季的“数据集”. ...
- -1-1 java 基础语法 java关键字 java 注释 常量 语句 运算符 函数 数组定义
Java语言基础组成 关键字 标识符 注释 常量和变量 运算符 语句 函数 数组 关键字 定义:被Java语言赋予了特殊含义的单词 特点:关键字中所有字母都为小写 用于定义数据类型的关键字 class ...
随机推荐
- 6)图[2]Prim算法[最小生成树]
Prim 算法 求解方法: 首先将所指定的起点作为已选顶点,然后反复在满足如下条件下的边中选择一条最小边,直到 所有顶点已成为已选顶点为止(选择n-1条边). #include "iostr ...
- hdu 4888 Redraw Beautiful Drawings 网络流
题目链接 一个n*m的方格, 里面有<=k的数, 给出每一行所有数的和, 每一列所有数的和, 问你能否还原这个图, 如果能, 是否唯一, 如果唯一, 输出还原后的图. 首先对行列建边, 源点向行 ...
- qemu/kvm/qemu-kvm/virsh的区别
转自:http://www.2cto.com/os/201305/209596.html qemu/kvm/qemu-kvm/virsh的区别 qemu是一套虚拟机管理系统,kqemu是qemu的 ...
- Optipng—PNG的优化图像工具初探
PNG 即 Portable Network Graphic 的简称,PNG 图像是一种无损压缩图像文件格式.因为网络传输的需要,我们总是希望 PNG 图像的容量能够小些.小些.再小些.要优化 PNG ...
- elk 日志处理的一点思路
zjtest7-frontend:/usr/local/logstash-2.3.4/bin# ./logstash -f ../config/logstash_agent.conf zjtest7- ...
- MySQL性能调优的方法
第一种方法 1.选取最适用的字段属性 MySQL可以很好的支持大数据量的存取,但是一般说来,数据库中的表越小,在它上面执行的查询也就会越快.因此,在创建表的时候,为了获得更好的 性能,我们可以将表中字 ...
- unity3d插件Daikon Forge GUI 中文教程-5-高级控件listbox和progress bar的使用
(游戏蛮牛首发)大家好我是孙广东.官网提供了专业的视频教程http://www.daikonforge.com/dfgui/tutorials/,只是是在youtube上,要观看是须要FQ的. 只是教 ...
- des 加密 iOS
转载请注明原文出处 生成同名的Des.h文件和Des.m文件后,拷贝下方的代码可直接使用.注意在Des.m文件中将key值修改为项目所需的key.---> #define DesKey 过程很 ...
- BZOJ 1211: [HNOI2004]树的计数( 组合数学 )
知道prufer序列就能写...就是求个可重集的排列...先判掉奇怪的情况, 然后答案是(N-2)!/π(d[i]-1)! -------------------------------------- ...
- BZOJ 3916: [Baltic2014]friends( hash )
字符串哈希..然后枚举每一位+各种判断就行了 ----------------------------------------------------------------------------- ...