1. 列出3种连接字符串的方法, 并分析比较其效率. (C#) (3分)
答案:
2. 值类型和引用类型的区别?写出C#的样例代码。(3分)
答案:
3. 如何判断一个控件输入的是否是一个金额格式的数字。如果输入的是double型的变量或者int型的变量或者string型,比如10321.5,比如$122235401.21644,作为货币的值如何按各个不同国家的习惯来自动转化。比如美国用$10,321.50和$122,235,401.22而在英国则为£10  321.50和£122  235  401.22 (4分)
答案:
4. 简述.NET Framework 提供了哪些序列化技术, 并比较其使用场合. (3’)
答案:
5. C# 代码实现, 生成jpg缩略图(6分) /// <summary>
///  生成高质量缩略图
  /// </summary>
/// <param name="strSourceFileName">原文件名 (*.bmp / *. Jpg / *.gif)</param>
/// <param name="strDesFileName">目标文件名 (*.jpg)</param>
/// <param name="intWidth">缩略图宽度</param>
/// <param name="intHeight">缩略图高度</param>
public static void MiniImage (string strSourceFileName,string strDesFileName,int intWidth,int intHeight)
{
// 答案:
}
6.  写出下列函数的函数体. (6分)
/// <summary>
///截取中间字符串 
/// Sample : GetMiddleString (”ohohmylordlordaa”, ”oh”, ”lord”) 返回值为”ohmy”
/// </summary>
/// <param name="myResponse">源字符串</param>
/// <param name="strFirstST">第一个起始字符串(不一定在原字符串的开头)</param>
/// <param name="strFirstEN">第一个结束字符串(不一定在原字符串的末尾)</param>
/// <returns>中间字符串</returns>
public static string GetMiddleString (string myResponse, string strFirstST, string strFirstEN)
{
// 答案:…
}
 小第没接触过C3# 面试的开卷考  希望尽量帮我做做

解决方案 »

  1.   

    1.SQL我常用一个。呵呵。还有一种是信任链接,
    SQLSERVER链接 server=(local);uid=sa;pwd=123;database=pubs
    SQL链接,server=(local)表示主机是本机,非本机可以填写IP地址,UID=SA 数据库用户名;PWD=123是密码,database=pubs 链接的数据库是PUBS
    Access链接 provider=microsoft.jet.oledb.4.0;data source= 数据库地址和名称
    第二种 driver={microsoft access driver (*.mdb)};dbq=数据库地址
    常用的是第一种。2.
    值类型: 
    单元直接存放“有效值” 
    如: 
    int a=3; 
    则a内存单元就放的是3 引用类型: 
    单元放的是另外一个对象的引用(地址) 
    如: 
    Form form1=new Form(); 
    就是说,在内存中开辟了一个对象new Form(),form1内存单元存放的是那个对象的地址,并非对象本身函数声明时用 public void getstring(string str,ref TextBox txt)
    第一个参数是值类型,第二个是引用类型。3、
    文本
    如果希望实数被视为 decimal 类型,请使用后缀 m 或 M,例如:decimal myMoney = 300.5m;
    如果没有后缀 m,该数字将被视为 double,从而导致编译器错误。转换
    整型被隐式转换为 decimal,其计算结果为 decimal。因此,可以用整数初始化十进制变量而不使用后缀,例如:decimal myMoney = 300;
    在浮点型和 decimal 类型之间不存在隐式转换;因此,必须使用显式转换在这两种类型之间进行转换。例如:decimal myMoney = 99.9m;
    double x = (double) myMoney;
    myMoney = (decimal) x;
    还可以在同一表达式中兼用 decimal 和数值整型。但是,不进行显式转换即兼用 decimal 和浮点型将导致编译错误。
    抛出异常判断类型即可作为货币的值如何按各个不同国家的习惯来输出。比如美国用$10,321.50和$122,235,401.22而在英国则为£10    321.50和£122    235    401.22
    答案:
    先要设置国家
    System.Globalization.CultureInfo MyCulture = new System.Globalization.CultureInfo("en-US");//美国货币类型//System.Globalization.CultureInfo MyCulture = new System.Globalization.CultureInfo("en-GB");英国货币类型
    decimal y = 9999999999999999999999999999m;
    string str = String.Format(MyCulture,"My amount = {0:c}",y);
      

  2.   

    楼上...我以为,第一题的意思是如何连接字符串...比如string+string,或者stringbuild.append()....你貌似想太多了.
      

  3.   

    第4题可以到VS.net的帮助文档或者msdn copy大段标准答案.
      

  4.   

    4.序列化 太长了。给你地址自己看
    http://www.qostudy.org/pr/Article/aspnet/Framework/200605/16140.html
    5.缩略图
    public static void MiniImage (string strSourceFileName,string strDesFileName,int intWidth,int intHeight)
    {
    System.Drawing.Image img=System.Drawing.Image.FromFile(strSourceFilename);//原图
    System.Drawing.Image.GetThumbnailImageAbort mycallback=new System.Drawing.Image.GetThumbnailImageAbort(CallBack);//回调方法,确定何时提前取消执行
    int oldw=img.Width ;//原图宽度
    int oldh=img.Height ;//原图高度
    int neww,newh;//缩略图宽高
    double w=oldw*1.0/intWidth;//宽
    double h=oldh*1.0/intHeight;//高
    double f = (h>w)? h:w; //如果高大于宽,返回高,否则返回宽
    if(f < 1.0)//如果返回的高或宽小于计算后的大小,直接返回
    {
    newh = oldh;
    neww = oldw;
    }
    else //否则创建缩略图
    {
    newh = (int)(oldh/f);
    neww = (int)(oldw/f);
    }
    System.Drawing.Image myThumbnail = img.GetThumbnailImage(neww, newh, mycallback, IntPtr.Zero);
    myThumbnail.Save(strDesFileName, System.Drawing.Imaging.ImageFormat.Jpeg); //保存缩略图
    img.Dispose();
    myThumbnail.Dispose();
    }
    private bool CallBack()
    {
    return false;
    }
      

  5.   

    6. public static string GetMiddleString (string myResponse, string strFirstST, string strFirstEN)
    {
    int i=myResponse.IndexOf(strFirstST);//取第一个位置
    string str=myResponse.Substring(i+strFirstST.Length);
                int j=str.IndexOf(strFirstEN);//后面的位置
    str=str.Substring(0,j);
    return str;
    }