c# 函数及out传值
使用 out传值的时候仅仅是将变量名(箱子)拿过来,并不会管之前是什么值
函数体结束之前必须对该out的参数进行赋值,否则报错(不好意思还回去)
out传值,可以进行多个值的传回
public void Jia(int b,out int c)
{
c = b + 10;
}
Console.Write("请输入a=");
int a = int.Parse(Console.ReadLine());
int c = 4;
Program hanshu = new Program();
hanshu.Jia(a,out c);
Console.WriteLine(c);
Console.ReadLine();
//使用return如何返回多个值
public string fanhui()
{
return 1 + "-" + 2 + "-" + 5;
}
Program hanshu = new Program();
string[] array = hanshu.fanhui().Split('-');
int [] arr = new int[array.Length];
for (int i = 0; i < array.Length; i++)
arr[i] = int.Parse( array[i]);
}
函数练习:
{
1.求羊
每过一个村庄,卖掉之前总数的二分之一零一只
过了7个村庄之后还有两只
最初有多少只羊
//无参有返
public int assd()
{
int sum = ;
for (int i = ; i < ;i++ )
{
if (i == )
{
sum = ;
}
else
{
sum = * (sum + );
} }
return sum; }
static void Main(string[] args)
{
Program hanshu = new Program();
int s = hanshu.assd();
Console.WriteLine(s);
Console.ReadLine();
2.掷骰子,投几走几步,逢3进1,逢5退1,逢7进2,逢0退4,求投几次后一共走了多少步?
//有参有返
public int bu(int s)
{
int bu = ;
Random ran = new Random();
for (int i = ; i < s; i++)
{
int a = ran.Next(, );
bu += a;
if (bu % == )
{
bu += ;
}
else if (bu % == )
{
bu -= ;
}
else if (bu % == )
{
bu += ;
}
else if (bu % == )
{
bu -= ;
}
else
{
continue;
}
}
return bu;
}
static void Main(string[] args)
{
Program hanshu = new Program();
Console.Write("输入您投的次数:");
int x = hanshu.bu(int.Parse(Console.ReadLine()));
Console.WriteLine(x);
Console.ReadLine();
3.在一个箱子里有16个红球(编号1-16),3个蓝球(编号17-19),1个黄球(编号20),
随机抽取一个,抽中蓝球加4分,抽中黄球加7分,每抽中红球5次减2分,
抽几次后能达到100分
//无参有返
public string d()
{
Random ran = new Random();
int fen = ;
int i = ;
int c = ;
for (; ; )
{
int s = ran.Next(, );
if (s < )
{
c++;
if (c == )
{
fen -= ;
c = ;
}
}
else if (s < )
{
fen += ;
}
else
{
fen += ;
}
i++;
if (fen >= )
{
break;
}
}
return "需要" + i + "次,才能达到100分";
}
static void Main(string[] args)
{
Program hanshu = new Program();
string s = hanshu.d();
Console.WriteLine(s);
Console.ReadLine();
最新文章
- 李洪强经典面试题152-Runtime
- 架构师养成记--3.synchronized细节问题
- Apache 打开网页的时候等待时间过长的解决方案
- CI(持续集成)CD(持续交付)
- DbContext 那些事 —— 数据库初始化
- 浅谈SEO翻倍提升网站流量
- 51Nod 1256 乘法逆元 Label:exgcd
- haskell debug
- SQL Server技术问题之触发器优缺点
- C++代码重用——包含
- onClick事件实现方式(打电话为例子)
- qt模型学习
- ASP.NET PipeLine #Reprinted#
- DDD领域驱动设计的理解
- PHP错误代号列表
- Python全栈之路----常用模块----包及跨模块导入
- 打开控制台F12弹出弹窗
- DataSet 读取xml 报错有非法字符
- ZTree id值太大,ZTree没有生成树,ZTree的id值过大
- etcd 分布式数据库概念初探