首页 > 编程语言 >C#学习第三天

C#学习第三天

时间:2022-10-08 10:35:55浏览次数:44  
标签:C# double sum 第三天 学习 int 数组 new avg

  今天进行了C#的第三次学习,继续了解C#的相关知识:

目录


数组

  声明数组并初始化的格式为Java还有C++中常用的方法,例如double[] balance = new double[10];,又或者在声明数组的同时给数组赋值double[] balance = { 2340.0, 4523.69, 3421.0};,还可以是创建并初始化一个数组int [] marks = new int[] { 99, 98, 92, 97, 95};
  遍历数组中的元素可以使用for或者foreach来进行循环。


多维数组

  多维数组分为二维及以上维度的数组,这个也是老生常谈了
  声明二维数组可以string [,] names;,三维数组可以int [ , , ] m;,初始化数组如下:

int [,] a = new int [3,4] {
 {0, 1, 2, 3} ,   /*  初始化索引号为 0 的行 */
 {4, 5, 6, 7} ,   /*  初始化索引号为 1 的行 */
 {8, 9, 10, 11}   /*  初始化索引号为 2 的行 */
};

交错数组

  交错数组在我的理解看来就是数组里嵌套多个数组,举个例子:int[][] scores = new int[2][]{new int[]{92,93,94},new int[]{85,66,87,88}};
  上述是一个第一行为3个数,第二行为四个数的数组,可以理解为不规则排列。


传递数组给函数

using System;

namespace ArrayApplication
{
   class MyArray
   {
      double getAverage(int[] arr, int size)
      {
         int i;
         double avg;
         int sum = 0;

         for (i = 0; i < size; ++i)
         {
            sum += arr[i];
         }

         avg = (double)sum / size;
         return avg;
      }
      static void Main(string[] args)
      {
         MyArray app = new MyArray();
         /* 一个带有 5 个元素的 int 数组 */
         int [] balance = new int[]{1000, 2, 3, 17, 50};
         double avg;

         /* 传递数组的指针作为参数 */
         avg = app.getAverage(balance, 5 ) ;

         /* 输出返回值 */
         Console.WriteLine( "平均值是: {0} ", avg );
         Console.ReadKey();
      }
   }
}

参数数组

using System;

namespace ArrayApplication
{
   class ParamArray
   {
      public int AddElements(params int[] arr)
      {
         int sum = 0;
         foreach (int i in arr)
         {
            sum += i;
         }
         return sum;
      }
   }
     
   class TestClass
   {
      static void Main(string[] args)
      {
         ParamArray app = new ParamArray();
         int sum = app.AddElements(512, 720, 250, 567, 889);
         Console.WriteLine("总和是: {0}", sum);
         Console.ReadKey();
      }
   }
}

  要注意的是
img


Array类

img
img
img
  值得注意的是Array.Sort() 方法会直接修改原数组

标签:C#,double,sum,第三天,学习,int,数组,new,avg
From: https://www.cnblogs.com/lht020321/p/16768143.html

相关文章

  • 消灭异步回调,还得是async-await
    本篇,带你读懂async~await间的浪漫。关于异步处理问题,ES5的回调让我们陷入回调地狱轮回,后来ES6的Promise(Promise不了解?点这了解)让我们脱离轮回,终于,ES7的async-await带我们......
  • vcsa7 页面出现“no healthy upstream”处理过程
    一、昨天服务器出现“nohealthyupstream”错误无法登录,搜索网络给出一下的思路:                对于“nohealthyupstream”的错误提示,可能的原因有......
  • UVA10225 Discrete Logging
    题意BSGS。思路BSGS。代码lla,b,mod;llblock;unordered_map<ll,ll>m;llbsgs(llx,lly){// if(y==1)return0; llbas=1; for(lli=0;i<block;i++){ m[b......
  • 狂神说学习笔记:Vue
    Vue1、概述Vue(读音/vjuː/,类似于view)是一套用于构建用户界面的渐进式JavaScript框架,发布于2014年2月。与其它大型框架不同的是,Vue被设计为可以自底向上逐层应用......
  • Comparable和Comparator
    出处comparable接⼝实际上是出⾃java.lang包它有⼀个compareTo(Objectobj)⽅法进行排序comparator接⼝实际上是出⾃java.util包它有⼀个compare(Objectobj1,......
  • ASP.NETCore中REST落地指南
    1、控制器上[Route("[controller]/[action]")]2、强制要求控制器中不同的操作用不同的方法名3、把[HttpGet]、[HttpPost]、[HttpDelete]、[HttpPut]等添加到对应的操作方法......
  • scanf安全问题解决:
    1.加#define_CRT_SECURE_NO_WARNINGS  //必须写在程序的首句2.加#pragmawarning(disable:4996)       //可以写到任意位置 3.将scanf改为scanf_s......
  • Java学习!
    Java应用构建工具:Ant,Maven,Jekin应用服务器:Tomcat,Jetty,Jboss,Websphere,WeblogicWeb开发:Struts,Spring,Hibernate,MyBatis大数据:Hadoop安卓 Java特性优势......
  • C语言每日一题——第十一天
    第十一天还记得在第三天写的斐波那契数列程序吗?小明最初想用这个函数作为随机数生成器的。今天,小明决定重新拾起这个函数,用于生成随机数……输入程序在运行时通过getcha......
  • error: No matching function for call to 'cv2eigen'的解决方法
    报错#include<iostream>#include<opencv2/opencv.hpp>#include<opencv2/core/eigen.hpp>#include<Eigen/Core>#include<Eigen/Dense>报错/home/ubuntu/桌面/m......