c# 引用传递参数
来源:百度知道 编辑:UC知道 时间:2024/06/08 11:40:17
满100减50是指不足100的部分按原价付款,按引用传递参数,传入是时原价,方法返回后参数变为实际的付款数。
如果不引用传递参数,还会做点,要引用的话就不会了,前辈们多多指教。。先谢了。
我是这样写的;
using System;
using System.Collections.Generic;
using System.Text;
namespace Di_3zuoye
{
class zuoye_3
{
static void Main(string[] args)
{
int price1;
Console.WriteLine("原价为:");
price1 = int.Parse(Console.ReadLine());
Get(ref price2);(错误当前文件中不存在"price2")
Console.WriteLine("实际付款为:{0}", price2);(错误当前文件中不存在"price2")
Console.ReadLine();
}
private static int Get(ref int price2)
{
int price1=0;
if (price1 <= 100)
{
price2 = price1
方法,你在主函数中调用一下就OK了。时间有限,就写这么多啦。
public void get(int price)
{
if(price<=100)
{
console.write(price);
else
{
price=price-50;
console.write(price);
}
}
}
手写的有错误还请谅解。
希望对你有所帮助。
使用ref,表示引用传递.
class Program
{
public static void Discount(ref decimal m)
{
//m =(int)(m/100)*100- (int)(m / 100)*50 + m % 100;
m=m%100+(m-m%100)*0.5m;
}
static void Main(string[] args)
{
Console.WriteLine("输入商品原价:");
decimal n =decimal.Parse( Console.ReadLine());
Discount(ref n);
Console.WriteLine("实际付款总额为:{0}",n);
}
}
复制过去试试... 你写的那算什么东东啊!首先系统提示"错误当前文件中不存在"price2"是因为你的price2变量在使用前没有声明,而且ref传递的变量在使用前除了要声明,还一定要初始化.
还有就是你的那个Get方法,算法根本就错着呢,你带几个数试试看.好好读读我的程序吧...
using