1. 程式人生 > >C#練習——統計整型陣列中不重複數字的個數、將普通日期格式轉換成漢字日期格式、在控制檯錄入每個學生的姓名,當用戶輸入quit(不區分大小寫)時,程式停止接受使用者的輸入,並且顯示出使用者輸入的學生的個數

C#練習——統計整型陣列中不重複數字的個數、將普通日期格式轉換成漢字日期格式、在控制檯錄入每個學生的姓名,當用戶輸入quit(不區分大小寫)時,程式停止接受使用者的輸入,並且顯示出使用者輸入的學生的個數

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;


namespace ReviewPractice
{
    class Program
    {
        static void Main(string[] args)
        {
            #region  1、請統計出陣列:{1,2,3,4,5,6,7,8,9,1,2,3,79,23,45,64,9,3,2,4}中的不重複的數字的個數。2、將陣列中重複數字去掉後放入一個新的陣列中
            #region  1、統計陣列中不重複數字的個數
            //int[] array = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 1, 2, 3, 79, 23, 45, 64, 9, 3, 2, 4 };
            ////統計陣列中不重複數字的個數
            //int count = 0;
            //for (int i = 0; i < array.Length; i++)
            //{
            //    //判斷是否重複
            //    bool b = true;
            //    for (int j = 0; j < array.Length; j++)
            //    {
            //        //假如在不同的索引位置兩個數相等
            //        if (array[i] == array[j] && i != j)
            //        {
            //            b = false;
            //            break;
            //        }
            //    }
            //    //假如不重複
            //    if(b)
            //    {
            //        count++;
            //    }
            //}
            //Console.WriteLine("不重複數字的個數為:{0}",count);
            //Console.ReadKey();
            #endregion


            #region  2、將重複數字去掉並放入一個新的陣列中
            //int[] arrayInt = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 1, 2, 3, 79, 23, 45, 64, 9, 3, 2, 4 };
            ////對陣列進行排序
            //Array.Sort(arrayInt);
            //List<int> list = new List<int>();
            //for (int i = 0; i < arrayInt.Length - 1; i++)
            //{
            //    if (arrayInt[i] != arrayInt[i + 1])
            //    {
            //        list.Add(arrayInt[i]);
            //    }
            //}
            //list.Add(arrayInt[arrayInt.Length - 1]);
            //for (int i = 0; i < list.Count; i++)
            //{
            //    Console.WriteLine(list[i]);
            //}
            //Console.ReadKey();
            #endregion
            #endregion


            #region  製作一個控制檯小程式。要求:使用者可以在控制檯錄入每個學生的姓名,當用戶輸入quit(不區分大小寫)時,程式停止接受使用者的輸入,並且顯示出使用者輸入的學生的個數,以及每個學生的姓名。再增加一個顯示姓“王”的同學的個數,此處不考慮複姓問題。
            //List<string> strList = new List<string>();
            ////統計姓王的同學的個數
            //int count = 0;
            //string name;
            //do
            //{
            //    Console.WriteLine("請輸入學生姓名:");
            //    name = Console.ReadLine();
            //    strList.Add(name);
            //    //如果名字中第一個字元是王
            //    if (name.IndexOf('王') == 0)
            //    {
            //        count++;
            //    }
            //}
            //while (name.ToLower() != "quit");
            ////去掉quit
            //strList.RemoveAt(strList.Count - 1);
            //Console.WriteLine("您一共錄入{0}個學生,姓王同學的個數為:{1},名字分別為:", strList.Count,count);
            //foreach (string strName in strList)
            //{
            //    Console.WriteLine(strName);
            //}
            //Console.ReadKey();
            #endregion


            #region  將普通日期格式:“2011年6月4日” 轉換成漢字日期格式:“二零一一年六月四日”。暫時不考慮10日、13日、23日等“帶十”的問題。
            //while(true)
            //{
            //    Console.WriteLine("請輸入一個日期:");
            //    string date = Console.ReadLine();
            //    date = ConvertData(date);
            //    Console.WriteLine(date);
            //    Console.ReadKey();    
            //}
            #endregion
        }


