• .net机试题总结


    1、下面是一个由*号组成的4行倒三角形图案。要求:1、输入倒三角形的行数,行数的取值3-21之间,对于非法的行数,要求抛出提示非法行数!2、在屏幕上打印这个指定了行数的倒三角形。

    *******

    *****

    ***

    *

      static void Main(string[] args)

            {

                while (true

                { 

                    Console.Write("请输入行数:范围3-21,输入0退出程序。");

                    int line = 0; 

                    if (!Int32.TryParse(Console.ReadLine(), out line)) 

                    { 

                        Console.WriteLine("请输入正确的行数!");

                        continue

                    } 

                    if (line == 0) 

                    {

                        Console.WriteLine("退出!");

                        break

                    } 

                    else if (!(line > 2 && line < 22)) 

                    {

                        Console.WriteLine("非法行数!请输入正确的行数!");

                        continue

                    } 

                    for (int i = 0; i < line; i++) 

                    { 

                        int j = 0; 

                        for (; j < i; j++) 

                        { 

                            Console.Write(" ");

                        } 

                        for (int k = j; k < line; k++) 

                        { 

                            Console.Write("* "); 

                        } 

                        Console.WriteLine();

                    } 

                }

            }

     

    2、现有1~100共一百个自然数,已随机放入一个有98个元素的数组a[98]。要求写出一个尽量简单的方案,找出没有被放入数组的那2个数,并在屏幕上打印这2个数。注意:程序不用实现自然数随机放入数组的过程。

      static void Main(string[] args)

            {

                while (true

                {

                    int[] arry = new int[98];

                    Random rd = new Random();

                    List<int> temp = new List<int>();

                    //随机产生98个1-100自然数

                    while (temp.Count < 98)

                    {

                        int result = rd.Next(1, 101);//随机产生1~100随机数;

                        if (temp.Contains(result))

                        {

                            continue;

                        }

                        temp.Add(result);

                    }

                    //将98个数填充到数组中;

                    for (int i = 0; i < 98; i++)

                    {

                        arry[i] = temp[i];

                    }

     

                    ///*强烈推荐这种做法开始*/

                    ////标识为1

                    int[] arrytemp = new int[101];

                    for (int i = 0; i < 98; i++)

                    {

                        arrytemp[arry[i]] = 1;//给98个自然数标识;

     

                    }

                    for (int i = 1; i <= 100; i++)

                    {

                        if (arrytemp[i] == 1)

                        {

                            continue;

                        }

                        Console.WriteLine(i);

                    }

                    /*强烈推荐这种做法结束*/

     

     

                    /*以下一般的做法,我不推荐。。。。*/

                    /*以下一般的做法,我不推荐。。。。*/

                    /*以下一般的做法,我不推荐。。。。*/

                    /*以下一般的做法,我不推荐。。。。*/

                    /*以下一般的做法,我不推荐。。。。*/

                    //定义一个泛型数组

                    List<int> aa = new List<int>();

     

                    //赋值1-100自然数

                    for (int i = 1; i <= 100; i++)

                    {

                        aa.Add(i);

                    }

     

                    //如果随机产生的98个自然数存在上面定义泛型数组中,将它移除;

                    for (int i = 0; i < 98; i++)

                    {

                        if (aa.Contains(arry[i]))

                        {

                            aa.Remove(arry[i]);

                        }

                    }

                    //打印这两个数

                    foreach (var item in aa)

                    {

                        Console.WriteLine(item);

                    }

                    Console.ReadKey();

     

         

     

                    

                }

            }

     

    3、一个文本文件含有如下内容:

    4580616022644994|3000|赵涛

    4580616022645017|6000|张屹

    4580616022645090|3200|郑欣夏

    上述文件每行为一个转账记录,第一列表示帐号,第二列表示金额,第三列表示开户人姓名。

    创建一张数据库表(MS SQLServer数据库,表名和字段名自拟),请将上述文件逐条插入此表中。

    using System.Collections.Generic;

    using System.Linq;

    using System.Text;

    using System.Data.SqlClient;

    using System.Diagnostics;


    namespace 从文本中提取数据到数据库中

    {

        class Program

        {


            static void Main(string[] args)

            {

                //项目中的Programe.cs文件必须加上以下神奇的代码,对数据库的操作才能生效

                string dataDir = AppDomain.CurrentDomain.BaseDirectory;

                if (dataDir.EndsWith(@"inDebug")

                    || dataDir.EndsWith(@"inRelease"))

                {

                    dataDir = System.IO.Directory.GetParent(dataDir).Parent.Parent.FullName;

                    AppDomain.CurrentDomain.SetData("DataDirectory", dataDir);

                }


                //启用秒表来计时

                Stopwatch timer = new Stopwatch();

                timer.Start();

                string[] lines = System.IO.File.ReadAllLines(@"D:转账记录.txt", Encoding.Default);

                for (int i = 0; i < lines.Length; i++)

                {

                    string[] str=lines[i].Split('|');


                    using (SqlConnection conn = new SqlConnection(@"Data Source=.SQLEXPRESS;

    AttachDBFilename=|DataDirectory|huanZhang.mdf;Integrated Security=True;User Instance=True"))

                    {

                        conn.Open();

                        using (SqlCommand cmd = conn.CreateCommand())

                        {

                            cmd.CommandText = "Insert into T_ZhuanZhang (CardNum,Money,Name) values (@CardNum,@Money,@Name)";

                            cmd.Parameters.Add(new SqlParameter("CardNum", str[0]));

                            cmd.Parameters.Add(new SqlParameter("Money", str[1]));

                            cmd.Parameters.Add(new SqlParameter("Name", str[2]));

                            cmd.ExecuteNonQuery();

                        }

                    }

                }


                Console.WriteLine("数据导入成功!");

                timer.Stop();

                Console.WriteLine(timer.Elapsed);

                Console.ReadKey();

            }

        }

    }

     

  • 相关阅读:
    SSM(六)JDK动态代理和Cglib动态代理
    SSM(三)Mybatis动态SQL
    MyBatis无限级分类实现的两种方法--自关联与map集合
    idea上MyBatis第一个例子
    idea 给maven项目添加依赖(二)
    idea 创建maven项目(一)
    Java学习笔记——三层架构
    MySQL实现自动使用uuid作为主键以及解决不能调用触发器的一点思路
    Java学习笔记——MySQL创建表结构
    jQuery入门——注册事件
  • 原文地址:https://www.cnblogs.com/dyllove98/p/3170318.html
Copyright © 2020-2023  润新知