转载请标明出处,原文地址: 一、英语 1、请将以下短文翻译成英文 电子商务是基于计算机技术、网络技术和远程通信技术,实现买卖双方不谋面地进行各种商贸活动,比如产品和服务的买卖。电子商务的蓬勃发展离不开当今人们的网购热情,根据一项网购习惯的调查显示,84%的中国内陆调查对象表示他们上网的主要目的就是网购。网上购物有很多优点,购物者足不出户就可以货比三家,买到心仪的商品。 二、基础知识(选择题) 1、下面程序的输出是:() char s[] = "Welcometohengtian"; printf("%s%d",s+7,sizeof(s)); A、Welcometohengtian17B、tohengtian18C、tohengtian17D、Welcometohengtian182、在操作系统中最常用来被作为存储文件关系的数据结构是() A、链表 B、数组 C、堆栈 D、树 3、下列哪一项不属于应用程序在操作系统中的内存分配方式()A、队列上分配 B、静态存储区分配 C、栈上分配 D、堆上分配 4、下列的排序算法中,初始数据集的排列顺序对算法的性能无影响的是() A、插入排序 B、堆排序 C、冒泡排序 D、快速排序 5、下列关于一个类的静态成员的描述中,不正确的是() A、该类的对象共享其静态成员变量的值 B、静态成员变量可被该类的所有方法访问 C、该类的静态方法只能访问该类的静态成员变量D、该类的静态数据成员变量的值不可修改 6、操作系统中,以下哪种方式无法实现进程同步? A、Ctitical Section B、Mutex C、Semaphore D、Event 7、在一个具有n个顶点的无向图中,要连通全部顶点至少需要()条边。 A、N B、N-1 C、N+1 D、N/2 8、下面哪一种操作不是 stack 的基本操作?() A、入栈 B、出栈 C、检查是否为空 D、排序栈中元素 9、在带有头结点的单链表HL中,要向表头插入一个由指针p指向的结点,则执行()A、p->next = HL->next ; HL->next = p ; B、p->next = HL ; HL = p ; C、p->next = HL ; p = HL ; D、HL = p ; p->next = HL ; 10、对于线性表(7,34,55,25,64,46,20,10)进行散列存储时,若选用H(K) = K%9 作为散列函数,则散列地址为1的元素有()个。A、4 B、5 C、2 D、3 11、下列代码运行后,result的值是多少() List<int> ints = new List<int>(){1,2,3,4,5,6,7,8,9,10,11,12,13,14,15}; var query = from i in ints where i%2 == 0 || i%3 == 0 select i; ints.RemoveAt(1); int result = query.Count(); A、7 B、8 C、9 D、10 12、下面这段代码,当T分别是引用类型和值类型的时候,分别产生了多少个T对象() T t = new T(); Func(t); Func定义如下: public void Func(T t) { } A、1 1 B、2 1 C、2 2 D、1 2 13、在.NET中,char类型占几个字节() A、1 B、2 C、4 D、运行时根据平台确定 14、下列哪个是C#中运行时常量的定义方法()A、public static readonly int Port = 47896 B、public const int Port = 47896 C、public static const int Port = 47896 D、public static sealed int Port = 47896 15、在C#中类的默认访问级别是什么(该类不是内部类)()A、internal B、public C、protected internal D、private 16、下面的代码发生了多少次装箱操作() String.Format("{0}:{1} , {2} , {3}}" , 2012 , 1.ToString() , "2" , DateTime.Now); A、1 B、2 C、3 D、4 17、下面代码的输出结果是()
try{ try { int i = 0; object value = 1/i; } catch(NullReferenceException Exception) { Console.Write("Null Re Ex"); } finally { Console.Write("Cleanup "); }}catch{ Console.Write("Generic catch ");}
A、Null Re Ex Cleanup Generic catch
B、Null Re Ex Cleanup C、Cleanup Generic catch D、Generic catch Cleanup 18、下面这段代码的输出结果是() B b = new B(); 类定义如下:class B : A{ static B() { Console.Write("B static "); } public B() { Console.Write("B base "); }};class A{ static A() { Console.Write("A static "); } public A() { Console.Write("A base "); }};
A、A static A base B static B base
B、B static B base A static A base C、B static A static A base B base D、A static B static B base A base 19、下面代码的输出结果是() object obj = "2.0"; Console.Write(string.Format("{0:0.00}",obj)); A、2 B、2.00 C、2.0 D、空(无输出) 20、下面代码运行后,对象c的items列表有几个值()class C{ static void Main() { C c = new C(); c.Func(c.items); } private List items = new List (); private void Func(List items) { items.Add(1); this.items.Add(2); items = new List (); items.Add(1); this.items.Add(2); }};
A、1 B、2 C、3 D、4 21、以下哪个表达式是不合法的() A、 String x="Hello" ; int y = 9; x+=y; B、String x="Hello" ; int y = 9; if(x==y) { } C、String x="Hello" ; int y = 9; x=x+y; D、String x3=null ; boolean y3=(x3!=null) && (x3.length()>0); 22、下面程序的运行结果是()
public class MathTest{ int add(int a , int b) { int result; result = a + b; return result; } public static void main(String[] args) { MathTest mathTest = new MathTest(); int i = 2; int j = 3; System.out.println(mathTest.add(i++,++j)); }}
A、5 B、6 C、7 D、局部变量没有初始化,程序有错
23、下面关于new关键字的表述错误的是() A、new关键字在生成一个对象时会为对象开辟内存空间 B、new关键字在生成一个对象时会调用类的构造方法 C、new关键字在生成一个对象时会将生成的对象的地址返回 D、Java中只能通过new关键字来生成一个对象 24、下面程序的运行结果是()public class Person{ boolean flag; int age = 25; static String name = "zhangsan"; public static void main(String[] args) { Person person1 = new Person(); Person person2 = new Person(); person1.age = 26; person1.name = "lisi"; if(person1.flag) { person2 = person1; System.out.println(person1.name + " : " + person1.age); System.out.println(person2.name + " : " + person2.age); } else { System.out.println(person1.name + " : " + person1.age); System.out.println(person2.name + " : " + person2.age); } }}
A、lisi : 26 lisi : 25 B、lisi : 26 zhangsan : 25 C、zhangsan : 26 lisi : 25 D、程序有错误
三、编程题 1、已知memcpy的函数为: void* memcpy(void *dest , const void* src , size_t count)其中dest是目的指针,src是源指针。不调用c++/c的memcpy库函数,请编写memcpy。void* memcpy(void *dest , const void* src , size_t count){ assert( (dest != NULL) && (src != NULL)); //安全检查 assert(count > 0); char* psrc = (char *)src; char* pdest = (char *)dest; while(count--) { *pdest++ = *psrc++; } return dest;}
四、附加题 1、用适当的方法统计出下面字符串中出现次数最多的字符,已知字符串为: Welcome to our company Software Engineer Recruitment Examination.
char MostTimes(char* str){ int i , max , hash[256]; char ch; for(i = 0 ; i < 256 ; ++i) hash[i] = 0; for(i = 0 ; str[i] != '\0' ; ++i) { if((str[i] >= 'a' && str[i] <= 'z') || (str[i] >= 'A' && str[i] <= 'Z')) ++hash[str[i]]; } for(i = 0 , max = 0; i < 256 ; ++i) { if(hash[i] > max) { max = hash[i]; ch = i; } } return ch;}
2、已知有一个object类型的输入obj,我们不清楚他到底是什么内容,请使用C#写一个函数将其转化为int类型。基本的函数签名可以是 int ParseInt(object obj),但不仅限于此。
转载请标明出处,原文地址: 代码