        /// <summary>
        /// 將普通日期格式轉換成漢字日期格式
        /// </summary>
        /// <param name="date"></param>
        /// <returns></returns>
        private static string ConvertData(string date)
        {
            //不能直接修改字串,比如data[0]='零',字串具有不可變性
            //先根據字串data生成一個char陣列(字元陣列)
            char[] chs = date.ToCharArray();
            for (int i = 0; i < chs.Length; i++)
            {
                switch(chs[i])
                {
                    case '0':chs[i] = '零';
                        break;
                    case '1':
                        chs[i] = '一';
                        break;
                    case '2':
                        chs[i] = '二';
                        break;
                    case '3':
                        chs[i] = '三';
                        break;
                    case '4':
                        chs[i] = '四';
                        break;
                    case '5':
                        chs[i] = '五';
                        break;
                    case '6':
                        chs[i] = '六';
                        break;
                    case '7':
                        chs[i] = '七';
                        break;
                    case '8':
                        chs[i] = '八';
                        break;
                    case '9':
                        chs[i] = '九';
                        break;
                }
            }
            //return date;
            //將char陣列轉化為字串string
            return new string(chs);
        }
    }
}

相關推薦

C++之bool型別名稱空間的練習——使用一個函式找一個陣列的最大值或最小值

#include<iostream> using namespace std; int findMaxOrMin(int * n,int number) { int temp=n[0]; bool isMax; cin>>isMax; for(int i=1;

linux——如何搭建samba共享目錄認證共享及匿名共享?分系統

stat config alt 使用 files 設置 set 本地 ive 1.應用場景,搭建sam共享目錄可用於linux以及windows之間 2.服務端ip:192.168.56.11 (A)客戶端ip:192.168.56.133 (B) 查看防火墻狀

陣列只有一個或兩個數出現一次其它的數都出現偶數次

Question: 一個整型數組裡只有一個或兩個數字之外,其他的數字都出現了偶數次。求這個或這兩個只出現一次的數字 解: 題中關鍵資訊為其它數字出現偶數次,想到異或運算的性質知一個數與自身偶數次異或結果為0,可知如果將陣列中所有的數字進行異或,則結果等於這兩個只出現一次的數字的異或

在一個字串找到第一個只出現一次的字元,並返回它的位置, 如果沒有則返回 -1需要區分大小寫

題目:在一個字串(0<=字串長度<=10000,全部由字母組成)中找到第一個只出現一次的字元,並返回它的位置, 如果沒有則返回 -1(需要區分大小寫). 思路:建立資料結構HashMap,可以記錄每個字元對應出現的次數,之後遍歷字串,將對應的值儲存在HashMa

java入門練習題:讀入一組整數超過20個輸入0表示輸入結束;然後程式從這組整數把第二大的整數找出來並把它打印出來。

 程式意義:讀入一組整數(不超過20個),當用戶輸入0時,表示輸入結束;然後程式將從這組整數中,把第二大的整數找出來,並把它打印出來。  說明:(1)0表示輸入結束,它本身並不計入這組整數中。            (2)在這組整數中,既有整數又有負數;          

238. Product of Array Except Self 計算陣列除了某元素之外所有元素的積

Given an array of n integers where n > 1, nums, return an array output such that output[i] is equal to the product of all the eleme

求一個陣列出現次數最多的一個元素要求具備較高的效率

