zoukankan      html  css  js  c++  java
  • 数组的定义及应用

    数组:
    什么是数组?
    内存中连续存储同一类数据的一块空间。

    类似于:豆角(一维)。


    分类:一维,二维,多维。

    一维数组:
    定义:
    数据类型[] 数组名 = new 数据类型[数组长度];

    int[] a = new int[10];

    string[] b = new string[20];

     1 public static void Main(string[] args)
     2         {
     3             int[] a = new int[10];
     4 
     5             for (int i = 0; i < a.Length; i++)
     6             {
     7                 a[i] = (i + 1) * 10;
     8             }
     9 
    10 
    11             Console.WriteLine("下面是数组中的值");
    12             for (int i = 0; i < a.Length; i++)
    13             {
    14                 Console.WriteLine(a[i]);
    15             }
    16         }

    数组元素的引用:
    数组名[下标] 下标是从0开始算的。
    a[0] = 10;
    a[1] = 20;
    a[2] = 30;

    Console.Write(a[2]);

    i - 下标
    a[i] - i下标这个空间中的值。
    a - 整个数组

    题目:

    1.星光大道投票

     1 static void Main(string[] args)
     2         { 
     3         //数组
     4             //星光大道投票:20个评委给5个选手投票,输出票数
     5             int[] xs=new int[5];
     6 
     7             //20人投票
     8             for (int i = 0; i <20; i++)
     9             {
    10                 Console.Write("您投几号?(1-5)");
    11              int   hao=Convert.ToInt32(Console.ReadLine());
    12                 xs[hao - 1]++;
    13             }
    14 
    15             //显示
    16             for (int i = 0; i < 5; i++)
    17             {
    18                 Console.WriteLine("第{0}号选手,得票数是:{1}",i+1,xs[i]);
    19             }
    20 
    21         }

    2.教练给球员打分:显示每分球员的得分,显示最高分及球员号,最低分及球员号,显示平均得分。

     1 static void Main6666(string[] args)
     2         { 
     3         //教练给10个球员打分
     4             int[] qy=new int[10];
     5 
     6             //打分
     7             for (int i = 0; i < 10; i++)
     8             {
     9                 Console.Write("请给第{0}号球员打分:",i+1);
    10                 qy[i] = Convert.ToInt32(Console.ReadLine());
    11             }
    12             //显示
    13             for (int i = 0; i < 10; i++)
    14             {
    15                 Console.WriteLine("第{0}号球员的得分是:{1}",i+1,qy[i]);
    16             }
    17             //输出最高分和最低分
    18             int max = 0,min=1000;
    19             int max_no = 0, min_no = 0;
    20             for (int i = 0; i < 10; i++)
    21             {
    22                 if (qy[i]>max)
    23                 {
    24                     max = qy[i];
    25                     max_no = i;
    26                 }
    27                 if (qy[i]<min)
    28                 {
    29                     min = qy[i];
    30                     min_no = i;
    31                 }
    32 
    33             }
    34             Console.WriteLine("最高分是:{0}({1}号球员),最低分是:{2}({3}号球员)",max,max_no+1,min,min_no+1);
    35 
    36             //求平均分
    37             int sum = 0;
    38             double average = 0;
    39             for (int i = 0; i < 10; i++)
    40             {
    41                 sum = sum + qy[i];
    42             }
    43                 average = 1.0*sum / 10;
    44             Console.WriteLine("本队球员的平均得分是:{0}",average);
    45         }

    3.青歌赛打分:20位评委给一个选中手分,去掉一个最高分,去掉一个最低分求歌手的平均得分。

     1  static void Main(string[] args)
     2         {
     3             //青歌赛打分:20位评委给一个选手打分,去掉一个最高分,去掉一个最低分求歌手的平均得分。
     4             int[] fenshu=new int[20];
     5             //打分
     6             for (int i = 0; i < 20; i++)
     7             {
     8                 Console.WriteLine("请给选手打分:");
     9                 fenshu[i] = Convert.ToInt32(Console.ReadLine());
    10 
    11             }
    12             int sum = 0;
    13             int max = 0;
    14             int min = 1000;
    15             double avg;
    16             for (int i = 0; i < 20; i++)
    17             {
    18                 if (fenshu[i]>max)
    19                 {
    20                     max = fenshu[i];
    21                 }
    22                 if (fenshu[i]<min)
    23                 {
    24                     min = fenshu[i];
    25                 }
    26 
    27             }
    28             for (int i = 0; i < 20; i++)
    29             {
    30                 sum += fenshu[i];
    31             }
    32             avg = 1.0*(sum - max - min) / 18;
    33             Console.WriteLine("去掉一个最高分{0},去掉一个最低分{1},选手的平均得分是{2}",max,min,avg);
    34         }

    4.成绩管理:老师输入20个学生的语文成绩,统计显示多少个及格,多少个优秀,多少个不及格,求出平均分。不及格的要显示学号及成绩。

     1 static void Main(string[] args)
     2         {
     3             //成绩管理:老师输入20个学生的语文成绩,统计显示多少个及格,多少个优秀,多少个不及格,求出平均分。不及格的要显示学号及成绩。
     4             int[]fenshu=new int[20];
     5             for (int i = 0; i <20; i++)
     6             {
     7                 Console.WriteLine("第{0}个学生的成绩是:",i+1);
     8                 fenshu[i] = Convert.ToInt32(Console.ReadLine());
     9             }
    10             int jige = 0;
    11             int youxiu = 0;
    12             int bujige = 0;
    13             int sum = 0;
    14             double avg=0;
    15             for (int i = 0; i < 20; i++)
    16             {
    17                 if (fenshu[i] < 60)
    18                 {
    19                     bujige++;
    20 
    21                     Console.WriteLine("不及格的学生的学号是:{0},成绩是{1}", i + 1, fenshu[i]);
    22                 }
    23             }
    24                 Console.WriteLine("不及格的人数:"+bujige);
    25 
    26                 for (int i = 0; i < 20; i++)
    27                 {
    28                     if (fenshu[i] >= 90)
    29                     {
    30                         youxiu++;
    31 
    32                     }
    33                 }
    34                 Console.WriteLine("优秀的人数:"+youxiu);
    35                 for (int i = 0; i < 20; i++)
    36                 {
    37                     if (fenshu[i] >= 60)
    38                     {
    39                         jige++;
    40 
    41                     }
    42                 }
    43                 Console.WriteLine("及格的人数:"+jige);
    44                     
    45             
    46             for (int i = 0; i < 20; i++)
    47             {
    48                 sum+=fenshu[i];
    49                 avg = 1.0*sum / 20;
    50             }
    51             Console.WriteLine("平均分是:"+avg);  
    52    }

     5.一个球,从10米高处落下,每次弹起80%的高度,问第五次触地后弹出的高度是多高?(3.2768米)

    1  static void Main(string[] args)
    2         {//一个球,从10米高处落下,每次弹起80%的高度,问第五次触地后弹出的高度是多高?
    3             double gaodu = 10;
    4             for (int i = 1; i <=5; i++)
    5             {
    6                 gaodu *= 0.8;
    7             }
    8             Console.WriteLine("第五次触地后弹出的高度是:"+gaodu);
    9         }

    6.司机看到里程表的数字是12321问下一次对称数字出现的是什么数字?(12421)

     1 static void Main(string[] args)
     2         {
     3             //司机看到里程表的数字是12321问下一次对称数字出现的是什么数字?
     4             int shu = 12322;
     5             int gw = 0,sw=0,bw=0,qw=0,ww=0;
     6            
     7             while (shu>12321)
     8             {
     9                 gw = shu % 10;         //取出个位上的数
    10                 sw = shu / 10 % 10;    //取出十位上的数
    11                 bw = shu / 100 % 10;   //取出百位上的数
    12                 qw = shu / 1000 % 10;  //取出千位上的数
    13                 ww = shu / 10000;      //取出万位上的数
    14                 if (gw==ww&&sw==qw)
    15                 {
    16                     Console.WriteLine("下一个对称数是:"+shu);
    17                     break;
    18                 }
    19                 shu++;
    20             }
    21            
    22         }

    7.存款利率是千分之三(年利率),每月会把利息加到本金上计算,存10000元,第24个月存款会是多少?(10600)

     1 static void Main(string[] args)
     2         {
     3             //存款利率是千分之三(年利率),每月会把利息加到本金上计算,存10000元,第24个月存款会是多少?
     4             double bj = 10000;
     5             double lx = 0;
     6             for (int i = 1; i <=24; i++)
     7             {
     8                 lx = 10000 * 0.03/12;
     9                 bj = bj + lx;
    10                 Console.WriteLine("第{0}个月的存款是:{1}",i,bj);
    11             }
    12             Console.WriteLine("第24个月的存款会是"+bj);
    13         }
  • 相关阅读:
    idea的svn安装
    工作面板视图
    maven的profile
    web 对接 platform
    jdk动态代理在idea的debug模式下不断刷新tostring方法
    jdk动态代理
    springboot获得应用上下文
    数据库时间日期区别
    Java的date和string互转
    httpclient中文乱码
  • 原文地址:https://www.cnblogs.com/kellybutterfly/p/5410629.html
Copyright © 2011-2022 走看看