您好,欢迎访问三七文档
《C#程序设计》练习题一.选择题(25分)1.C#中每个int类型的变量占用___A____个字节的内存。A.1B.2C.4D.82.在C#中,表示一个字符串的变量应使用以下哪条语句定义?BA.CStringstr;B.Stringstr;C.DimstrasstringD.char*str;3.数组的下标从(B)开始A.–1B.0C.1D.24.C#中,新建一字符串变量str,并将字符串Tom'sLivingRoom保存到串中,则应该使用下列哪条语句?AA.stringstr=Tom\'sLivingRoom;B.stringstr=‘Tom'sLivingRoom’;C.stringstr(Tom'sLivingRoom);D.stringstr(TomsLivingRoom);5.下列语句创建了多少个string对象?Dstring[,]strArray=newstring[3][4];A.0B.3C.4D.126.WindowsForm应用程序中,要求下压按钮控件Button1有以下特性:正常情况下,该按钮是扁平的,当鼠标指针移动到它上面时,按钮升高。那么,在程序中,属性Button1.FlatStyle的值应设定为:BA.System.Windows.Forms.FlatStyle.FlatB.System.Windows.Forms.FlatStyle.PopupC.System.Windows.Forms.FlatStyle.StandardD.System.Windows.Forms.FlatStyle.System7.关于C#程序的书写,下列不正确的说法是__D__。A.区分大小写B.一行可以写多条语句C.一条语句可写成多行D.一个类中只能有一个Main()方法,因此多个类中可以有多个Main()方法8.在C#语言中,下列能够作为变量名的是_C___。A.ifB.3abC.a_3bD.a-bc9.在C#语言中,下面的运算符中,优先级最高的是__B__。A.%B.++C./=D.10.能正确表示逻辑关系“a=10或a=0”的C#语言表达式是_D___。A.a=10ora=0B.a=10|a=0C.a=10&&a=0D.a=10||a=011.以下程序的输出结果是__C__。Usingsystem;ClassExample1{PublicStaticvoidmain(){Inta=5,b=4,c=6,d;d=ab?(ac?a:c):b;Console.Writeline(d);}}A.5B.4C.6D.不确定12.要看到程序运行的结果,必须按下列哪个组合键(A)。A.Ctrl+F5B.Ctrl+F9C.Alt+F5D.Alt+F13...有如下程序Usingsystem;ClassExample1{PublicStaticvoidmain(){Intx=1,a=0,b=0;Switch(x){Case0:b++,break;Case1:a++,break;Case2:a++,b++,break;}Console.Writeline(“a={0},b={1}”,a,b);}}的输出结果是CA.a=2,b=1B.a=1,b=1C.a=1,b=0D.a=2,b=214.以下叙述正确的是__D。A.do….while语句构成的循环不能用其他语句构成的循环来代替B.do….while语句构成的循环只能用break语句退出C.用do….while语句构成的循环,在while后的表达式为true时结束循环D.用do….while语句构成的循环,在while后的表达式应为关系表达式或逻辑表达式15.以下关于for循环的说法不正确的是___A_。A.for循环只能用于循环次数已经确定的情况B.for循环是先判定表达式,后执行循环体语句C.for循环中,可以用break语句跳出循环体D.for循环体语句中,可以包含多条语句,但要用花括号括起来。16.若有定义:int[]x=newint[10]{0,2,4,4,5,6,7,8,9,10};则数组x在内存中所占字节数是__C__。A.6B.20C.40D.8017.有定义语句:int[,]a=newint[5,6];则下列正确的数组元素的引用是__C__。A.a(3,4)B.a(3)(4)C.a[3][4]D.a[3,4]18.下列的数组定义语句,不正确的是_C___。A.int[]a=newint[5]{1,2,3,4,5}B.int[,]a=newint[3][4]C.int[][]a=newint[3][];D.int[]a={1,2,3,4};19.要使文本框控件能够显示多行而且能够自动换行,应设置它的______B___属性。A.MaxLength和MultlineB.Multlineh和WordWrapC.PassWordChar和MultlineD.MaxLength和WordWra20.c#源程序文件的默认扩展名为___C__。A.cppB.exeC.csD.lik21.下面有关for语句的描述有错误的是___D_。A.使用for语句时,可以省略其中的某个或多个表达式,但不能同时省略全部3个表达式B.在省略for语句的某个表达式时,如果该表达式后面原来带有分号,则一定要保留它所带的分号C.在for语句表达式中,可以直接定义循环变量,以简化代码D.for语句的表达式可以全部省略22.下面有关break,continue和goto语句描述正确的是__D__。A.break语句和continue语句都是用于终止当前整个循环B.使用break语句可以一次跳出多重循环C.使用语句可以方便地跳出多重循环,因而编程时应尽可能多使用goto语句D.goto语句必须和标识符配合使用,break和continue语句则不然23.下面是几条动态初始化一维数组的语句,指出其中正确的是__B__。A.int[]arr2=newint[];没有设置长度B.int[]arr2=newint[4];C.int[]arr2=newint[i]{6,5,1,2,3};【】不能是变量D.int[]arr2=newint[4]{6,5,1,2,3};24.下面对Write()和WriteLine()方法的描述,哪些是正确的__A__。A.WriteLine()方法在输出字符串的后面添加换行符B.使用Write()输出字符串时,光标将会位于字符串的后面C.使用Write()和WriteLine()方法输出数值变量时,必须要先把数值变量转换成字符串D.使用不带参数的WriteLine()方法时,将不会产生任何输出25.设a=6,b=4,则表达式b*a+3的值为(C)A.3B.18C.27D.3626.标识符的名字不能使用c#语言中的关键字,如果要使用,则应使用(C)字符作为前缀:A.’B.任意字符C.@D./二、填空题(20分)1.结构化的程序设计的3种基本结构是(顺序),(循环),(选择)。2.在C#程序中,程序的执行总是从(Main())方法开始的。3.、在C#中,进行注释有两种方法:使用“//”和使用“/**/“符号对,其中(“//”)只能进行单行注释。4.数组定义与赋值语句如下:int[]a={1,2,3,4,5};则a[2]的值是(3)。5.下列程序段执行后,a[4]的值为(4)。int[]a={1,2,3,4,5};a[4]=a[a[2]];6.8/3的结果是:(2)7.具有n+1个元素的数组的索引是0--(n)8.在调用一个方法的过程又调用另一个方法,称为(函数调用),一个方法直接或间接的调用它本身,称为(递归调用)。三、程序分析题1.运行以下程序段,结果是(150)doublek,t;t=0;for(intn=1;n=10;n++){For(k=1;k=5;k++)t=t+k;}Console.WriteLine(t);2.运行以下程序段,结果是(总和为25)usingSystem;classSumw{staticvoidMain(){inti=1,sum=0;while(i=10){sum+=i;i+=2;}Textbox1.text=“总和为:”+sum.ToString();}}3.以下程序运行后,变量a的值为(10)inta=100;for(intj=10;j0;j-=2)a-=j*3;4.以下程序运行后,控件textBox1显示内容为(1112131416171819)inti;For(i=10;i=20;i++){if(i%5==0){Continue;}textBox1.text+=i.ToString()+”“;}5.给出下列程序的运行结果:(5050)usingSystemClassDome{StaticvoidMain(){intn=1,sum=0;while(n101){sum+=n;n++;}Console.WriteLine(“1+2+3+…+100=”+sum);}}6.给出下列程序的运行结果:(123456)StaticvoidMain(){int[,]twoarray=newint[2,3]{{1,2,3},{4,5,6}};console.writeline(“***矩阵***”);for(inti=0;iItwoarray.GetLength(0);i++){for(intj=0;jtwoarray.GetLength(1);j++){Console.Write(twoarray[i,j]+”“);}Console.WriteLine();}}7.给出下列程序的运行结果:(15)usingSystem;publicclasstest{publicintnum;publictest(inti){this.num=i+5;}StaticvoidMain(){testclassone=newtest(10);intx=classone.num;Console.WriteLine(x);}}8.给出下列程序的运行结果:(1,1)StaticvoidMain(){int[,]a=newint[3,3];a[0,0]=1;for(inti=1;i3;i++){a[i,0]=1;a[i,i]=1;for(intj=1;ji;j++)a[i,j]=a[i-1,j-1]+a[i-1,j];}for(inti=0;i3;i++){for(intj=0;j=i;j++)Console.Write(“{0}\t”,a[i,j]);Console.WriteLine(“{0}\t”,a[i,j]);}}四,程序完善题,如:1.publicvoidMain(){boolb1=false,b2=true;console.WriteLine(“b1={0}b2={1}“,b1,b2);}2.publicvoidMain(){intjshu=0,oshu=0;int[]a=newint[]{0,4,7,8,9,10,14,15,19,20,50,48,55};foreach(intkina){if(K%2==0)oshu++;elsejshu++;}console.WriteLine(“{0}个奇数,{1}个偶数“,jshu,oshu);}3.StaticvoidMain(){charch;stringstr;console.WriteLine(“请输入任意长度的字母并按回车键:“);ch=Convert.ToChar(Console.ReadLine().Substring(0,1));//getacharstr=Console.ReadLine();//getastringconsole.WriteLine(“您输入的第一个字母是:”+ch);console.WriteLine(“您输入的字符串是:”+str);}五、简答题:(考一些重要的概念,如)1.简述命名空间C#中的类是利用命名空间来组织的。命名空间提供了一种从逻辑
本文标题:C#期末考练习题
链接地址:https://www.777doc.com/doc-2531217 .html