using namespace std;const int N = 128;int main(){    vector<int> vec;    vec.reserve(N);    srand(time(NULL));    int i;    for(i = 0;i<N;++i)   

java消除陣列重複的元素排序後輸出新陣列

法一: import java.util.Arrays; import java.util.Scanner; public class Main { public static void main(String[] args) { int[] a = new in

linux實戰考試題:批量創建和密碼能使用循環

linux 實戰 批量創建10個用戶,並且設置隨機8位密碼,要求不能用shell的循環(例如:for,while等),只能用linux命令及管道實現。方法1:[[email protected]/* */ /]# echo stu{01..10}|tr " " "\n"|sed -r ‘s

定義抽象類Shape抽象方法為showArea()求出面積並顯示定義矩形類Rectangle,正方形類Square,圓類 Circle根據各自的屬性,用showArea方法求出各自的面積在main方法構造3個對象調showArea方法。(體現多態)

子類 protected new 都是 package 使用 類指針 3.1 shape 實現多態的三個條件:1.要有繼承2.要有抽象方法重寫3.用父類指針(引用)指向子類對象 重載重寫重定義的區別: 1.重載:在同一個類中進行;  編譯時根據參數類型和個數決定方法調用; 

jq自定義下拉菜單點擊非自身元素下拉菜單本身關閉下拉菜單

info alt one === 下拉 AS 菜單 com code jq自定義下拉菜單,當用戶點擊非自身元素(下拉菜單)本身時關閉下拉菜單 截圖: 代碼如下: //關閉用戶菜單 $(document).mousedown(function(e){

編寫一個Java應用程式輸入對話方塊輸入兩個日期日期格式為YYYYMMDD如1999年1月12日應輸入為19990112程式判斷兩個日期的先後順序以及兩個日期之間的間隔天數

編寫一個Java應用程式,當用戶在輸入對話方塊中輸入兩個日期後(日期格式為YYYYMMDD, 如1999年1月12日應輸入為19990112), 程式將判斷兩個日期的先後順序, 以及兩個日期之間的間隔天數(例如1999年1月1日和1999年1月2日之間的間隔是1天。  

編寫1個函式. 該函式返回1個陣列的最大值最小值平均值累積和.

// // main.c // Created by LongMa on 15/8/11. //  Copyright (c) 2015年 itcast. All rights reserved. //5. 請編寫1個函式. 該函式返回1個整型陣列中的最大值、最小值、平均值、累積和. #include &

陣列重複次數最多的元素

#include <iostream> #include <vector> #include <algorithm> #include <map> using namespace std; struct number {

使用泛去掉陣列重複數字

實現效果:    知識運用:   List泛型集合:表是可通過索引訪問的物件的強型別列表 提供了對列表進行搜尋,排序和操作的方法   Add方法: 將物件新增到List<T>的結尾處   ToArray方法:用於將List<T>的元素複製到新的陣列中 返回一個數組 實現程式

LintCode101刪除排序陣列重複數字 II

題目 跟進“刪除重複數字”: 如果可以允許出現兩次重複將如何處理? 您在真實的面試中是否遇到過這個題?  Yes 樣例 給出陣列A =[1,1,1,2,2,3],你的函式應該返

劍指offer:陣列重複數字python

題目描述在一個長度為n的數組裡的所有數字都在0到n-1的範圍內。 陣列中某些數字是重複的,但不知道有幾個數字是重複的。也不知道每個數字重複幾次。請找出陣列中任意一個重複的數字。 例如,如果輸入長度為7的陣列{2,3,1,0,2,5,3},那麼對應的輸出是第一個重複的數字2。#

LintCode100刪除排序陣列重複數字

題目 給定一個排序陣列,在原陣列中刪除重複出現的數字,使得每個元素只出現一次,並且返回新的陣列的長度。 不要使用額外的陣列空間,必須在原地沒有額外空間的條件下完成。 您在真實的面試中是否遇到

.做一個登陸的介面輸入正確的使用者名稱和密碼後顯示登陸成功並且顯示改使用者的詳細資訊。sqldatasource

<body style="height: 649px">     <form id="form1" runat="server">     <p>         <asp:SqlDataSource ID="SqlDataSource1" runat="server