实例练习

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. multipath多路径实验01-构建iscsi模拟环境

    multipath多路径实验01-构建iscsi模拟环境 前几天跟同事网上闲聊技术,吐槽之前自己没有配置过多路径的经历,虽然多路径的配置过程很简单,职责划分也应是主机或存储工程师来搞定,DBA只需要直 ...

  2. java用户界面窗口

    java用户界面窗口 窗口框 代码如下: package Day08; import java.awt.Color;import java.awt.FlowLayout;import java.awt ...

  3. apt-get 安装ubuntu-tweak

    Ubuntu Tweak是一款专门为Ubuntu(GNOME桌面)准备的配置.调整工具.主要面向新手级的普通用户.它可以设置很多并不能在系统首选项中设置的隐藏选项,以满足用户自定义的乐趣.即使是新手, ...

  4. poj_1845: Sumdiv

    题目链接 先将A^B分解质因数,可以通过先分解A,再把对应的幂次*B.之后用下面这个式子求解就可以了 #include<vector> #include<iostream> u ...

  5. BestCoder Round #92 (hdu_6015 6016)

    比赛链接 A题主要是map的使用,比赛的时候问了下队友,下次要记住了 #include<bits/stdc++.h> using namespace std; typedef long l ...

  6. SSM整合学习笔记

    对学习Spring+Spring MVC+Mybatis过程中出现的问题解决办法汇总 出现的问题 1.pom.xml报错 右键项目->maven->update project 因此每次更 ...

  7. STF,docker学习资料整理

  8. (转)Spring中Singleton模式的线程安全

    不知道哪里的文章,总结性还是比较好的.但是代码凌乱,有的还没有图.如果找到原文了可以进行替换! spring中的单例 spring中管理的bean实例默认情况下是单例的[sigleton类型],就还有 ...

  9. AI人工智能-Python实现人机对话

    [前言] AI 在人工智能进展的如火如荼的今天,我们如果不尝试去接触新鲜事物,马上就要被世界淘汰啦~ 本文拟使用Python开发语言实现类似于WIndows平台的“小娜”,或者是IOS下的“Siri” ...

  10. 云游戏学习与实践(二)——安装GamingAnywhere

    安装GamingAnywhere 一.GamingAnywhere项目 GamingAnywhere是一个开源的实现云游戏的引擎,并且高效.跨平台.易扩展.可调配. GitHub地址:https:// ...