| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 624 人关注过本帖
标题:C#问题
只看楼主 加入收藏
wangandkan
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2007-12-5
收藏
 问题点数:0 回复次数:7 
C#问题
请人帮我完善一下以下程序:
using System;

namespace exercise4._2
{
    /// <summary>
    /// Class1 的摘要说明。
    /// </summary>
    class Account
    {
        /// <summary>
        /// 应用程序的主入口点。
        /// </summary>
        ///
        int _balance;
        private Account()
        {
            _balance = 2000;
        }
        private Account(int b)
        {
            _balance= b;
        }
        [STAThread]
        static void Main(string[] args)
        {
            string choice;
            int dollar;
            int residual;
            Account ac = new Account();
            Console.WriteLine("银行初始存款有{0}",ac._balance);
            Console.WriteLine("请问要存款还是要取款?(y=存款/n=取款)");
            choice = Console.ReadLine();
            if(choice == "y")
            {
                Console.WriteLine("请问要存入多少美圆?");
                dollar = int.Parse(Console.ReadLine());
                residual = ac._balance+dollar;
            }
            else
            {
                Console.WriteLine("请问要取出多少美圆?");
                dollar = int.Parse(Console.ReadLine());
                residual = ac._balance-dollar;
            }
            Account acc = new Account(residual);
            if(residual > 0)
            {
                Console.WriteLine("剩余存款有:{0}",acc._balance);
            }
            else
            {
                Console.WriteLine("余额不足");
            }
            //
            // TODO: 在此处添加代码以启动应用程序
            //
        }
    }
}
要加入判断输入的是否是N,如果输入是其他字符那就跳出提示,我用ELSE IF做但老提示说residual未赋值,请人教教我,谢谢了~~
2008-05-14 22:17
blueskyss
Rank: 1
来 自:湖北
等 级:新手上路
帖 子:81
专家分:0
注 册:2008-2-19
收藏
得分:0 
加个       else
            {
                return;
            }
就可以了
不要if
2008-05-14 23:30
wangandkan
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2007-12-5
收藏
得分:0 
谢谢啊,但加了
else
            {
                return;
            }
后如果输入的不是N或者Y他就自动结束程序了,要让他再跳回来怎么弄啊?
2008-05-15 19:37
峥嵘子
Rank: 1
等 级:新手上路
帖 子:19
专家分:0
注 册:2008-5-4
收藏
得分:0 
用GOTO吧,在你需要跳到的位置加个标签就行了
2008-05-16 10:39
野比
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:24
帖 子:1627
专家分:516
注 册:2007-5-24
收藏
得分:0 
可以用 goto,或者是在跳出的地方加上标志变量和 if 判断,方法很多

女侠,约吗?
2008-05-16 13:13
wangandkan
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2007-12-5
收藏
得分:0 
谢谢啊
2008-05-16 13:19
DemoHunter
Rank: 1
来 自:江苏南京
等 级:新手上路
帖 子:7
专家分:0
注 册:2008-5-14
收藏
得分:0 
Loop: Console.WriteLine("请问要存款还是要取款?(y=存款/n=取款/exit=退出)");
.
.
.
 goto Loop;

不要问,前进...
2008-05-16 23:32
xxxxwjj
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2008-5-15
收藏
得分:0 
using System;
using System.Collections.Generic;
using System.Text;
//输入类型最好用string型,进过判断,再转换为int,你的金额没有做判断,所以在金额输入时输入字母等报错
//我写了判断的语句,你自己关联起来
//wjj新手,有问题可以加我msn  wjjlove@  一起学习
//还有金额的大小没有做判断,可以通过输入字符串的位数判断
//
namespace a3
{
    class Program
    {
            /// <summary>
    /// Class1 的摘要说明。
    /// </summary>
        class Account
        {
            /// <summary>
            /// 应用程序的主入口点。
            /// </summary>
            ///
            int _balance = 0;
            private Account()
            {
                _balance = 2000;
            }
            private Account(int b)
            {
                _balance = b;
            }
            [STAThread]
            static void Main(string[] args)
            {
                string choice;
                int dollar;
                int residual;
                Account ac = new Account();
                Console.WriteLine("银行初始存款有{0}", ac._balance);
                loop:
                Console.WriteLine("请问要存款还是要取款?(y=存款/n=取款)");
                choice = Console.ReadLine();
                if ("y" == choice || "n" == choice)
                {
                    if (choice == "y")
                    {
                        Console.WriteLine("请问要存入多少美圆?");
                        dollar = int.Parse(Console.ReadLine());
                        residual = ac._balance + dollar;
                    }
                    else
                    {
                        Console.WriteLine("请问要取出多少美圆?");
                        dollar = int.Parse(Console.ReadLine());
                        residual = ac._balance - dollar;
                    }
                    Account acc = new Account(residual);
                    if (residual > 0)
                    {
                        Console.WriteLine("剩余存款有:{0}", acc._balance);
                    }
                    else
                    {
                        Console.WriteLine("余额不足");
                    }
                    //
                    // TODO: 在此处添加代码以启动应用程序
                    //
                }
                else
                {
                    Console.WriteLine("输入的格式错误,请输入y或者n\n\n\n\n");
                    goto loop;
                }
            }
       #region 判断金额输入的格式
       private static bool checkNum(string num)
        {
            for (int i = 1; i < num.Length; i++)
            {
                if ((num[i] < '0') || (num[i] > '9'))
                {
                    return false;
                }
            }
            if (0 == Convert.ToInt32(num))
                return false;
            else
                return true;           
       }
       #endregion

        }
    }
}
2008-05-18 08:55
快速回复:C#问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.049467 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved