1)                   {                       floatb=a%1;                       floatc=a-b;                       if(b<=0.5)                       {                           doubleres;                           if(b==0)                           {                               res=(c-1)*2530;                               label3.Text=res.ToString();                           }                           else                           {                               res=(c-1)*253012.5;                               label3.Text=res.ToString();                           }                       }                       elseif(b>0.5)                       {                           doubleres;                           res=c*2530;                           label3.Text=res.ToString();                       }                   }                   break;-IMDN开发者社群-imdn.cn"> 1)                   {                       floatb=a%1;                       floatc=a-b;                       if(b<=0.5)                       {                           doubleres;                           if(b==0)                           {                               res=(c-1)*2530;                               label3.Text=res.ToString();                           }                           else                           {                               res=(c-1)*253012.5;                               label3.Text=res.ToString();                           }                       }                       elseif(b>0.5)                       {                           doubleres;                           res=c*2530;                           label3.Text=res.ToString();                       }                   }                   break; - IMDN开发者社群-imdn.cn">
登录
首页 » C# » C# 快递费用计算软件 源码

C# 快递费用计算软件 源码

于 2014-09-10 发布
0 199
下载积分: 1 下载次数: 0

代码说明:

     switch (aa)            {                case "香港":                    float a;                    a = float.Parse(textBox1.Text);                    // textBox1.Text = a.ToString();                    if (a 1)                    {                        float b = a % 1;                        float c = a - b;                        if (b 0.5)                        {                            double res;                            res = c * 25 30;                            label3.Text = res.ToString();                        }                    }                     break;

下载说明:请别用迅雷下载,失败请重下,重下不扣分!

发表评论

0 个回复

  • QQ开发的部分接口API
    QQ开发的部分接口API
    2014-12-29下载
    积分:1
  • c# 网络编程 实例源码(pdf)
    我们知道 C#和 C++的差异之一,就是他本身没有类库,所使用的类库是.Net 框架中的类库--.Net FrameWork SDK。在.Net FrameWork SDK 中为网络编程提供了二个名称空间:"System.Net"和"System.Net.Sockets"。C#就是通过这二个名称空间中封装的类和方法实现网络通讯的。   首先我们解释一下在网络编程时候,经常遇到的几个概念:同步(synchronous)、异步(asynchronous)、阻塞(Block)和非阻塞(Unblock):   所谓同步方式,就是发送方发送数据包以后,丌等接受方响应,就接着发送下一个数据包。异步方式就是当发送方发送一个数据包以后,一直等到接受方响应后,才接着发送下一个数据包。而阻塞套接字是指执行此套接字的网络调用时,直到调用成功才返回,否则此套节字就一直阻塞在网络调用上,比如调用 StreamReader 类的 Readlin ( )方法读取网络缓冲区中的数据,如果调用的时候没有数据到达,那么此 Readlin ( )方法将一直挂在调用上,直到读到一些数据,此函数调用才返回;而非阻塞套接字是指在执行此套接字的网络调用时,丌管是否执行成功,都立即返回。同样调用 StreamReader 类的 Readlin ( )方法读取网络缓冲区中数据,丌管是否读到数据都立即返回,而丌会一直挂在此函数调用上。在 Windows网络通信软件开发中,最为常用的方法就是异步非阻塞套接字。平常所说的 C/S(客户端/服务器)结构的软件采用的方式就是异步非阻塞模式的。   其实在用 C#迚行网络编程中,我们并丌需要了解什么同步、异步、阻塞和非阻塞的原理和工作机制,因为在.Net FrameWrok SDK 中已经已经把这些机制给封装好了。下面我们就用 C#开一个具体的网络程序来说明一下问题。   一.本文中介绍的程序设计及运行环境   (1).微软视窗 2000 服务器版   (2)..Net Framework SDK Beta 2 以上版本   二.服务器端程序设计的关键步骤以及解决办法:   在下面接受的程序中,我们采用的是异步阻塞的方式。   (1).首先要要在给定的端口上面创建一个"tcpListener"对象侦听网络上面的请求。当接收到连结请求后通过调用"tcpListener"对象的"AcceptSocket"方法产生一个用于处理接入连接请求的 Socket 的实例。下面是具体实现代码: //创建一个 tcpListener 对象,此对象主要是对给定端口迚行侦听 tcpListener = new TcpListener ( 1234 ) ; //开始侦听 tcpListener.Start ( ) ; //返回可以用以处理连接的 Socket 实例 socketForClient = tcpListener.AcceptSocket ( ) ;   (2).接受和发送客户端数据:   此时 Socket 实例已经产生,如果网络上有请求,在请求通过以后,Socket 实例构造一个"NetworkStream"对象,"NetworkStream"对象为网络访问提供了基础数据流。我们通过名称空间"System.IO"中封装的二个类"StreamReader"和"StreamWriter"来实现对"NetworkStream"对象的访问。其中"StreamReader"类中的 ReadLine ( )方法就是从"NetworkStream"对象中读取一行字符;"StreamWriter"类中的 WriteLine ( )方法就是对"NetworkStream"对象中写入一行字符串。从而实现在网络上面传输字符串,下面是具体的实现代码: try { //如果返回值是"true",则产生的套节字已经接受来自进方的连接请求 if ( socketForClient.Connected ) { ListBox1.Items.Add ( "已经和客户端成功连接!" ) ; while ( true ) { //创建 networkStream 对象通过网络套节字来接受和发送数据 networkStream = new NetworkStream ( socketForClient ) ; //从当前数据流中读取一行字符,返回值是字符串 streamReader = new StreamReader ( networkStream ) ; string msg = streamReader.ReadLine ( ) ; ListBox1.Items.Add ( "收到客户端信息:" msg ) ; streamWriter = new StreamWriter ( networkStream ) ; if ( textBox1.Text != "" ) { ListBox1.Items.Add ( "往客户端反馈信息:" textBox1.Text ) ; //往当前的数据流中写入一行字符串 streamWriter.WriteLine ( textBox1.Text ) ; //刷新当前数据流中的数据 streamWriter.Flush ( ) ; } } } } catch ( Exception ey ) { MessageBox.Show ( ey.ToString ( ) ) ; }   (3).最后别忘了要关闭所以流,停止侦听网络,关闭套节字,具体如下: //关闭线程和流 networkStream.Close ( ) ; streamReader.Close ( ) ; streamWriter.Close ( ) ; _thread1.Abort ( ) ; tcpListener.Stop ( ) ; socketForClient.Shutdown ( SocketShutdown.Both ) ; socketForClient.Close ( ) ;   三.C#网络编程服务器端程序的部分源代码(server.cs):   由于在此次程序中我们采用的结构是异步阻塞方式,所以在实际的程序中,为了丌影响服务器端程序的运行速度,我们在程序中设计了一个线程,使得对网络请求侦听,接受和发送数据都在线程中处理,请在下面的代码中注意这一点,下面是 server.cs 的完整代码: using System ; using System.Drawing ; using System.Collections ; using System.ComponentModel ; using System.Windows.Forms ; using System.Data ; using System.Net.Sockets ; using System.IO ; using System.Threading ; using System.Net ; //导入程序中使用到的名字空间 public class Form1 : Form { private ListBox ListBox1 ; private Button button2 ; private Label label1 ; private TextBox textBox1 ; private Button button1 ; private Socket socketForClient ; private NetworkStream networkStream ; private TcpListener tcpListener ; private StreamWriter streamWriter ; private StreamReader streamReader ; private Thread _thread1 ; private System.ComponentModel.Container components = null ; public Form1 ( ) { InitializeComponent ( ) ; } //清除程序中使用的各种资源 protected override void Dispose ( bool disposing ) { if ( disposing ) { if ( components != null ) { components.Dispose ( ) ; } } base.Dispose ( disposing ) ; } private void InitializeComponent ( ) { label1 = new Label ( ) ; button2 = new Button ( ) ; button1 = new Button ( ) ; ListBox1 = new ListBox ( ) ; textBox1 = new TextBox ( ) ; SuspendLayout ( ) ; label1.Location = new Point ( 8 , 168 ) ; label1.Name = "label1" ; label1.Size = new Size ( 120 , 23 ) ; label1.TabIndex = 3 ; label1.Text = "往客户端反馈信息:" ; //同样的方式设置其他控件,这里略去  this.Controls.Add ( button1 ) ; this.Controls.Add ( textBox1 ) ; this.Controls.Add ( label1 ) ; this.Controls.Add ( button2 ) ; this.Controls.Add ( ListBox1 ) ; this.MaximizeBox = false ; this.MinimizeBox = false ; this.Name = "Form1" ; this.Text = "C#的网络编程服务器端!" ; this.Closed = new System.EventHandler ( this.Form1_Closed ) ; this.ResumeLayout ( false ) ;  } private void Listen ( ) { //创建一个 tcpListener 对象,此对象主要是对给定端口迚行侦听 tcpListener = new TcpListener ( 1234 ) ; //开始侦听 tcpListener.Start ( ) ; //返回可以用以处理连接的 Socket 实例 socketForClient = tcpListener.AcceptSocket ( ) ; try { //如果返回值是"true",则产生的套节字已经接受来自进方的连接请求 if ( socketForClient.Connected ) { ListBox1.Items.Add ( "已经和客户端成功连接!" ) ; while ( true ) { //创建 networkStream 对象通过网络套节字来接受和发送数据 networkStream = new NetworkStream ( socketForClient ) ; //从当前数据流中读取一行字符,返回值是字符串 streamReader = new StreamReader ( networkStream ) ; string msg = streamReader.ReadLine ( ) ; ListBox1.Items.Add ( "收到客户端信息:" msg ) ; streamWriter = new StreamWriter ( networkStream ) ; if ( textBox1.Text != "" ) { ListBox1.Items.Add ( "往客户端反馈信息:" textBox1.Text ) ; //往当前的数据流中写入一行字符串 streamWriter.WriteLine ( textBox1.Text ) ; //刷新当前数据流中的数据 streamWriter.Flush ( ) ; } } } } catch ( Exception ey ) { MessageBox.Show ( ey.ToString ( ) ) ; } } static void Main ( ) { Application.Run ( new Form1 ( ) ) ; }  private void button1_Click ( object sender , System.EventArgs e ) { ListBox1.Items .Add ( "服务已经启动!" ) ; _thread1 = new Thread ( new ThreadStart ( Listen ) ) ; _thread1.Start ( ) ;  }  private void button2_Click ( object sender , System.EventArgs e ) { //关闭线程和流 networkStream.Close ( ) ; streamReader.Close ( ) ; streamWriter.Close ( ) ; _thread1.Abort ( ) ; tcpListener.Stop ( ) ; socketForClient.Shutdown ( SocketShutdown.Both ) ; socketForClient.Close ( ) ; } private void Form1_Closed ( object sender , System.EventArgs e ) { //关闭线程和流 networkStream.Close ( ) ; streamReader.Close ( ) ; streamWriter.Close ( ) ; _thread1.Abort ( ) ; tcpListener.Stop ( ) ; socketForClient.Shutdown ( SocketShutdown.Both ) ; socketForClient.Close ( ) ; } }   四.客户端程序设计的关键步骤以及解决办法:   (1).连接到服务器端的指定端口:   我们采用的本地机既做服务器也做客户机,你可以通过修改 IP 地址来确定自己想要连接的服务器。我们在连接的时候采用了"TcpClient"类,此类是在较高的抽象级别(高于Socket 类)上面提供 TCP 服务。下面代码就是连接到本地机(端口为 1234),并获取响应流: //连接到服务器端口,在这里是选用本地机器作为服务器,你可以通过修改 IP 地址来改变服务器 try { myclient = new TcpClient ( "localhost" , 1234 ) ; } catch { MessageBox.Show ( "没有连接到服务器!" ) ; return ; } //创建 networkStream 对象通过网络套节字来接受和发送数据 networkStream = myclient.GetStream ( ) ; streamReader = new StreamReader ( networkStream ) ; streamWriter = new StreamWriter ( networkStream ) ;   (2).实现接受和发送数据:   在接受和发送数据上面,我们依然采用了"NetworkStream"类,因为对他迚行操作比较简单,具体实现发送和接受还是通过命名空间"System.IO"中"StreamReader"类ReadLine ( )方法和"StreamWriter"类的 WriteLine ( )方法。具体的实现方法如下: if ( textBox1.Text == "" ) { MessageBox.Show ( "请确定文本框为非空!" ) ; textBox1.Focus ( ) ; return ; } try { string s ; //往当前的数据流中写入一行字符串 streamWriter.WriteLine ( textBox1.Text ) ; //刷新当前数据流中的数据 streamWriter.Flush ( ) ; //从当前数据流中读取一行字符,返回值是字符串 s = streamReader.ReadLine ( ) ; ListBox1.Items.Add ( "读取服务器端发送内容:" s ) ; } catch ( Exception ee ) { MessageBox.Show ( "从服务器端读取数据出现错误,类型为:" ee.ToString ( ) ) ; }    (3).最后一步和服务器端是一样的,就是要关闭程序中创建的流,具体如下: streamReader.Close ( ) ; streamWriter.Close ( ) ; networkStream.Close ( ) ;   五.客户端的部分代码:   由于在客户端丌需要侦听网络,所以在调用上面没有程序阻塞情冴,所以在下面的代码中,我们没有使用到线程,这是和服务器端程序的一个区别的地方。总结上面的这些关键步骤,可以得到一个用 C#网络编程 完整的客户端程序(client.cs),具体如下: using System ; using System.Drawing ; using System.Collections ; using System.ComponentModel ; using System.Windows.Forms ; using System.Data ; using System.Net.Sockets ; using System.IO ; using System.Threading ; //导入程序中使用到的名字空间 public class Form1 : Form { private ListBox ListBox1 ; private Label label1 ; private TextBox textBox1 ; private Button button3 ; private NetworkStream networkStream ; private StreamReader streamReader ; private StreamWriter streamWriter ; TcpClient myclient ; private Label label2 ;  private System.ComponentModel.Container components = null ;  public Form1 ( ) { InitializeComponent ( ) ; } //清除程序中使用的各种资源 protected override void Dispose ( bool disposing ) { if ( disposing ) { if ( components != null ) { components.Dispose ( ) ; } } base.Dispose ( disposing ) ; } private void InitializeComponent ( ) { label1 = new Label ( ) ; button3 = new Button ( ) ; ListBox1 = new ListBox ( ) ; textBox1 = new TextBox ( ) ; label2 = new Label ( ) ; SuspendLayout ( ) ; label1.Location = new Point ( 8 , 168 ) ; label1.Name = "label1" ; label1.Size = new Size ( 56 , 23 ) ; label1.TabIndex = 3 ; label1.Text = "信息:" ; //同样方法设置其他控件 AutoScaleBaseSize = new Size ( 6 , 14 ) ; ClientSize = new Size ( 424 , 205 ) ; this.Controls.Add ( button3 ) ; this.Controls.Add ( textBox1 ) ; this.Controls.Add ( label1 ) ; this.Controls.Add ( label2 ) ; this.Controls.Add ( ListBox1 ) ; this.MaximizeBox = false ; this.MinimizeBox = false ; this.Name = "Form1" ; this.Text = "C#的网络编程客户器端!" ; this.Closed = new System.EventHandler ( this.Form1_Closed ) ; this.ResumeLayout ( false ) ; //连接到服务器端口,在这里是选用本地机器作为服务器,你可以通过修改 IP 地址来改变服务器 try { myclient = new TcpClient ( "localhost" , 1234 ) ; } catch { MessageBox.Show ( "没有连接到服务器!" ) ; return ; } //创建 networkStream 对象通过网络套节字来接受和发送数据 networkStream = myclient.GetStream ( ) ; streamReader = new StreamReader ( networkStream ) ; streamWriter = new StreamWriter ( networkStream ) ; } static void Main ( ) { Application.Run ( new Form1 ( ) ) ; }  private void button3_Click ( object sender , System.EventArgs e ) {  if ( textBox1.Text == "" ) { MessageBox.Show ( "请确定文本框为非空!" ) ; textBox1.Focus ( ) ; return ; } try { string s ; //往当前的数据流中写入一行字符串 streamWriter.WriteLine ( textBox1.Text ) ; //刷新当前数据流中的数据 streamWriter.Flush ( ) ; //从当前数据流中读取一行字符,返回值是字符串 s = streamReader.ReadLine ( ) ; ListBox1.Items.Add ( "读取服务器端发送内容:" s ) ; } catch ( Exception ee ) { MessageBox.Show ( "从服务器端读取数据出现错误,类型为:" ee.ToString ( ) ) ; } }  private void Form1_Closed ( object sender , System.EventArgs e ) { streamReader.Close ( ) ; streamWriter.Close ( ) ; networkStream.Close ( ) ;  } }   下图是编译上面二个程序后运行的界面:   图 01:C#编写网络程序运行界面    七.总结:   虽然在.Net FrameWrok SDK 中只为网络编程提供了二个命名空间,但这二个命名空间中的内容却是十分丰富的,C#利用这二个命名空间既可以实现同步和异步,也可以实现阻塞和非阻塞。本文通过用 C#编写一个网络上信息传输的程序,展现了其丰富的内容,由于篇幅所限,更深,更强大的功能还需要读者去实践、探索。 
    2014-07-07下载
    积分:1
  • log4net记录 winform程序 全局错误日志 例子源码
    log4net 全局错误
    2014-10-22下载
    积分:1
  • P+F r2000 sample
    R2000-UHD demo
    2020-02-20下载
    积分:1
  • C++_STL范例大全_教程C _STL samples
    C++_STL范例大全_教程C _STL samples
    2019-07-13下载
    积分:1
  • C#操作Access数据库源码
            基于SQL语句新建,添加,查找,等操作
    2015-01-30下载
    积分:1
  • C程序设计实例大全(220个详细程序源代码)
       ◎ 文件说明          本文件包括以下内容:          ※ 1、文件说明     ※ 2、源码操作说明     ※ 3、光盘目录清单       ◎ 源码操作说明    源代码使用方法是(以实例1为例):        将该实例的源码,比如实例1的1.c文件(可以在001目录下找到), 拷贝到tc编译器目录下,运行tc.exe,打开编译器,        按【F3】键或者“File->Open”菜单命令,打开1.c文件,        按【Ctrl F9】键,或者“Run->Run”菜单命令,编译运行该程序。      ◎ 光盘目录清单如下:第一部分  基础篇 001  第一个C程序 002  运行多个源文件 003  求整数之积 004  比较实数大小 005  字符的输出 006  显示变量所占字节数 007  自增/自减运算 008  数列求和 009  乘法口诀表 010  猜数字游戏 011  模拟ATM(自动柜员机)界面 012  用一维数组统计学生成绩 013  用二维数组实现矩阵转置 014  求解二维数组的最大/最小元素 015  利用数组求前n个质数 016  编制万年历 017  对数组元素排序 018  任意进制数的转换 019  判断回文数 020  求数组前n元素之和 021  求解钢材切割的最佳订单 022  通过指针比较整数大小 023  指向数组的指针 024  寻找指定元素的指针 025  寻找相同元素的指针 026  阿拉伯数字转换为罗马数字 027  字符替换 028  从键盘读入实数 029  字符行排版 030  字符排列 031  判断字符串是否回文 032  通讯录的输入输出 033  扑克牌的结构表示034  用“结构”统计学生成绩 035  报数游戏 036  模拟社会关系 037  统计文件的字符数 038  同时显示两个文件的内容 039  简单的文本编辑器 040  文件的字数统计程序 041  学生成绩管理程序  第二部分  数据结构篇 042  插入排序 043  希尔排序 044  冒泡排序 045  快速排序 046  选择排序 047  堆排序 048  归并排序 049  基数排序 050  二叉搜索树操作 051  二项式系数递归 052  背包问题 053  顺序表插入和删除 054  链表操作(1) 055  链表操作(2) 056  单链表就地逆置 057  运动会分数统计 058  双链表 059  约瑟夫环 060  记录个人资料 061  二叉树遍利 062  浮点数转换为字符串 063  汉诺塔问题 064  哈夫曼编码 065  图的深度优先遍利 066  图的广度优先遍利067  求解最优交通路径 068  八皇后问题069  骑士巡游 070  用栈设置密码 071  魔王语言翻译 072  火车车厢重排 073  队列实例 074  K阶斐波那契序列  第三部分  数值计算与趣味数学篇 075  绘制余弦曲线和直线的迭加076  计算高次方数的尾数 077  打鱼还是晒网 078  怎样存钱以获取最大利息 079  阿姆斯特朗数 080  亲密数 081  自守数 082  具有abcd=(ab cd)2性质的数 083  验证歌德巴赫猜想084  素数幻方 085  百钱百鸡问题 086  爱因斯坦的数学题 087  三色球问题088  马克思手稿中的数学题 089  配对新郎和新娘 090  约瑟夫问题091  邮票组合 092  分糖果 093  波瓦松的分酒趣题 094  求π的近似值 095  奇数平方的有趣性质096  角谷猜想 097  四方定理 098  卡布列克常数 099  尼科彻斯定理 100  扑克牌自动发牌 101  常胜将军 102  搬山游戏103  兔子产子(菲波那契数列) 104  数字移动 105  多项式乘法 106  产生随机数 107  堆栈四则运算 108  递归整数四则运算 109  复平面作图 110  绘制彩色抛物线 111  绘制正态分布曲线 112  求解非线性方程 113  实矩阵乘法运算114  求解线性方程 115  n阶方阵求逆 116  复矩阵乘法 117  求定积分 118  求满足特异条件的数列 119  超长正整数的加法  第四部分  图形篇 120  绘制直线 121  绘制圆 122  绘制圆弧 123  绘制椭圆124  设置背景色和前景色125  设置线条类型 126  设置填充类型和填充颜色 127  图形文本的输出 128  金刚石图案129  飘带图案 130  圆环图案 131  肾形图案 132  心脏形图案 133  渔网图案 134  沙丘图案135  设置图形方式下的文本类型 136  绘制正多边形 137  正六边形螺旋图案 138  正方形螺旋拼块图案139  图形法绘制圆 140  递归法绘制三角形图案 141  图形法绘制椭圆 142  抛物样条曲线 143  Mandelbrot分形图案144  绘制布朗运动曲线 145  艺术清屏 146  矩形区域的颜色填充 147  VGA256色模式编程 148  绘制蓝天图案 149  屏幕检测程序 150  运动的小车动画 151  动态显示位图 152  利用图形页实现动画153  图形时钟 154  音乐动画  第五部分  系统篇 155  读取DOS系统中的国家信息 156  修改环境变量 157  显示系统文件表 158  显示目录内容 159  读取磁盘文件 160  删除目录树 161  定义文本模式 162  设计立体窗口 163  彩色弹出菜单 164  读取CMOS信息 165  获取BIOS设备列表 166  锁住硬盘 167  备份/恢复硬盘分区表 168  设计口令程序 169  程序自我保护 第六部分  常见试题解答篇 170  水果拼盘 171  小孩吃梨 172  删除字符串中的特定字符 173  求解符号方程 174  计算标准差 175  求取符合特定要求的素数 176  统计符合特定条件的数 177  字符串倒置 178  部分排序 179  产品销售记录处理 180  特定要求的字符编码 181  求解三角方程 182  新完全平方数 183  三重回文数 184  奇数方差 185  统计选票 186  同时整除 187  字符左右排序 188  符号算式求解 189  数字移位 190  统计最高成绩 191  比较字符串长度 192  合并整数 193  矩阵逆置194  删除指定的字符195  括号匹配 196  字符串逆置 197  SIX/NINE问题 198  单词个数统计 199  方差运算 200  级数运算 201  输出素数 202  素数题 203  序列排序 204  整数各位数字排序 205  字符串字母移位 206  Fibonacc数列  第七部分  游戏篇 207  商人过河游戏 208  吃数游戏 209  解救人质游戏 210  打字训练游戏 211  双人竞走游戏 212  迷宫探险游戏 213  迷你撞球游戏214  模拟扫雷游戏 215  推箱子游戏 216  五子棋游戏  第八部分  综合实例篇 217  综合CAD系统 218  功能强大的文本编辑器219  图书管理系统220  进销存管理系统//========= End of the file. 文件内容结束 ===============\ 
    2020-05-26下载
    积分:1
  • 多选的combox
    多选的combox
    2015-03-20下载
    积分:1
  • webapi实现文件上传下载
    实现文件数据上传下载,更加快速实现。
    2020-05-14下载
    积分:1
  • winform 实现鼠标拖放图片, 随鼠标移动的图像实例 附完整源码
    鼠标拖动图片,然后图片随着鼠标移动,放开鼠标后 图片则停留在新位置,如下图效果
    2013-05-07下载
    积分:1
  • 696516资源总数
  • 106571会员总数
  • 2今日下载