最近在某培训机构教C#基础,算是赶鸭子上架了,
回头看了些简单的C#习题,自己做了下,可能有些low,不过贴出来大家看看吧
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Test
{
class Program
{
static void Main(string[] args)
{
//Test_1();
// Test_2();
// Test_3();
// Test_4();
// Test_5();
// Test_6();
// Test_7();
// Test_8();
// Test_9();
// Test_10();
Test_11();
// Test_12();
// Test_13();
// Test_14();
//Test_15();
// Test_16();
// Test_17();
//Test_18();
// Test_19();
//Test_20();
// Test_21();
// Test_22();
// Test_23();
//Test_24();
// Test_25();
// Test_26();
//Test_27();
//Test_28();
// Test_29();
// Test_30();
//Test_31();
// Test_32();
// Test_33();
// Test_34();
// Test_35();
//Test_36();
// Test_37();
Console.ReadKey();
}
/// <summary>
/// 1. 定义3个变量,分别存储一个人的姓名(张三),
/// 年龄(28),和工资(7600.33).
/// 然后在屏幕上显示,我叫XX,今天X岁了,我的工资是XX元.
/// </summary>
static void Test_1(){
String name = "张三";
int age = 28;
Double wages=7600.33;
Console.WriteLine("我叫{0},今天{1}岁了,我的工资是{2}元",name,age,wages);
}
/// <summary>
/// 定义一个变量存储一个人的年龄(18),
/// 然后发现这个人的年龄不是18岁,
/// 要把这个人的年龄修改成20岁(本题体会变量可以被重复多次赋值),
/// 最后把这个人的年龄输出到屏幕上?
/// </summary>
static void Test_2() {
int age = 18;
age = 20;
Console.WriteLine(age);
}
/// <summary>
/// 定义四个变量,分别存储一个人的姓名、性别、年龄、电话。
/// 然后打印在屏幕上 (我叫X,我今年 X岁了,我是X生,我的电话是XX)
/// </summary>
static void Test_3() {
String name = "简雨";
String gender = "男";
int age = 5;
long tel = 13042475399;
Console.WriteLine("我叫{0},我今年{2}岁了,我是{1}生,我的电话是{3}",name,gender,age,tel);
}
/// <summary>
/// .在屏幕上输出:我的手机是philips
/// 型号:998 价格:1500元 重量:0.3kg
/// 请定义变量存存储上面的值,并显示在屏幕上
/// </summary>
static void Test_4() {
String name = "philips";
int model = 998;
int price = 1500;
float weight = 0.3f;
Console.WriteLine("我的手机是{0},型号:{1},价格:{2}元,重量:{3}kg",name,model,price,weight);
}
/// <summary>
/// 定义两个变量如:a b分别赋值为10和5,
/// 写程序交换两个变量的值
/// </summary>
static void Test_5() {
int a = 10;
int b = 5;
int c;
c = a;
a = b;
b = c;
Console.WriteLine("交换之后的a={0},b={1}", a, b);
}
/// <summary>
/// 问用户喜欢吃什么水果,
/// 假如用户输入”苹果”,则显示”哈哈,这么巧呀,
/// 我也喜欢吃苹果”
/// </summary>
static void Test_6() {
Console.WriteLine("你喜欢吃什么水果");
String fruit= Console.ReadLine();
if (fruit == "苹果") {
Console.WriteLine("哈哈,这么巧呀,我也喜欢吃苹果");
}
}
/// <summary>
/// 请用户输入姓名,然后在屏幕上显示“你好,XXX".
/// XXX为用户刚刚输入的姓名.
/// </summary>
static void Test_7()
{
Console.WriteLine("请用户输入姓名");
String name = Console.ReadLine();
Console.WriteLine("你好,{0}",name);
}
/// <summary>
/// 定义两个数分别为10和20,打印出两个数的和
/// </summary>
static void Test_8() {
int a = 10;
int b = 20;
Console.WriteLine("a+b="+(a+b));
}
/// <summary>
/// 计算半径为5的圆的面积并打印出来.
/// </summary>
static void Test_9() {
Double PI = 3.14;
int R = 5;
Console.WriteLine("圆的面积=" + PI * R * R);
}
/// <summary>
/// 某商店T恤的价格为35元/件,裤子的价格为120元/条.
/// 小明在该店买了3件T恤和2条裤子,
/// 请计算并显示小明应该付多少钱?
/// </summary>
static void Test_10() {
int Tshirts = 35;
int trousers = 120;
int totol = Tshirts * 3 + trousers * 2;
Console.WriteLine("小明应该付" + totol+"元");
}
/// <summary>
/// 编程实现计算几天(如46天)是几周零几 天
/// </summary>
static void Test_11()
{
int week=46/7;
int otherDay=46%7;
Console.WriteLine("46天是{0}周,零{1}天",week,otherDay);
}
/// <summary>
/// 编程实现107653秒是几天几小时几分钟几秒?
/// </summary>
static void Test_12() {
int oneDay = 60 * 60 * 24;//1天,86400
int day = 107653 / oneDay;
// Console.WriteLine("{0}天",day);
int otherhours = (107653 % (oneDay * day)) / 3600;//5小时,18000
// Console.WriteLine("{0}小时", otherhours);
int otherminutes = ((107653 % (oneDay * day))%3600)/60;//54分,3240
// Console.WriteLine("{0}分钟", otherminutes);
int othersec = ((107653 % (oneDay * day)) % 3600)%60;//13秒
// Console.WriteLine("{0}秒", othersec);
Console.WriteLine("{0}天{1}小时{2}分{3}秒", day, otherhours, otherminutes, othersec);
}
/// <summary>
/// 修改上面的题目,让用户输入.
/// </summary>
static void Test_13() {
Console.WriteLine("请输入一个要计算时间数字");
int num = Convert.ToInt32(Console.ReadLine());
int oneDay = 60 * 60 * 24;//1天,86400
int day = num / oneDay;
// Console.WriteLine("{0}天",day);
int otherhours = (num % (oneDay * day)) / 3600;//5小时,18000
// Console.WriteLine("{0}小时", otherhours);
int otherminutes = ((num % (oneDay * day)) % 3600) / 60;//54分,3240
// Console.WriteLine("{0}分钟", otherminutes);
int othersec = ((num % (oneDay * day)) % 3600) % 60;//13秒
// Console.WriteLine("{0}秒", othersec);
Console.WriteLine("{0}天{1}小时{2}分{3}秒", day, otherhours, otherminutes, othersec);
}
/// <summary>
/// 让用户输入张三的语文和数学成绩,输出以下判断是否正确,正确输出True,错误输出False
/// 1)张三的语文和数学成绩都大于90分
/// 2)语文和数学有一门是大于90分的
/// </summary>
static void Test_14() {
Console.WriteLine("请输入张三的语文成绩");
int chinese=Convert.ToInt32(Console.ReadLine());
Console.WriteLine("请输入张三的数学成绩");
int maths = Convert.ToInt32(Console.ReadLine());
if (chinese > 90 && maths > 90)
{
Console.WriteLine(true);
}
else {
Console.WriteLine(false);
}
Console.WriteLine("请再次输入张三的语文成绩");
chinese = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("请再次输入张三的数学成绩");
maths = Convert.ToInt32(Console.ReadLine());
if (chinese > 90 || maths > 90)
{
Console.WriteLine(true);
}
else
{
Console.WriteLine(false);
}
}
/// <summary>
/// 写下判断闰年的表达式,设待判断的年份变量为year.
/// 闰年的判定(符合下面两个条件之一):年份能够被400整除.
/// (2000)年份能够被4整除但不能被100整除.
/// (2008)让用户输入一个年份,如果是闰年,则输出true,如果不是,则输出false.
/// 2100/1600/1800/2009年是闰年吗?
/// </summary>
static void Test_15() {
Console.WriteLine("请输入年份");
int nian = Convert.ToInt32(Console.ReadLine());
// int nian = 2012;
bool runnian = (nian % 400 == 0) || (nian % 4 == 0 && nian % 100 != 0);
Console.WriteLine(runnian);
}
/// <summary>
/// 让用户输入年龄,如果输入的年龄大于18(含)岁,则给用户显示你已成年
/// </summary>
static void Test_16() {
Console.WriteLine("请输入年龄");
int age = Convert.ToInt32(Console.ReadLine());
if (age > 18) {
Console.WriteLine("你已成年");
}
}
/// <summary>
/// 让用户输入用户名和密码,如果用户名为admin,密码为mypass,则提示登录成功
/// </summary>
static void Test_17() {
Console.WriteLine("请输入用户名");
String name = Console.ReadLine();
Console.WriteLine("请输入密码");
String passw = Console.ReadLine();
if (name == "admin" && passw == "mypass") {
Console.WriteLine("登录成功");
}
}
/// <summary>
/// 盖茨买了一筐鸡蛋,如果坏蛋少于5个,他就吃掉,否则他就去退货
/// </summary>
static void Test_18() {
Console.WriteLine("请输入鸡蛋数目");
int egg = Convert.ToInt32(Console.ReadLine());
if (egg <= 5)
{
Console.WriteLine("吃掉");
}
else {
Console.WriteLine("退货");
}
}
/// <summary>
/// 要求用户输入两个数a、b,如果a能被b整除或者a加b大于100,则输出a的值,否则输出b的值
/// </summary>
static void Test_19()
{
Console.WriteLine("请输入a");
int a = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("请输入b");
int b = Convert.ToInt32(Console.ReadLine());
if (a % b == 0 || (a + b) > 100)
{
Console.WriteLine(a);
}
else {
Console.WriteLine(b);
}
}
/// <summary>
/// 对学员的结业考试成绩评测(考虑用if好还是用if-else好) 成绩>=90 :A
/// 90>成绩>=80 :B
/// 80>成绩>=70 :C
/// 70>成绩>=60 :D
/// 成绩<60 :E
/// </summary>
static void Test_20() {
Console.WriteLine("请输入分数");
int score = Convert.ToInt32(Console.ReadLine());
if (score >= 90) {
Console.WriteLine("A");
}
else if (score >= 80 && score < 90) {
Console.WriteLine("B");
}
else if (score >= 70 && score < 80)
{
Console.WriteLine("C");
}
else if (score >= 60 && score < 70)
{
Console.WriteLine("D");
}
else {
Console.WriteLine("E");
}
}
/// <summary>
/// 提示用户输入密码,如果密码是“888888”则提示正确,
/// 否则要求再输入一次,如果密码是“888888”则提示正确,
/// 否则提示错误,程序结束
/// </summary>
static void Test_21() {
Console.WriteLine("请输入用户密码");
int mima = Convert.ToInt32(Console.ReadLine());
if (mima == 888888)
{
Console.WriteLine("正确");
}
else {
Console.WriteLine("请再输入一次用户密码");
mima = Convert.ToInt32(Console.ReadLine());
if (mima == 888888)
{
Console.WriteLine("密码正确");
}
else {
Console.WriteLine("密码错误,程序结束");
}
}
}
/// <summary>
/// 提示用户输入年龄,如果大于等于18,
/// 则告知用户可以查看,如果小于10岁,则告知不允许查看,
/// 如果大于等于10岁并且小于18,则提示用户是否继续查看(yes、no),
/// 如果输入的是yes则提示用户请查看,否则提示"退出,你放弃查看"。
/// </summary>
static void Test_22() {
Console.WriteLine("请输入年龄");
int age = Convert.ToInt32(Console.ReadLine());
if (age >=18) {
Console.WriteLine("允许查看");
}
else if (age < 10) {
Console.WriteLine("不允许查看");
}
else if (age < 18 && age > 10) {
Console.WriteLine("是否继续查看,继续输入yes,否则输入no");
// string anykey=Console.ReadLine();
string anykey = Console.ReadLine().ToUpper();
if (anykey.Equals("YES"))
{
Console.WriteLine("请查看");
}
else {
Console.WriteLine("退出,你放弃查看");
}
}
}
/// <summary>
/// 请用户输年份,输入月份,输出该月的天数.
/// </summary>
static void Test_23() {
Console.WriteLine("请输入月份");
int month = Convert.ToInt32(Console.ReadLine());
switch(month){
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
Console.WriteLine("本月31天");
break;
case 4:
case 6:
case 9:
case 11:
Console.WriteLine("本月30天");
break;
case 2:
if (ruinian() == true)
{
Console.WriteLine("本月29天");
}
else {
Console.WriteLine("本月28天");
}
break;
}
}
static bool ruinian()
{
Console.WriteLine("请输入年份");
int nian = Convert.ToInt32(Console.ReadLine());
bool runnian = (nian % 400 == 0) || (nian % 4 == 0 && nian % 100 != 0);
return runnian;
}
/// <summary>
/// 对学员的结业考试成绩评测(改成用Switch来做)
/// 成绩>=90 :A
/// 90>成绩>=80 :B
/// 80>成绩>=70 :C
/// 70>成绩>=60 :D
/// 成绩<60 :E
/// </summary>
static void Test_24()
{
Console.WriteLine("请输入成绩");
int score = Convert.ToInt32(Console.ReadLine());
int num = score / 10;
switch (num)
{
case 10: //100(10==num)
case 9: //90~99(9==num)
Console.WriteLine("A");
break;
case 8:
Console.WriteLine("B");
break;
case 7:
Console.WriteLine("C");
break;
case 6:
Console.WriteLine("D");
break;
case 5:
case 4:
case 3:
case 2:
case 1:
case 0:
Console.WriteLine("E");
break;
default:
Console.WriteLine("请不要开玩笑,你确定你输入的是成绩");
break;
}
}
/// <summary>
/// 循环录入5个人的年龄并计算平均年龄,
/// 如果录入的数据出现负数或大于100的数,立即停止输入并报错.
/// </summary>
static void Test_25() {
int sum = 0;
for (int i = 0; i < 5; i++) {
Console.WriteLine("请输入年龄");
int age = Convert.ToInt32(Console.ReadLine());
if (age > 100 || age < 0) {
Console.WriteLine("你输入的年龄不合法");
break;
}
Console.WriteLine("你输入的年龄是"+age);
sum += age;
}
Console.WriteLine("平均年龄为" + sum / 5);
}
/// <summary>
/// 在while中用break实现要求用户一直输入用户名和密码,
/// 只要不是admin、888888就一直提示要求重新输入,
/// 如果正确则提登录成功.
/// </summary>
static void Test_26() {
bool Denglu=false;
while (Denglu==false) {
Console.WriteLine("请输入用户名");
string name = Console.ReadLine();
Console.WriteLine("请输入密码");
string mima = Console.ReadLine();
if (name == "admin" && mima == "888888")
{
Console.WriteLine("登录成功");
Denglu = true;
}
else {
Console.WriteLine("用户名密码错误,重新输入");
}
}
}
/// <summary>
/// 1~100之间的整数相加,得到累加值大于20的当前数
/// </summary>
static void Test_27() {
int i, sum = 0;
for (i = 1; i <= 100; i++)
{
sum += i;
if (sum > 20)
{
Console.WriteLine("{0}", i);
break;
}
}
}
/// <summary>
/// 输入班级人数,然后依次输入学员成绩,计算班级学员的平均成绩和总成绩
/// </summary>
static void Test_28() {
Console.WriteLine("请输入班级的总人数:");
int count = Convert.ToInt32(Console.ReadLine());
int i = 1;//声明一个循环变量来记录循环的次数。
int sum = 0;//声明一个用来存储学生成绩的总和的变量。
while (i <= count)
{
Console.WriteLine("请输入第{0}个学生的成绩", i);
int score = Convert.ToInt32(Console.ReadLine());
sum += score;
i++;
}
Console.WriteLine("这个班学生的总成绩为{0},平均成绩为{1}", sum, sum / i);
Console.ReadLine();
}
/// <summary>
/// 老师问学生,这道题你会做了吗?如果学生答"会了(y)",则可以放学.如果学生不会做(n),
/// 则老师再讲一遍,再问学生是否会做了......直到学生会为止,才可以放学.
/// 直到学生会或老师给他讲了10遍还不会,都要放学
/// </summary>
static void Test_29() {
Console.WriteLine(" 会了吗");
string a = Console.ReadLine();
if (a == "y")
{
Console.WriteLine("放学");
}
for (int i = 0; i < 10; i++)
{
Console.WriteLine("会了吗");
a = Console.ReadLine();
if (a == "y")
{
Console.WriteLine("放学");
break;
}
}
Console.ReadKey();
}
/// <summary>
/// 2006年培养学员80000人,每年增长25%,请问按此增长速度,
/// 到哪一年培训学员人数将达到20万人?
/// </summary>
static void Test_30() {
int year = 2006;
int student = 80000;
while (student < 200000)
{
student = (int)(student * (1 + 0.25));
year++;
}
Console.WriteLine(year+"年,培训人数达到20万人");
}
/// <summary>
/// 打印100次“欢迎您来卓联科技学习
/// </summary>
static void Test_31() {
for(int i=1;i<=100;i++){
Console.WriteLine("欢迎您来卓联科技学习");
}
}
/// <summary>
/// 计算1到100之间整数的和
/// </summary>
static void Test_32() {
int sum = 0;
for (int i = 0; i <= 100; i++) {
sum += i;
}
Console.WriteLine("和是" + sum);
}
/// <summary>
/// 要求用户输入用户名和密码,只要不是admin、888888就一直提示用户名或密码错误,请重新输入。
/// </summary>
static void Test_33() {
bool Denglu = false;
while (Denglu == false)
{
Console.WriteLine("请输入用户名");
string name = Console.ReadLine();
Console.WriteLine("请输入密码");
string mima = Console.ReadLine();
if (name == "admin" && mima == "888888")
{
Console.WriteLine("登录成功");
Denglu = true;
}
else
{
Console.WriteLine("用户名密码错误,重新输入");
}
}
}
/// <summary>
/// 不断要求用户输入学生姓名,输入q结束.
/// </summary>
static void Test_34() {
while (true) {
Console.WriteLine("请输入学生姓名");
string name = Console.ReadLine();
if (name == "q") {
break;
}
}
}
/// <summary>
/// 不断要求用户输入一个数字,然后打印这个数字的二倍,当用户输入q的时候程序退出。
/// </summary>
static void Test_35()
{
while (true) {
Console.WriteLine("请输入一个数字");
string num = Console.ReadLine();
if (num == "q")
{
break;
}
else {
int num_1 = Convert.ToInt32(num);
Console.WriteLine(num_1 * 2);
}
}
}
/// <summary>
/// 不断要求用户输入一个数字(假定用户输入的都是正整数),
/// 当用户输入end的时候显示刚才输入的数字中的最大值
/// </summary>
static void Test_36() {
//不断要求用户输入一个数字,当用户输入end的时候显示刚才输入的数字中的最大值。
int max = 0;
while (true)
{
Console.WriteLine("请输入一个数字(结束请输入end):");
string s = Console.ReadLine();
if (s == "end")
{
Console.WriteLine("最大数" + max);
break;
}
int number = Convert.ToInt32(s);
if (number > max) //新的数和max进行了比较,诞生更大的数,max赋值为更大的这个number
{
max = number;
}
}
}
/// <summary>
/// 张三先唱一遍要表演的歌曲,老师觉得张三唱歌不过关,
/// 就让张三再唱一遍,老师满意则张三可以下课,不然则需要再唱一遍,再问老师是否满意.
/// </summary>
static void Test_37() {
bool guoguan = true;
do
{
Console.WriteLine("老师我唱的怎么样啊?,老师回答过关/不过关(y/n)");
string answer = Console.ReadLine();
if (answer == "y")
{
Console.WriteLine("可以了,下课!");
guoguan = false;
}
} while (guoguan);
Console.ReadKey();
}
}
}