实例练习

1. 完成简单登录效果,设置用户登录账号密码,清空控制台,进入登录页面,请求用户输入账号、密码和验证码(随机产生),并判断用户输入的信息,给出相应的提示。

  C#代码如下:

  主要知识点:

 (1)//清空控制台
Console.Clear();
 (2)//设置随机数验证码
Random rand = new Random();
int num = rand.Next(1000,10000);
 //账户设置界面
/*
Console.WriteLine("----------账户设置-----------");
Console.WriteLine("请设置账户:");
str1 = Console.ReadLine();
Console.WriteLine("请设置密码:");
str2 = Console.ReadLine();
//清空控制台
Console.Clear();
//用户登录界面
Console.WriteLine("------------登录-------------");
Console.WriteLine("请输入账户:");
str3 = Console.ReadLine();
Console.WriteLine("请输入密码:");
str4 = Console.ReadLine();
//设置随机数验证码
Random rand = new Random();
int num = rand.Next(1000,10000);
//输出验证码
Console.WriteLine("请输入验证码:"+num);
str5 = Console.ReadLine();
int num2=Convert.ToInt32(str5);
//进行判断
if(str1==str3&&str2==str4&&num==num2){
Console.WriteLine("您的信息输入完全正确,可以登陆!");
Console.WriteLine("请按任意键继续……");
}
else
{
Console.WriteLine("对不起,您输入的信息有误,请重新输入,谢谢!");
}

2.  用户输入三条边长,判断能否组成三角形,并判断可以组成什么样的三角形。

代码如下:

 //进行输出:提示用户输入
Console.WriteLine("请输入第一条边:");
//用一个变量接受输入的值
str1 = Console.ReadLine();
Console.WriteLine("请输入第二条边:");
str2 = Console.ReadLine();
Console.WriteLine("请输入第三条边:");
str3 = Console.ReadLine();
//转换为整形
int side1, side2, side3;
side1 = Convert.ToInt32(str1);
side2 = Convert.ToInt32(str2);
side3 = Convert.ToInt32(str3);
//判断
if (side1 + side2 > side3 && side1 + side3 > side2 && side2 + side3 > side1)
{
if (side1 == side2 || side1 == side3 || side2 == side3)
{
if (side1 == side2 && side1 == side3) //已经三边相等,无需另行判断
{
Console.WriteLine("可以组成一个等边三角形");
}
else
{
Console.WriteLine("可以组成一个等边三角形");
}
}
else
{
Console.WriteLine("可以组成一个普通三角形");
}
//Console.WriteLine("可以组成一个三角形");
}
else
{
Console.WriteLine("不可以组成一个三角形");
}
console.Redkey();

3.  提示用户输入两个数字,并计算这两个数字之间所有整数的和。

要求:

(1)用户只能输入数字
(2)计算两个数字之间和
(3)要求第一个数字必须比第二个数字小,否则就重新输入。

答案一:

             //while (true)
//{
// Console.WriteLine("请输入第1个数字:");
// string str1 = Console.ReadLine();
// Console.WriteLine("请输入第2个数字:");
// string str2 = Console.ReadLine();
// int num11 = 0;
// int num22 = 0;
// try ----------------------C#异常捕捉机制
// {
// num11 = Convert.ToInt32(str1);
// num22 = Convert.ToInt32(str2);
// }
// catch (Exception)
// {
// Console.WriteLine("您输入的数据类型有误,请重新输入!");
// Console.ReadKey();
// return;
// }
// if (num11 > num22)
// {
// Console.WriteLine("您输入的数据大小有误,请重新输入!");
// Console.ReadKey();
// Console.Clear();
// continue;
// }
// int sum = 0;
// for (int i = num11; i <= num22; i++)
// {
// sum += i;
// }
// Console.WriteLine("{0}和{1}之间所有整数的和为:{2}", num11, num22, sum);
// Console.WriteLine("是否退出程序?(Y|N)");
// string flag = Console.ReadLine();
// if (flag == "Y")
// {
// break;
// }
// Console.ReadKey();
//}

  答案二:

          bool f = true;
while (f) {
#region 代码
Console.WriteLine("请输入第一个数字");
string num1 = Console.ReadLine();
Console.WriteLine("请输入第二个数字");
string num2 = Console.ReadLine(); int x = ;//接收 字符串转换成数字的值
int y = ; ///用户只能输入数字
try
{
x = Convert.ToInt32(num1);
y = Convert.ToInt32(num2);
}
catch (Exception)
{
Console.WriteLine("您输入的不是数字");
Console.ReadKey();
return;
} //求第一个数字必须比第二个数字小
if (x >= y)
{
Console.WriteLine(" 第一个数字比第二个数字大,请重新输入");
Console.ReadKey();
Console.Clear();//控制台 内容清空
continue;
} //计算两个数字之间和
int sum = ;
for (int i = x; i <= y; i++)
{
sum += i;
} Console.WriteLine("两个数之间的和为:{0}",sum); Console.WriteLine("是否退出程序?(Y|N)");
string flag = Console.ReadLine();
if (flag == "Y") {
break;
}
#endregion

4.  用方法来实现:请计算出一个整型数组的平均值。

 //int[] array1 = new int[6];
//double summ = ArrayAvg(array1);//定义变量接收方法的返回值
//Console.WriteLine("平均值为:{0}", summ);
//Console.ReadKey();//调用方法

方法:

 #region 第4题求平均值(方法)    快捷键:#region+table键
/// <summary>
/// 4.计算数组的平均值
/// </summary>
/// 无参有返回值
/// <param name="array"></param>
static double ArrayAvg(int[] array)
{
double sum = ;
for (int i = ; i < array.Length; i++)
{
array[i] = i;
sum += array[i];
} return sum;
}
#endregion

5.   写一个方法,用来判断用户输入的数字是不是质数 ,再写一个方法 要求用户只能输入数字,如果输入有误,就一直让用户输入数字。

          //(1)
//Console.WriteLine("请输入一个数字:");
//string strr = Console.ReadLine();
//JudgmentPrime(strr);
//(2)判断是不是数字
//bool boo = true;
//while(boo){
// Console.WriteLine("请输入一个数字:");
// string str4 = Console.ReadLine();
// bool result = IsNumber(str4);
// if (result)
// {
// boo=false;
// break;
// }
// else{
// Console.WriteLine("您输的不是一个数字,请重新输入!");
// Console.ReadKey();
// Console.Clear();
// } //}

方法:

  /// 5.1判断质数
/// </summary>
/// <param name="Prime"></param>
static void JudgmentPrime(string Prime)
{
int num1 = Convert.ToInt32(Prime), sum = , k = + num1;
for (int i = ; i <= num1; i++)
{
if (num1 % i == )
{
sum += i;
}
}
if (sum == k)
{
Console.WriteLine("您输入的是一个质数!");
}
else
{
Console.WriteLine("您输入的不是一个质数!");
}
}
#endregion
 /// <summary>
/// 5.2判断输入值是不是数字
/// </summary>
/// <param name="str"></param>
/// <returns></returns>
static bool IsNumber(string str)
{
bool f = true;
int x = ;
try
{
x = Convert.ToInt32(str);
}
catch (Exception)
{
f = false;
}
return f;
}
#endregion

6.写一个方法 计算圆的面积和周长  面积是 pI*R*R  周长是 2*Pi*r

  //Console.WriteLine("请输入圆的半径:");
//string r = Console.ReadLine();
//CircleArea(r);

方法:

  #region 7.计算圆的周长和面积
/// <summary>
/// 7.计算圆的周长和面积
/// </summary>
/// <param name="mianji"></param>
/// <param name="zhouChang"></param>
static void CircleArea(string banJing)
{
double num = Convert.ToDouble(banJing);
Console.WriteLine("圆的面积为:{0};\n周长为:{1}", Math.PI * num * num, * Math.PI * num);
}
#endregion

7.  请通过冒泡排序法对整数数组{ 1, 3, 5, 7, 90, 2, 4, 6, 8, 10 }实现升序排序。

 int[] array4 = { , , , , , , , , ,  };
//外循环:控制整体的排序次数
for (int i = ; i < array4.Length - ; i++)
{
//内循环:控制每次循环的次数
for (int j = i; j < array4.Length - ; j++)
{
if (array4[i] > array4[j + ])
{
int max = array4[i];
array4[i] = array4[j + ];
array4[j + ] = max;
} }
}
//遍历数组
foreach (var item in array4)
{
Console.WriteLine(item);
}
Console.ReadKey();

8.   用方法来实现:请计算出一个整型数组的平均值:{ 1, 3, 5, 7, 93, 33, 4, 4, 6, 8, 10 }。要求:计算结果如果有小数,则显示小数点后两位(四舍五入)。

 //int[] array5 = { 1, 3, 5, 57, 98, 33, 4, 4, 6, 8, 10 };
//Arrayavg(array5);
//Console.ReadKey();

方法:

 /// <summary>
/// 9.求平均值
/// </summary>
/// <param name="arrayy"></param>
static void Arrayavg(int[] arrayy)
{
double sum = ;//转换为double类型,否则不会输出小数
for (int i = ; i < arrayy.Length; i++)
{
sum += arrayy[i];
}
double aa = sum / arrayy.Length;//同上
double kk = Math.Round(aa, );//同上
Console.WriteLine("平均值为:{0}", kk);
}
#endregion

本题知识点补充:

C#中: 

  • 整数除以整数,结果仍为整数;
  • 整数除以小数,结果为小数;
  • 小数除以整数,结果也为小数。

C# 实例练习(第二天)的更多相关文章

  1. Bash 实例,第二部分

    我们先看一下处理命令行自变量的简单技巧,然后再看看 bash 基本编程结构. 接收自变量 在 介绍性文章 中的样本程序中,我们使用环境变量 "$1" 来引用第一个命令行自变量.类似 ...

  2. 整合Kafka+Flink 实例(第二部分 设计思路)

    前     言 拖了蛮久了,一直说要接着上一部分写设计思路以及代码,因为自己技术底子薄弱,加上人又懒,所以一直没能继续,今天补上设计思路及部分代码,后面有时间我会再补充一些应用性的功能,的确有些忙,希 ...

  3. 【php增删改查实例】第二十六节 - 个人详情页制作

    在一般的系统中,当用户点击头像的时候,就会跳转到对应的个人详情页,在这个页面,他可以查看和修改自己的个人信息,或者更换头像. 本案例中,个人详情页使用bootstrap框架. 首先,我们新建一个htm ...

  4. 【php增删改查实例】第二十四节 - 文件上传在项目中的具体应用

    文件上传在项目中,一般有两个用武之地,分别为设置用户的头像和上传附件.本节我们演示如果进行用户头像的上传. 因为一个用户单独并且唯一对应了一个头像,是一对一的关系,所以我们需要去给tm_users表添 ...

  5. 【php增删改查实例】第二十五节 - 在main.php中显示头像

    在用户成功上传头像以后,用户登录系统,应该能够看到自己的头像,本节演示如何在这个地方: 添加用户头像. 1.用DIV做: border-radius:50% background:url(xxx.jp ...

  6. 【php增删改查实例】第二十二节 - 引入百度地图

    20.用户新增地址字段 在实际的开发中,经常会出现对数据表新增或者修改字段的事情,所以,当用户提出加字段的需求时,我们的页面以及后台程序都要进行相应的改动. 本节就以增加一个地址字段为例. 打开nav ...

  7. 【php增删改查实例】第二十三节 - PHP文件上传

    22. PHP文件上传 22.1 资源文件 将这三个东西拷贝项目的根目录. 拷贝完毕后,打开upload.html: 现在,我们在项目的根目录去编写一个upload.php. PHP给我们提供了很多关 ...

  8. 【php增删改查实例】第二十节 - 把用户管理页面集成到main.php中

    把这个代码: <a href="javascript:openTab('用户管理','user/userManage.html ','icon-roleManage')" c ...

  9. 【php增删改查实例】第二十一节 - 用户修改功能

    19.1 添加用户修改的按钮 打开userManage.html,找到新增按钮的地方: 我们不难发现,编辑按钮就差不多应该在新建用户的右边. 那么,假如我现在是新人,对这个项目本身就不太熟悉,那么我得 ...

  10. 【php增删改查实例】 第二节 - MYSQL环境配置

    安装好xampp后,会自带一个mysql,也就是说,正常情况下,你直接这样: 就可以启动mysql了. 如果你了,下面的步骤就别看了哈. if( 启动成功 ){ return; } 如果你的电脑上已经 ...

随机推荐

  1. POJ 2342 Anniversary party / HDU 1520 Anniversary party / URAL 1039 Anniversary party(树型动态规划)

    POJ 2342 Anniversary party / HDU 1520 Anniversary party / URAL 1039 Anniversary party(树型动态规划) Descri ...

  2. Python--my first try!

    我所用的编译器是:Python 3.6.0 我之所以在一开始就说我的编译器是因为不同的编译器,不同的版本在代码的写法上会有一些区别! 比如:在我所用的版本3中print的用法是Print (" ...

  3. MongoDB入门解析【学习记录】

    刚开始学习mongodb,对笔记做了一个整理.是基于nodejs来学习的. 1.mongodb介绍 mongodb 是C++语言编写的,是一个基于分布式文件存储的开源数据库系统. 在高负载的情况下,添 ...

  4. python爬虫主要就是五个模块:爬虫启动入口模块,URL管理器存放已经爬虫的URL和待爬虫URL列表,html下载器,html解析器,html输出器 同时可以掌握到urllib2的使用、bs4(BeautifulSoup)页面解析器、re正则表达式、urlparse、python基础知识回顾(set集合操作)等相关内容。

    本次python爬虫百步百科,里面详细分析了爬虫的步骤,对每一步代码都有详细的注释说明,可通过本案例掌握python爬虫的特点: 1.爬虫调度入口(crawler_main.py) # coding: ...

  5. xdu_1077:循环节长度

    题意很简单,就是给出p,q,求p/q的循环节长度. 由循环小数的循环部分的值等于等比数列求和的值S,列公式得到最简分数分母的值.最终得10^x%q==1(其中q为经过modify之后的值).搞清这些之 ...

  6. 平方根的C语言实现(一)

    曾经做一个硬件成本极度控制的项目,因为硬件成本极低,并且还需要实现较高的精度测量,过程中也自己用C语言实现了正弦.余弦.反正切.平方根等函数. 以下,无论是在我的实际项目中还是本地的计算机系统,int ...

  7. java加减的二进制实现

    Java中整数基本类型有byte,short,int,long,大小分别为1.2.4.8个字节,一个字节大小为8位,也就是8个二进制码(0/1)组成. 计算机中二进制码分为原码,反码,补码.在计算机中 ...

  8. HTTP权威指南-连接管理

    现在已经开始学习到第四章咯,坚持就是胜利哟~!ok,废话少说,继续写笔记. 本章中我们要介绍到HTTP的连接.好,现在有几个问题,我列出来了,带着这几个问题,我们进入本章的学习. 1.HTTP是如何使 ...

  9. spring boot 配置文件application

    场景:在项目部署的过程中,对于spring boot的配置文件一直不很了解,直到项目出现一个莫名其妙的问题——工程classes中的配置文件被覆盖,程序启动总是报错! 1  配置文件的优先级 appl ...

  10. (转)CentOS 7.0关闭默认防火墙启用iptables防火墙

    场景:在本地虚拟机上使用ftp软件需要进行相应的端口设置,不可避免要访问Cnetos的防火墙,默认firewall操作不方便,所以需要进行相应的替换. 1 配置防火墙,开启80端口.3306端口 1. ...