.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(@"\bin\Debug\")
|| dataDir.EndsWith(@"\bin\Release\"))
{
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|\ZhuanZhang.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();
}
}
}
---------------------
作者:wangjingjing1014
來源:CSDN
原文:https://blog.csdn.net/wangjingjing1014/article/details/9234123
版權宣告:本文為博主原創文章,轉載請附上博文連結!