c#之课后习题
1.折叠代码
#region
折叠内容
#endregion
2.保留三位小数
using System; namespace _005_double保留3位小数
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("输入三位数,依次按Enter结束:");
double a = double.Parse(Console.ReadLine());
double b = double.Parse(Console.ReadLine());
double c = double.Parse(Console.ReadLine());
Console.WriteLine("{0:f3}",a);
Console.WriteLine("{0,10:f3}",b);
Console.WriteLine("{0,10:f3}",c);
} }
}
3.求水仙花数
using System; namespace _001_水仙花数
{
class Program
{
static void Main(string[] args)
{
int[] numbers = new int[];
int sum = ;
for (int num = ; num < ; num++)
{
numbers[] = num / ;
numbers[] = num %/;
numbers[] = num % %;
//for (int i = 0; i < 3; i++)
//{
// sum += (int)Math.Pow(numbers[i], 3);
//}
sum = numbers[] * numbers[] * numbers[] + numbers[] * numbers[] * numbers[] + numbers[] * numbers[] * numbers[];
if (num == sum)
{
Console.WriteLine("水仙花数为:" + num);
} }
}
}
}
4.
四舍五入并保留两位小数
double d =3.1415926;
d= Math.Round(d,2);
Console.WriteLine("{0,10:f2}",d)//另一种方法,冒号前位10的倍数,显示小数点前有多少字节,f后要保留的小数 位数
using System; namespace _008_四舍五入
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("输入以为正数:");
double a = Double.Parse(Console.ReadLine());
int result = (int)(a + 0.5); //double b = Math.Ceiling(a);//向上进位取整
////double b = Math.Floor(a);//向下进位取整
Console.WriteLine(result);
}
}
}
5.
编一个程序,用while循环语句来计算1+1/2+2/3+3/4+...+99/100之和。
using System; namespace _013_while求和
{
class Program
{
static void Main(string[] args)
{
double i = ;
double sum = ;
while (i<=)
{
sum =sum+(i-)/i ;
i++;
}
Console.WriteLine("和为{0}",sum);
}
}
}
6.
编写一个程序,用for语句,求出1+(1+2)+(1+2+3)+...+(1+2+3+...+10)之和。
using System; namespace _014_for求和
{
class Program
{
static void Main(string[] args)
{
int sum = ;
int sum1 = ;
for (int i = ; i <=; i++)
{
sum = sum + i;
sum1 = sum1 + sum;
}
Console.WriteLine(sum1);
}
}
}
7.编一个程序,要求使用while语句,输入用户名和密码,实现用户登录程序的功能,至多允许输入三次,超过三次不允许登录。
using System; namespace _016_加分题2
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("请输入用户名和密码:");
int count = ;
while (count <)
{
string name = Console.ReadLine();
string password = Console.ReadLine();
if (name == "huang" && password == "")
{
Console.WriteLine("登录成功");
break;
}
else
Console.WriteLine("错误,请重新输入!");
count++;
} }
}
}
8.求出1~1000之间的所有能被7整除的数,并计算和输出每5个的和。
using System; namespace _005_能被7整除的数
{
class Program
{
static void Main(string[] args)
{
int count = ;
int sum = ;
for(int i = ; i <= ; i++)
{
if ( i % == )
{
sum += i;
count++;
Console.WriteLine(i);
}
if(count == )
{
Console.WriteLine(sum);
sum = ;
count = ;
}
} }
}
}
8.,编写一个控制台程序,分别输出1~100之间的平方、平方根。
using System; namespace _006_1_100之间的平方平方根
{
class Program
{
static void Main(string[] args)
{ for (int i= ; i <= ; i++)
{
double a = Math.Pow(i, 0.5);//平方
double b = Math.Pow(i, );
//double gen = Math.Sqrt(i);//这个方法可以取得一个数字的平方根
Console.WriteLine("{2}的平方为{0},平方根为{1}",b,a,i); } }
}
}
9.判断月份天数
using System; namespace _009_输出该月天数
{
class Program
{
static void Main(string[] args)
{
//闰年:2月29 1,3,5,7,---31天 4,6,9,11---30 8,10,12----31
//平年:28
Console.WriteLine("请输入年份,月份,分别按Enter结束");
int year = int.Parse(Console.ReadLine());
int month = int.Parse(Console.ReadLine()); if (year % == || year % == && year % != )//闰年情况下
{
if(month % != &&month<)
{
Console.WriteLine("31天");
}
else if(month == )
{
Console.WriteLine("29天");
}
else if(month % == && month < )
{
Console.WriteLine("30天");
}
else if (month % == && month >= )
{
Console.WriteLine("31天");
}
else if (month% != && month >= )
{
Console.WriteLine("30天");
}
}
else
{
if (month % != && month < )
{
Console.WriteLine("31天");
}
else if (month == )
{
Console.WriteLine("28天");
}
else if (month % == && month < )
{
Console.WriteLine("30天");
}
else if (month % == && month >= )
{
Console.WriteLine("31天");
}
else if (month % != && month >= )
{
Console.WriteLine("30天");
}
}
} }
}
10.1-1000之间的素数
using System; namespace _020_1_1000之间的素数
{
class Program
{
static void Main(string[] args)
{
for (int i = ; i < ; i++)
{
bool sushu = true;//布尔类型
for (int j = ; j <=i-; j++)
{
if (i % j == )
{
sushu = false;
break;
}
}
if (sushu)
{
Console.WriteLine(i);
}
} }
}
}
11.九九乘法表
using System; namespace _021__九九乘法表
{
class Program
{
static void Main(string[] args)
{
//第一种格式
//for (int i = 1; i < 10; i++)
//{
// for (int j = 1; j < 10; j++)
// {
// Console.Write(i+"*"+j+"="+(i*j)+"\t");//不换行
// }
// Console.WriteLine();//什么都没有表示换行
//} //第二种格式
for (int i = ; i < ; i++)
{
for (int j = ; j <= i; j++)
{
Console.Write(i + "*" + j + "=" + (i * j) + "\t");//不换行
}
Console.WriteLine();//什么都没有表示换行
}
}
}
}
12.
生成随机数
Random random = new Random();//创建一个可以生成随机数的对象
int num = random.Next(1,7);//给一个范围,取不到最大值
Console.WriteLine(num);
using System; namespace _022_掷骰子_打印各种点数的出现次数
{
class Program
{
static void Main(string[] args)
{
int num1 = , num2 = , num3 = , num4 = , num5 = , num6 = ;
Random random = new Random();//创建随机数
for (int i = ; i < ; i++)
{ int num = random.Next(, );//范围1到6
switch (num)
{
case :
num1++;
break;
case :
num2++;
break;
case :
num3++;
break;
case :
num4++;
break;
case :
num5++;
break;
case :
num6++;
break;
}
}
Console.WriteLine(num1);
Console.WriteLine(num2);
Console.WriteLine(num3);
Console.WriteLine(num4);
Console.WriteLine(num5);
Console.WriteLine(num6);
}
}
}
13.金字塔
using System; namespace _004_金字塔
{
class Program
{
static void Main(string[] args)
{
for (int i = ; i < ; i++)
{
for (int j = i; j < ; j++)
{
Console.Write(" ");
}
for (int z = ; z <= *i; z = z + )
{
Console.Write("*");
}
Console.WriteLine();
} } }
}
14.四舍五入
using System; namespace _006_四舍五入
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("输入一位正数:");
double a = Double.Parse(Console.ReadLine());
//int result = (int)(a + 0.5);这方法也可以
a = Math.Round(a, );
//double b = Math.Ceiling(a);//向上进位取整
////double b = Math.Floor(a);//向下进位取整
Console.WriteLine(a); }
}
}
15.枚举之星期
using System; namespace _010_QQ状态
{
public enum QQ
{
OnLine=,
OffLine=,
Leave=,
Qme=,
Busy=
}
class Program
{
static void Main(string[] args)
{
Console.WriteLine("输入数字"); int index = int.Parse(Console.ReadLine());
QQ num = (QQ)index;
switch (num)
{
case QQ.OnLine:
case QQ.OffLine:
case QQ.Leave:
case QQ.Qme:
case QQ.Busy: Console.WriteLine(num);
break;
default:
Console.WriteLine("超出范围");
break; }
}
}
}
16。键盘输入红包金额,包数
.
using System; namespace _001_随机红包System.Security.Cryptography.RNGCryptoServiceProvider
{ class Program
{
static void Main(string[] args)
{ //微信红包
Console.WriteLine("请输入红包金额和数量:");
int money = int.Parse(Console.ReadLine());
int num = int.Parse(Console.ReadLine());
int dollar = money * ;
int temp = ;
Random a = new Random();
for (int i = ; i < num - ; i++)
{
int b = a.Next(, dollar - temp);
if (b > dollar / )
{
i--;
continue;
}
temp += b; if (temp == dollar)
{
temp = ;
i = ;
continue;
}
Console.WriteLine(b / 100.0);
}
Console.WriteLine((dollar - temp) / 100.0);
}
}
} .
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text; namespace ConsoleApp1
{
class Program
{
static void Main(string[] args)
{
while (true)
{
Console.WriteLine("请输入金额(例如:100.00)");
double money = Math.Round(Convert.ToDouble(Console.ReadLine()), );
Console.WriteLine("请输入红包个数");
int count = Convert.ToInt32(Console.ReadLine());
List<double> listMoney = new List<double>();
for (int i = ; i < count; i++)
{
Random random = new Random();
if (i == )
{
listMoney.Add(money);
continue;
}
double maxMoney = listMoney.Max();
int maxIndex = listMoney.IndexOf(maxMoney);
double rd = random.NextDouble();
double m = Math.Round(maxMoney * rd, );
listMoney[maxIndex] = maxMoney - m;
listMoney.Add(m);
}
Console.WriteLine("分别获得红包");
foreach (var item in listMoney)
{
Console.WriteLine("{0}\t元", item.ToString("N"));
}
//测试,计算金额是否正确
Console.WriteLine("合计:{0}元\n\r", listMoney.Sum().ToString("N"));
Console.WriteLine("按任意键继续\n\r");
Console.ReadKey();
} }
}
}
c#之课后习题的更多相关文章
- 《python核心编》程课后习题——第三章
核心编程课后习题——第三章 3-1 由于Python是动态的,解释性的语言,对象的类型和内存都是运行时确定的,所以无需再使用之前对变量名和变量类型进行申明 3-2原因同上,Python的类型检查是在运 ...
- web实验指导书和课后习题参考答案
实验指导书 :http://course.baidu.com/view/daf55bd026fff705cc170add.html 课后习题参考答案:http://wenku.baidu.com/li ...
- 《Python核心编程》 第六章 序列 - 课后习题
课后习题 6–1.字符串.string 模块中是否有一种字符串方法或者函数可以帮我鉴定一下一个字符串是否是另一个大字符串的一部分? 答:成员关系操作符(in.not in) import string ...
- 《Python核心编程》 第五章 数字 - 课后习题
课后习题 5-1 整形. 讲讲 Python 普通整型和长整型的区别. 答:普通整型是绝大多数现代系统都能识别的. Python的长整型类型能表达的数值仅仅与你机器支持的(虚拟)内存大小有关. 5- ...
- 機器學習基石(Machine Learning Foundations) 机器学习基石 课后习题链接汇总
大家好,我是Mac Jiang,非常高兴您能在百忙之中阅读我的博客!这个专题我主要讲的是Coursera-台湾大学-機器學習基石(Machine Learning Foundations)的课后习题解 ...
- OpenCV学习笔记之课后习题练习3-5
OpenCV学习笔记之课后习题练习2-5 练习使用感兴趣区域(ROI).创建一个210*210的单通道图像并将其归0.在图像中使用ROI和cvSet()建立一个增长如金字塔状的数组. 参考博文:www ...
- OpenCV学习笔记之课后习题练习2-5
5.对练习4中的代码进行修改,参考例2-3,给程序加入滚动条,使得用户可以动态调节缩放比例,缩放比例的取值为2-8之间.可以跳过写入磁盘操作,但是必须将变换结果显示在窗口中. 参考博文:blog.cs ...
- OpenCV学习笔记之课后习题练习2-3
3.使用例2-10中的视频捕捉和存储方法,结合例2-5中的doPyrDown()创建一个程序,使其从摄像机读入视频数据并将缩放变换后的彩色图像存入磁盘. 例2-10中所用的方法虽然能正常运行,但却不能 ...
- OpenCV学习笔记之课后习题练习3-4
练习:创建一个大小为100*100的三通道RGB图像.将它的元素全部置0.使用指针算法以(20,5)与(40,20)为顶点绘制一个绿色平面. 参考博文:blog.csdn.net/qq_2077736 ...
- OpenCV学习笔记之课后习题练习3-3
3.3 创建一个100*100的拥有三个通道的二维字节类型矩阵,将其元素全部置0.通过cvPtr2D函数将指针指向中间通道(绿色),以(20,5)和(40,20)为顶点间画一个绿色的长方形. cvPt ...
随机推荐
- AngularJs $watch监听模型变化
$watch是一个scope函数,用于监听模型变化,当你的模型部分发生变化时它会通知你. $watch(watchExpression, listener, objectEquality); 举个栗子 ...
- tomcat远程部署war包,显示连接被重置
在tomcat 目录: /opt/apache-tomcat-9.0.13/webapps/manager/WEB-INF/web.xml 下修改: <multipart-config> ...
- 用CMD命令进行关机/重启
用CMD命令进行关机/重启 - WingsBlog https://www.wusiwei.com/post-185.html [实用]CMD关机.重启命令 - Kevin.Chen - 专注前行 - ...
- [性能优化] perf 高级用法:完整记录程序性能指标,并按照时间段对程序进行有针对性的性能分析
如题: 假设你已经熟悉了基本用法,知道perf是干嘛的,以及会用 perf top [性能优化] perf 背景:目标程序在运行的某时间段内会出现性能下降,需要了解这个时间内,程序发生了什么. 方法: ...
- [development][suricata] linux下一代权限控制 capabilities
读suricata源码过程中, 读到了 libcap-ng 应该就是anthroid手机,每次安装app时候, 询问的那个capablities.....吧.... 中文文档: http://rk7 ...
- [tcpreplay] tcpreplay高级用法--使用tcpreplay-edit进行循环动态发包
tcpreplay-edit提供了可对包进行修改的高级用法: --unique-ip Modify IP addresses each loop iteration to generate uniqu ...
- [administrative][archlinux][netctl][wpa_supplicant] 查看WIFI链接信息
当使用 netctl + wpa_supplicant的时候,环境里同时存在好多个WIFI,而我同时有配置了他们的密钥信息在配置文件中. 那么我该如何查看,我当前链接到了哪个WIFI上? /home/ ...
- 中位数&贪心
谁能想到基本算法就这么难呢?我想去冲省选,但是迟迟在这些地方 花时间 算是提升自己的思维算了. 这道题呢 答案其实很简单每个数在a的位置和在b的位置之差的累加/2即是答案为什么呢?考虑当前数字 要向后 ...
- 安装IIS
1.打开控制面板,找到“程序与功能”,点进去 2.选择打开或关闭Windows功能,选择internet信息服务,点击确定 3.安装完成后,再回到控制面板里面,找到“管理工具”,点进入 4.双击“I ...
- set的经典应用
set的经典应用 刚开始用map标记一个测试点超时了 ┭┮﹏┭┮: 用set的find 减少了循环提高了效率 #include <bits/stdc++.h>using namespace ...