阶段测验89
考试内容:
变量、常量、数据类型、运算符、顺序结构、选择结构、循环结构、数组
一、选择题(1’*10=10’) +7’
1、下列那种语句是面向过程的编程语言?(A)
A. C语言
B. C++
C. C#
D. Java
2、下列哪种不是计算机编程语言?(B)
A. 机器语言
B. 自然语言
C. 汇编语言
D. 高级语言
3、下面的自定义变量中错误的是(A)
A.int
https://www.wendangku.net/doc/223044953.html,
C.P_list
D.S_21days
4、选择下面程序的运行结果(A)
Static void Main(string[] args)
{
Console.WriteLine(1+2);
Console.WriteLine(“1”+”2”);
}
A.3 12
B.3 3
C.12 12
D.12 3
5、下面程序段的运行结果是(B)
int i=5;
goto myLabel;
Console.WriteLine("学习C#中...");
myLabel: Console.WriteLine(i);
A. 学习C#中...
B. 5
C. 学习C#中...
D. null
5
6. 选择下面程序的运行结果(A)。
for(int i=1;i<=10;i++)
{
if(i<8) continue;
Console.Write(i);
}
A. 8910
B. 1234567
C. 8、9、10
D. 没有任何输出
7、. 选择下面程序的运行结果(C)
int[] a=new int[5];
for(int i=1;i<5;i++)
{
a[i]=i;
}
foreach(int s in a)
Console.Write(s);
A. 12345
B. 00000
C. 01234
D. 12340
8、下列数组的使用正确的是(C)
A. int[] a=new int[5];
a[5]=10;
B. int[] a;
a={1,2,3,4,5};
C. int[] a;
a=new int[5];
D. int[] a=new int[5];
a={0,1,2,3,4,5};
9、下列哪个数代表十六进制整数?(A)
A)0xA6 B)0xG5 C)1840 D)-1E3
10、在嵌套使用if语句时,C#语言规定else总是_ (C)___
A)和之前与其具有相同缩进位置的if配对
B)和之前与其最近的if配对
C)和之前与其最近的未配对的if配对
D)和之前的第一个if配对
二、填空题(每空1分,1’*20=20’) +18’
1、___using____ system;
____namespase___ Example
{
__class___ Text
{
static void ____Main__(string[] args)
{
____console_____ .WriteLine(“Welcome!”);
}
}
}
2、单行注释我们通常用 //,而多行注释我们用/* */ 。
3、数组中元素的索引是从__0__开始的。
4、C#中描述循环结构的四种语句结构分别是_while______ 、___do
while_____ 、 __for______ 、_____foreach_____
5、若a是整型变量,且a的初值为6,则执行表达式a+=a*a后a的值为__42___
6、字母’a ’的AscII值是___97_____ ,字母’A ’的AscII值是___65_____ , 字母’0 ’的AscII值是____48____。
7、多分支选择Switch语句中的四个基本关键字分别是____Switch ____ 、____ case ____ 、___ break _____ 、___default _____ 。
三、问答题(5’*4=20’) +16’
1、简述C#中,变量的命名规则。+1’
不能是关键字,不能以字母开头,严格区分大小写,使用关键字@放开头
2、简述while语句和do...while语句的区别。+5’
While 先判断在进入循环,do while是先进入循环体在判断
3、C#中数据类型可分为值类型和引用类型,请根据你的理解简述它们的概念和区别,并分别列举出所学过的属于值类型和引用类型的具体的数据类型。+5’
值类型;就是直接存其值,储存在栈里。引用类型;储存对值的引用,储存在堆上。
值类型有;整型,浮点型,decimal类型,bool类型,字符类型。
引用的有;Object类型,String类型,数组。
4、请简述break和continue的用法和区别。+5’
Break 是跳出循环体
Continue 是跳出本次循环进入下次环
四、程序题(10’*5=50’,自行选择5道题完成) +48’
1、求n!(n的阶层,若n=5,则5!=5*4*3*2*1)
int sum=1,n;
n=console.convert.ToInt32(Console.ReadLine());
for(int i=1;i<=n;i++)
{ i*=n
}
Console.WriteLine(i);
2、求1~10之间的奇数和。+10’
int num=0;
for (int i = 1; i <= 10; i++)
{
if (i % 2 != 0)
num += i;
}
Console.WriteLine(num);
3. 将任意三个整数按从大到小的顺序输出。+8’
int a, b, c;
a = Convert.ToInt32(Console.ReadLine());
b = Convert.ToInt32(Console.ReadLine());
c = Convert.ToInt32(Console.ReadLine());
if (a>b)
{
if (b > c)
Console.WriteLine("{0}>{1}>{2}",a , b , c);
else
{
if (c > a)
Console.WriteLine("{0}>{1}>{2}",c , a , b);
else
{
Console.WriteLine("{0}>{1}>{2}",a,c,b);
}
}
}
else
{
if (a > c)
Console.WriteLine("{0}>{1}>{2}",b ,a,c);
else
{
if (b > c)
{
Console.WriteLine("{0}<{1}<{2}",a ,c , b);
}
else
{
Console.WriteLine("{0}<{1}<{2}",a,b,c);
}
}
}
4. 从键盘输入一个年份,判断是否是闰年。
5. 输出100到999之间所有的水仙花数。(它的每个位上的数字的3 次幂之和等于它本身。例如:153=1*1*1+5*5*5+3*3*3)
For(int i=100;i<1000;i++)
{
Int a,b,c;
a=i/100;
b=i/10%10;
c=i%10;
if(a*a*a+b*b*b+c*c*c= =i)
{
Console.WriteLine(“{0}是水仙花”,i);
}
}
6. 任意输入10个整型数据,找出其中最大值. +10’
int[] c = new int [10];
Console.WriteLine("请输入10个整数");
for (int i = 0; i < 10; i++)
{
c[i] = Convert.ToInt32(Console.ReadLine());
}
int num = c[0];
for (int i = 1; i < 10; i++)
{
if (num < c[i])
num = c[i];
}
Console.WriteLine(num);
7. 从键盘中输入10同学的成绩,统计出平均成绩,并输出高于平均分的人数和成绩。+10’
double [] c = new double [10];
for (int i = 0; i < 10; i++)
{
c[i] = Convert.ToDouble(Console.ReadLine());
}
double num =0,ping;
for (int i = 0; i < 10; i++)
{
num += c[i];
}
ping = num / 10;
int j=0;
for (int i = 0; i < 10; i++)
{
if (c[i] > ping)
{
Console.WriteLine(c[i]);
j++;
}
}
Console.WriteLine("高出平均成绩的有{0}人", j);
Console.WriteLine("平均成绩为{0}",ping);
8、编写程序,输出1到100之间能被3整除但不能被5整除的整数。+10’
int a = 100;
for (; a > 0 && a <= 100; a--)
{
if (a % 3 == 0)
if (a % 5 != 0)
Console.WriteLine(a);
continue;
}