一、下面是一个由*号组成的4行倒三角形图案。要求:一、输入倒三角形的行数,行数的取值3-21之间,对于非法的行数,要求抛出提示“非法行数!”;二、在屏幕上打印这个指定了行数的倒三角形。数据库
*******数组
*****dom
***spa
*.net
static void Main(string[] args)pwa
{blog
while (true) cmd
{ string
Console.Write("请输入行数:范围3-21,输入0退出程序。");it
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();
}
}
}
二、现有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();
}
}
三、一个文本文件含有以下内容:
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();
}
}