20道C#练习题(二)11——20题
11.一个游戏,前20关是每一关自身的分数,1-30关每一关是10分,31-40关,每一关是20分,1-49关,每一关是30分,第50关是100分,输入你现在闯到的关卡数,求你现在拥有的分数。利用if嵌套for。
Console.Write("输入你闯的关卡数:");
int a = int.Parse(Console.ReadLine());
sum = 0;
if(a<=20)
{
for (int i = 1; i <=a;i++ )
{
sum += i;
}
}
else if(a>=21&&a<=30)
{
for (int i = 1; i <= 20; i++)
{
sum += i;
}
for (int j = 21; j <= a;j++ )
{
sum += 10;
}
}
else if(a>=31&&a<=40)
{
for (int i = 1; i <= 20; i++)
{
sum += i;
}
for (int j = 21; j <= 30; j++)
{
sum += 10;
}
for (int k = 31; k <=a;k++ )
{
sum += 20;
}
}
else if (a >= 41 && a <= 49)
{
for (int i = 1; i <= 20; i++)
{
sum += i;
}
for (int j = 21; j <= 30; j++)
{
sum += 10;
}
for (int k = 31; k <= 40; k++)
{
sum += 20;
}
for (int l = 41; l <= a;l++ )
{
sum += 30;
}
}
else//a==50
{
for (int i = 1; i <= 20; i++)
{
sum += i;
}
for (int j = 21; j <= 30; j++)
{
sum += 10;
}
for (int k = 31; k <= 40; k++)
{
sum += 20;
}
for (int l = 41; l <= 49; l++)
{
sum += 30;
}
sum = sum + 100;
}
Console.WriteLine("总分为:" + sum);
12.一个游戏,前20关是每一关自身的分数,1-30关每一关是10分,31-40关,每一关是20分,1-49关,每一关是30分,第50关是100分,输入你现在闯到的关卡数,求你现在拥有的分数。利用for嵌套if。
Console.Write("输入你闯的关卡数:");
int a = int.Parse(Console.ReadLine());
sum = 0;
for (int i = 1; i <= a;i++ )
{
if(i>=1&&i<=20)
{
sum += i;
}
else if(i>=21&&i<=30)
{
sum += 10;
}
else if(i>=31&&i<=40)
{
sum += 20;
}
else if (i >= 41 && i <= 49)
{
sum += 30;
}
else
{
sum += 100;
}
}
Console.WriteLine("总分为:" + sum);
13.输入月份和日期,输出是今年的第多少天。(2月按照28天计算)利用switch case。
int sum = 0;
int m1 = 31, m2 = 28, m3 = 31, m4 = 30, m5 = 31, m6 = 30, m7 = 31, m8 = 31, m9 = 30, m10 = 31, m11 = 30;
Console.Write("请输入月份:");
int m = int.Parse(Console.ReadLine());
Console.Write("请输入几号:");
int d = int.Parse(Console.ReadLine());
switch(m)
{
case 1:
sum = d;
break;
case 2:
sum = m1 + d;
break;
case 3:
sum = m1 + m2 + d;
break;
case 4:
sum = m1 + m2 +m3+ d;
break;
case 5:
sum = m1 + m2 + m3 +m4+ d;
break;
case 6:
sum = m1 + m2 + m3 + m4+m5 + d;
break;
case 7:
sum = m1 + m2 + m3 + m4 + m5+m6 + d;
break;
case 8:
sum = m1 + m2 + m3 + m4 + m5 + m6+m7 + d;
break;
case 9:
sum = m1 + m2 + m3 + m4 + m5 + m6 + m7+m8 + d;
break;
case 10:
sum = m1 + m2 + m3 + m4 + m5 + m6 + m7 + m8+m9 + d;
break;
case 11:
sum = m1 + m2 + m3 + m4 + m5 + m6 + m7 + m8 + m9+m10 + d;
break;
case 12:
sum = m1 + m2 + m3 + m4 + m5 + m6 + m7 + m8 + m9 + m10+m11 + d;
break;
}
Console.WriteLine("今年的第" +sum+ "天");
14.百鸡百钱:公鸡2文钱一只,母鸡1文钱一只,小鸡半文钱一只,总共只有100文钱,如何在凑够100只鸡的情况下刚好花完100文钱?利用for嵌套+if筛选。
int sum = 0;
for (int x = 0; x <= 50;x++ )
{
for (int y = 0; y <= 100;y++ )
{
for (int z = 0; z <= 200;z++ )
{
if(x+y+z==100&&2*x+y+0.5*z==100)
{
sum++;
Console.WriteLine("第"+sum+"种方法:"+x+"只公鸡,"+y+"只母鸡,"+z+"只小鸡。");
}
}
}
}
Console.WriteLine("共有" + sum + "中方法。");
15.大马驼2石粮食,中等马驼1石粮食,两头小马驼1石粮食,要用100匹马,驼100石粮食,该如何分配?利用for嵌套+if筛选。
int sum = 0;
for (int x = 0; x <= 50;x++ )
{
for (int y = 0; y <= 100;y++ )
{
for (int z = 0; z <= 200;z++ )
{
if(x+y+z==100&&2*x+y+0.5*z==100)
{
sum++;
Console.WriteLine("第"+sum+"种方法:"+x+"匹大马,"+y+"匹中马,"+z+"匹小马。");
}
}
}
}
Console.WriteLine("共有"+sum+"中方法。");
16.纸张可以无限次对折,纸张厚度为0.07毫米。问多少次对折至少可以超过8848?利用while。
int a = 7, b = 884800000;
int i=1;
while(true)
{
a*=2;
if(a>=b)
{
Console.WriteLine("第"+i+"次折叠。");
Console.WriteLine("高度为"+a);
break;
}
i++;
}
17.兔子生兔子。除了第一个月之后的所有月份都可以直接执行。成兔=上个月的成兔加上上个月的小兔。小兔=上个月的幼兔。幼兔=上个月的成兔加上上个月的小兔(即这个月的成兔)利用for嵌套if。
Console.Write("请输入几个月:");
int a = int.Parse(Console.ReadLine());
int cheng = 0, xiao = 0, you = 0,zong=0;
for (int i=1; i <= a;i++ )
{
if(i==1)
{
cheng = 0;
xiao = 0;
you = 1;
zong = 0;
}
else
{
cheng = cheng + xiao;
xiao = you;
you = cheng;
zong = cheng + xiao + you;
}
Console.WriteLine("第" + i + "月总兔为" + zong + "对,成兔" + cheng + "对,小兔" + xiao + "对,幼兔" + you + "对。");
}
18.输入两个时间日期,计算出相差多少天(TotalDays)。
Console.Write("请输入第一个时间:");
DateTime time1 = DateTime.Parse(Console.ReadLine());
Console.Write("请输入第二个时间:");
DateTime time2 = DateTime.Parse(Console.ReadLine());
Console.WriteLine("两个日期相差" + (time2 - time1).TotalDays + "天");
19.五个候选班长,20人投票。输入1-5来表示支持哪(个人)最后查看票数,看那个人胜出。不是1~5之内的数视为票作废。利用数组。
string[] shuzu = new string[20];
int sum1 = 0,
sum2 = 0, sum3 = 0, sum4 = 0, sum5 = 0;
for (int i = 0; i < 20; i++)
{
Console.Write("请输入第" + (i + 1) + "人支持的号码:");
shuzu[i] = Console.ReadLine();
if (shuzu[i] == "1")
{
sum1++;
}
else if (shuzu[i] == "2") { sum2++; }
else if (shuzu[i] == "3") { sum3++; }
else if (shuzu[i] == "4") { sum4++; }
else if (shuzu[i] == "5") { sum5++; }
else
{
Console.WriteLine("票号输入错误,作废。");
}
}
Console.WriteLine("输入完毕,请按回车键查看结果。");
Console.WriteLine("1号选手获得票数:" + sum1);
Console.WriteLine("2号选手获得票数:" + sum2);
Console.WriteLine("3号选手获得票数:" + sum3);
Console.WriteLine("4号选手获得票数:" + sum4);
Console.WriteLine("5号选手获得票数:" + sum5);
if(sum1>=sum2&&sum1>=sum3&&sum1>=sum4&&sum1>=sum5)
{
Console.WriteLine("胜出的是1号选手。");
}
else if (sum2 >= sum1 && sum2 >= sum3 && sum2 >= sum4 && sum2>= sum5)
{
Console.WriteLine("胜出的是2号选手。");
}
else if (sum3 >= sum2 && sum3 >= sum1 && sum3 >= sum4 && sum3 >= sum5)
{
Console.WriteLine("胜出的是3号选手。");
}
else if (sum4 >= sum2 && sum4 >= sum3 && sum4 >= sum1 && sum4 >= sum5)
{
Console.WriteLine("胜出的是4号选手。");
}
else
{
Console.WriteLine("胜出的是5号选手。");
}
20.输入手机号码个数,根据手机号码个数创建数组。做抽奖活动。利用System.Threading.Thread.Sleep(3000);//程序暂停3秒
Console.Write("请输入人数:");
int a = int.Parse(Console.ReadLine());
string[] sj = new string[a];
for (int i = 0; i < a; i++)
{
Console.Write("输入第" + (i + 1) + "个人的手机号码:");
sj[i] = Console.ReadLine();
}
Console.WriteLine("输入完毕,请按回车键开始抽奖!");
Console.ReadLine();
Random ran = new Random();
int r = 0;
for (; ; )
{
int aa = ran.Next(a);
Console.Clear();
Console.WriteLine(sj[aa]);
System.Threading.Thread.Sleep(50);
if (r == 59)
{
//Console.Clear();//作弊代码
//Console.WriteLine("110");
break;
}
r++;
}
20道C#练习题(二)11——20题的更多相关文章
- 20道C#练习题(一)1——10题
1.输入三个整数,xyz,最终以从小到大的方式输出.利用if嵌套. Console.Write("请输入x="); double x = double.Parse(Console. ...
- 20道JS原理题助你面试一臂之力!(转)
20道JS原理题助你面试一臂之力! 前言 本文针对目前常见的面试题,仅提供了相应的核心原理及思路,部分边界细节未处理.后续会持续更新,希望对你有所帮助. 1. 实现一个call函数 // 思路:将要改 ...
- 20道必须掌握的C++面试题
20道必须掌握的C++面试题 在面试C++方面的工作时,经常会遇到各种面试题,这对应聘人员的知识掌握能力要求较高.本文将为大家带来的就是20道必须掌握的C++面试题,不要错过哦! 问1:请用简单的语言 ...
- 程序员面试:C/C++求职者必备 20 道面试题,一道试题一份信心!
面试真是痛并快乐的一件事,痛在被虐的体无完肤,快乐在可以短时间内积累很多问题,加速学习. 在我们准备面试的时候,遇到的面试题有难有易,不能因为容易,我们就轻视,更不能因为难,我们就放弃.我们面对高薪就 ...
- 吐血整理 20 道 Spring Boot 面试题,我经常拿来面试别人!
面试了一些人,简历上都说自己熟悉 Spring Boot, 或者说正在学习 Spring Boot,一问他们时,都只停留在简单的使用阶段,很多东西都不清楚,也让我对面试者大失所望. 下面,我给大家总结 ...
- 【转】20道Spring Boot面试题
面试了少量人,简历上都说自己熟习 Spring Boot, 或者者说正在学习 Spring Boot,一问他们时,都只停留在简单的使用阶段,很多东西都不清楚,也让我对面试者大失所望. 下面,我给大家总 ...
- 20道spring boot面试题
面试了少量人,简历上都说自己熟习 Spring Boot, 或者者说正在学习 Spring Boot,一问他们时,都只停留在简单的使用阶段,很多东西都不清楚,也让我对面试者大失所望. 下面,我给大家总 ...
- 50道sql练习题和答案
最近两年的工作没有写过多少SQL,感觉水平下降十分严重,网上找了50道练习题学习和复习 原文地址:50道SQL练习题及答案与详细分析 1.0数据表介绍 --1.学生表 Student(SId,Snam ...
- 50道SQL练习题及答案与详细分析(MySQL)
50道SQL练习题及答案与详细分析(MySQL) 网上的经典50到SQL题,经过一阵子的半抄带做,基于个人理解使用MySQL重新完成一遍,感觉个人比较喜欢用join,联合查询较少 希望与大家一起学习研 ...
随机推荐
- php--memcahce安装
安装php_memcache.dll扩展 1.首先将php_memcache.dll文件放入E:\server\php\ext目录下 (php_memcache.dll下载地址:http://wind ...
- 让UITableView 的 headerView跟随 cell一起滚动,tableHeaderView
在进行UITableView开发的时候,我们有时希望在cell的上面放置一些按钮之类的空间,又想让这些空间跟着cell一起滚动,刚开始想着hederView,注意,这是tableView的sectio ...
- proxy解析
知其所以然 本文不是教程向,倾向于分析科学上网的一些原理.知其所以然,才能更好地使用工具,也可以创作出自己的工具. 科学上网的工具很多,八仙过海,各显神通,而且综合了各种技术.尝试从以下四个方面来解析 ...
- 深入浅出WPF(1)—转(http://liutiemeng.blog.51cto.com/120361/91631/)
深入浅出WPF(1)——什么是WPF 2008-05-15 19:06:00 小序: Hi,大家好!几乎两个月没有写技术文章了.这两个月,我在学习WPF.回顾一下两个月的学习历程,有两个感觉— ...
- busybox rx 命令
rx命令使用xmodem传送文件,只需要串口线就传送. 在文件系统输入如下命令,传送文件到板子上,板子上保存文件的名称为file rx file 在secureCRT中选择Transfer->S ...
- TCP定时器
http://network.51cto.com/art/201412/459352.htm TCP 是提供可靠的传输层,它使用的方法之一就是确认从另一端收到的数据.但是数据和确认都可能会丢失.TCP ...
- div滑入与滑出
html <div class="pop_tit"> <span class="p_tit1" title="大连未来城LECITY ...
- 诊断一句SQL不走索引的原因
from http://www.itpub.net/thread-1852897-1-1.html 有论坛朋友在上面的帖子里问SQL为什么不走索引,正好这两天我也刚刚在看SQL优化,于是试着回答了一下 ...
- break , continue , exit
break , continue , exit 例一:#!/bin/bash . /etc/init.d/functions `;do ];then #continue #没有数字3 break #e ...
- 【转】C语言中标识符的作用域、命名空间、链接属性、生命周期、存储类型
参考网址:http://blog.csdn.net/zhanglianpin/article/details/41575849 绝对的经典.