程序设计基础练习题(全答案版)

程序设计基础练习题(全答案版)
程序设计基础练习题(全答案版)

《程序设计基础——C#.NET》练习

参考答案:

一、选择题

https://www.360docs.net/doc/273910553.html,的目的就是将____A____作为新一代操作系统的基础,对互联网的设计思想进行扩展。A.互联网 B. Windows C. C# D. 网络操作系统

2.假设变量x的值为10,要输出x值,下列正确的语句是__C__。

A.System.Console.writeline(“x”) B. System.Cosole.WriteLine(“x”)

C. System.Console.WriteLine(“x={0}”,x)

D. System.Console.WriteLine(“x={x}”)

3.要退出应用程序的执行,应执行下列的_A___语句。

A. Application.Exit();

B. Application.Exit;

C. Application.Close();

D. Application.Close;

4.关于C#程序的书写,下列不正确的说法是__D________。

A.区分大小写

B.一行可以写多条语句

C.一条语句可以写成多行

D.一个类中只能有一个Main()方法,因此多个类中可以有多个Main()方法

5. 在C#语言中,下列能够作为变量名的是__C__。

A.if B. 3ab C. b_3a D. a-bc

7. 能正确表示逻辑关系“a≥5或a≤0”的C#语言表达方式是__D__。

A.a>=5 or a<=0 B. a>=5|a<=0 C. a>=5&&a<=0 D. a>=5||a<=0

8. 以下程序的输出结果是___C_____。

A. 5

B. 4

C. 6

D. 不确定

9. If语句后面的表达式应该是__A___。

A.逻辑表达式 B. 条件表达式 C. 算术表达式 D. 任意表达式10.有如下程序:

该程序的输出结果是__A___。

A. a=0,b=1

B. a=1,b=1

C. a=1,b=0

D. a=2,b=2

11.以下叙述正确的是__D___。

A.do…while 语句构成的循环不能用其他语句构成的循环来代替

B.do…while语句构成的循环只能用break语句退出

C.用do…while语句构成的循环,在while后表达式为true时结束循环

D.用do…while语句构成的循环,在while后的表达式应为关系表达式或逻辑表达式12.以下关于for循环的说法不正确的是_A____。

A.For循环只能用于循环次数已经确定的情况

B.For循环是先判定表达式,后执行循环体语句

C.For循环中,可以用break语句跳出循环体

D.For循环体语句中,可以包含多条语句,但要用花括号括起来

13.假定int类型变量占用两个字节,若有定义:int[]x=new int[10]{0,1,2,3,4};,则数组x在内存中所占字节数是_A____。

A.10 B. 20 C. 40 D. 80

14.以下程序的输出结果是__B___。

15.有定义语句:int[,]a=new int [5,6],则下列正确的数组无素的引用是__D___。

A. a(4,5)

B. a(4)(5)

C. a[4][5]

D. a[4,5] 16.下列的数组定义语句,不正确的是_AB____。

A. int a[]=new int [5]{1,2,3,4,5};

B. int [,]a=new int a[3][4];

C. int [][]a=new int [3][];

D. int []a={1,2,3,4,};

四、程序设计题

要求:

1、下面所有程序设计题用控制台应用程序编写。

2、每道题目的项目名称为:你的姓名拼音+下划线+题序(例如张三同学第二题的项目名称

为:“zhangsan_2”),程序代码中的类名与项目名称相同。将项目保存到指定的文件夹内。

3、下面每一题运行结果窗口中显示的:

第一行格式如下,相对应的“XXX”地方填写每一个学生本人的数据。

班级:XXX ,序号:XXX ,姓名:XXX

第二行:空一行

第三行开始才是每一题的运行结果内容

1、设长方形的长a=1.5,宽b=1.7,求长方形的周长L和面积S。取小数点后二位数字,请编写成控制台应用程序。

using System;

class cl

{

static void Main()

{

double a = 1.50, b = 1.70, L, S;

L = (a + b) * 2;

L=Math.Round(L,2) ;

S = a * b;

S=Math.Round(S,2) ;

Console.WriteLine("长方形的周长L:{0}", L);

Console.WriteLine("长方形的面积S:{0}", S);

}

}

2、有一函数,当x<1 ,y=x;当x>=1,y=x*x,写一程序输入x,输出y。class Program

{

static void Main(string[] args)

{

double x, y;

Console.Write("请输入数值x:");

x = Convert.ToInt16(Console.ReadLine());

if (x < 1)

y = x;

else

y = x * x;

Console.WriteLine("输出y等于:{0}",y);

}

}

}

3、有一函数:

1 (x<0)

y= 0 (x=0)

-1 (x>0)

要求:输入一个x值,输出y值。用控制台应用程序编写。

class Program

{

static void Main(string[] args)

{

double x, y;

Console.Write("请输入数值x:");

x = Convert.ToInt16(Console.ReadLine());

if (x < 0)

y = 1;

else if (x > 0)

y = -1;

else

y = 0;

Console.WriteLine("输出y等于:{0}",y);

}

}

4、从键盘上任意输入两个整数,并将较大的数显示出来。

class Program

{

static void Main(string[] args)

{

Console.Write("请输入数值x:");

x = Convert.ToInt16(Console.ReadLine());

Console.Write("请输入数值y:");

y = Convert.ToInt16(Console.ReadLine());

if (x > y)

z=x;

else

z=y;

Console.WriteLine("输出较大的数:{0}",z);

}

}

方法二:

using System;

class cl

{

static void Main()

{

Console.WriteLine("班级:电子商务2班,序号:25号,姓名:莫子良\n ");

int x, y,z;

Console.Write("请输入x的值:");

x = Convert.ToInt16(Console.ReadLine());

Console.Write("请输入y的值:");

y = Convert.ToInt16(Console.ReadLine());

z=Math.Max(x,y);

Console.WriteLine("输出较大值:{0}", z);

}

}

5、从键盘上任意输入三个整数,并将较大的数显示出来。

using System;

class jdz

{

static void Main()

{

double x, y, z, h,t;

Console.Write("请输入数值一x:");

x = Convert.ToSingle(Console.ReadLine());

Console.Write("请输入数值二y:");

y = Convert.ToSingle(Console.ReadLine());

Console.Write("请输入数值三z:");

z = Convert.ToSingle(Console.ReadLine());

if (x > y)

h = x;

h = y;

if (h > z)

t = h;

else t = z;

Console.WriteLine("其中最大值为:{0}",t);

Console.ReadLine();

}

}

方法二:

using System;

class jdz

{

static void Main()

{

double x, y, z, h, t;

Console.Write("请输入数值一x:");

x = Convert.ToSingle(Console.ReadLine());

Console.Write("请输入数值二y:");

y = Convert.ToSingle(Console.ReadLine());

Console.Write("请输入数值三z:");

z = Convert.ToSingle(Console.ReadLine());

h = Math.Max(x, y);

t = Math.Max(h, z);

Console.WriteLine("其中最大值为:{0}", t);

Console.ReadLine();

}

}

6、输入两个实数,按代数值由小到大的次序输出这两个数。using System;

namespace ConsoleApplication2

{

class Program

{

static void Main(string[] args)

{

int a, b, c;

Console.Write("请输入第一个实数:");

a = Convert.ToInt16(Console.ReadLine());

Console.Write("请输入第二个实数:");

b = Convert.ToInt16(Console.ReadLine());

if (b > a)

{

c = a; a = b; b = c;

}

Console.WriteLine("由小到大排序:{0},{1}", b,a);

}

}

方法二:

using System;

namespace ConsoleApplication2

{

class Program

{

static void Main(string[] args)

{

int a, b, c, d;

Console.Write("请输入第一个实数:");

a = Convert.ToInt16(Console.ReadLine());

Console.Write("请输入第二个实数:");

b = Convert.ToInt16(Console.ReadLine());

if (b > a)

Console.WriteLine("由小到大排序:{0},{1}",a,b);

else

Console.WriteLine("由小到大排序: {0},{1}",b,a);

}

}

}

7、输入三个实数,按代数值由小到大的次序输出这三个数。using System;

class jdz

{

static void Main()

{

double a, b, c,t;

Console.Write("请输入数值一a:");

a = Convert.ToSingle(Console.ReadLine());

Console.Write("请输入数值二b:");

b = Convert.ToSingle(Console.ReadLine());

Console.Write("请输入数值三c:");

c = Convert.ToSingle(Console.ReadLine());

if(a>b)

{t=a;a=b;b=t;}

if(a>c)

{t=a;a=c;c=t;}

if(b>c)

{t=b;b=c;c=t;}

Console.WriteLine("排序由小到大为:{0},{1},{2}",a,b,c);

}

}

8、计算n!的程序。

namespace ConsoleApplication3

{

class Program

{

static void Main(string[] args)

{

int i; long sum = 1,n;

Console.Write("请输入数值n:");

n = Convert.ToInt64(Console.ReadLine());

for (i = 1; i <= n; i++)

sum = sum * i;

Console.WriteLine("n的阶乘:{0}", sum);

}

}

}

9、求100以内的偶数和,即:2+4+6+…+100的和。

using System;

namespace ConsoleApplication1

{

class Program

{

static void Main(string[] args)

{

int i, sum = 0;

for (i = 1; i <= 100; i++)

{

if (i % 2 == 1) continue;

sum = sum + i;

}

Console.WriteLine("sum={0}", sum);

}

}

}

10、编写一个程序,将10 , 20 , 30, 40, 50, 60 这六个数放入一个一维数组中,并输出这六个数中的最大数及最大数的位置及平均值。要求用控制台应用程序编写。

using System;

namespace ConsoleApplication1

{

class Program

{

static void Main(string[] args)

{

int i, max, max_i, p=0;

max = a[0]; max_i = 0;

for (i = 0; i < =5; i++)

Console.Write("{0} ", a[i]);

Console.WriteLine();

for (i = 0; i < =5; i++)

if (max < a[i]) { max = a[i]; max_i = i; }

for (i = 0; i <= 5; i++)

p = p + a[i];

Console.WriteLine("最大值为:{0},最大值位置为:{1},平均值为:{2}", max, max_i + 1, p/6);

}

}

}

C++程序设计基础课后答案 第八章

8.1 阅读下列程序,写出执行结果 1.#include class Bclass { public: Bclass( int i, int j ) { x = i; y = j; } virtual int fun() { return 0 ; } protected: int x, y ; }; class Iclass:public Bclass { public : Iclass(int i, int j, int k):Bclass(i, j) { z = k; } int fun() { return ( x + y + z ) / 3; } private : int z ; }; void main() { Iclass obj( 2, 4, 10 ); Bclass p1 = obj; cout << p1.fun() << endl; Bclass & p2 = obj ; cout << p2.fun() << endl; cout << p2.Bclass :: fun() << endl; Bclass *p3 = &obj;

cout << p3 -> fun() << endl; } 2.#include class Base { public: virtual void getxy( int i,int j = 0 ) { x = i; y = j; } virtual void fun() = 0 ; protected: int x , y; }; class A: public Base { public: void fun() { cout<<"x = "< main() { intnum=0; While(num<=3) { num=num+1; printf("%d",num); } } A 1 B 1 2 C 1 2 3 D 1 2 3 4 11、在定义inta[10];之后,如下对a的引用正确的是()。 A a[10] B a[6.3] C a(6) D a[0] 12、如下程序的输出结果是()。

(完整版)程序设计基础试题_10_答案

广州大学学年第学期考试卷 课程高级语言程序设计考试形式(开/闭卷,考试/查) 学院系专业班级学号姓名 一、填空题(每空1分,共10分) 1.C源程序的基本单位是(函数)。 2.一个C源程序中至少应包含一个(main()函数)。 3.若a和b均是int型变量,且a和b的初值均为5,则计算表达式a+=b++ 后,a的值为(10 ),b的值为( 6 )。 4.若a、b和c均是int型变量,则计算表达式a=(b=4)+(c=2)后,b值为( 4 ),c 值为( 2 )。 5.表达式8.2-2/3 的计算结果是(8 )。 6.在C语言中,整数可用三种数制表示,它们分别是(十进制)、(八进制)和(十六进制)。 二、程序计算题(每小题5分,共15分) 1. # define f(a) printf(“%d”,a) main() { int i,b[]={1,2,3,5,7,9,11,13,15},*p=5+b; for(i=3;i;i--) switch(i) { case 1: case 2: f(*p++); break;

case 3: f(*(--p)); } } 2. main() { int arr_sum(int arr[],int n); int a[3][4]={1,3,5,7,9,11,13,15,17,19,21,23}; int *p,total; int (*pt)( int arr[],int n); pt=arr_sum; p=a[0]; total=(*pt)(p,12); printf(“total=%d\n”,total); } arr_sum(int arr[],int n) { int i,sum=0; for(i=0;i

西交大《程序设计基础》试题及答案

西交大《程序设计基础》试题及答案 一、单项选择题(本大题共20小题,每小题2分,共40分) 1.int a[10];合法的数组元素的最小下标值为()。A:10 B:9 C:1 D:0 答案:D 2.以下运算符中优先级最低的是()。A:&& B:& C:|| D:| 答案:C 3.若使用一维数组名作函数实参,则以下正确的说法是()。A:必须在主调函数中说明此数组的大小B:实参数组类型与形参数组类型可以不匹配C:在被调用函数中,不需要考虑形参数组的大小D:实参数组名与形参数组名必须一致答案:A 4.已知函数的调用形式:fread(buffer,size,count,fp);其中buffer 代表的是()。 A:一个整数,代表要读入的数据项总数B:一个文件指针,指向要读的文件C:一个指针,指向要读入数据的存放地址D:一个存储区,存放要读的数据项答案:C 5.对以下说明语句int a[10]={6,7,8,9,10}; 的正确理解是()。A:将5个初值依次赋给a[1]至a[5] B:将5个初值依次赋给a[0]至a[4] C:将5个初值依次赋给a[6]至a[10] D:因为数组长度与初值的个数不相同,所以此语句不正确答案:B 6.下列程序的输出结果是()。main() { int x=1,y=0,a=0,b=0; switch(x) { case 1:switch(y) { case case } case 2:a++;b++;break; case 3:a++;b++;break; } printf(\} A:a=1,b=0 B:a=2,b=1 C:a=1,b=1 D:a=2,b=2 答案:B 7.下列程序的输出结果为()。main() {int m=7,n=4; float a=38.4,b=6.4,x; x=m/2+n*a/b+1/2; printf(\ 0:a++;break; 1:b++;break; } A:27.000000 B:27.500000 C:28.000000 D:28.500000 答案:A 8.若k为int型变量,则以下程序段的执行结果是()。k=-8567; printf(\A:格式描述符不合

Visual Basic 程序设计基础教程-课后习题答案-范荣强

第一章程序与编程环境 一、填空题 1. 工程,Form_Load 2. 事件(触发) 3. 窗体,Name 4. CurrentX, CurrentY 5. maxButton, BorderStyle = 1 or 3 or 4 or 5 6. Alignment, 空缺,AutoSize 7. Style, LoadPicture 8. Line, Shape 9. 重画10. FillStyle ll. MultiLine, maxLength, Locked 12. Font 13. sub, 对象名,事件名14. 方法,Object.Method, text1.setfocus() 15. Name, minButtom, CurrentX(Y), Caption 16. Interval, Enable 17. timer, Interval, ms(毫秒) 18. Mouse Down, Click, LoastFocus 19. .Frm, .Frx, .bas. cls. Vbp 20. 注释, “Rem 语句”或者“’语句” 第二章数据的类型、表示以及运算 一、请指出下列哪些是VB的合法常量,并说明原因 (1)√(2)X 常量不能加类型说明符号改成123.4 (3)X与上题类似,如果是常量,则类型说明符放在后面(4)√等价于2E3 (5) √(6)√等于十进制的4113 (7)X 如果是16进制要写&符号(8)X 指数不能为小数(9)X 月份超过12,日超过31 (10)√(11)√(12)√等价于上一题(13)X 8进制数每一位不能超过8 (14)√(15)X 变量,常量要为基本数据类型的值(16)√ 二、找出合法变量 (1)√(2)√如果与控件Label1同在一个应用程序里面,该变量会屏蔽掉控件Label1 (3) X 保留字(4)√(5)X 变量不能以数字开头(6)变量不能有小数点 (7)√(8)√数组变量(9)X保留字(10)√可以,但rnd()不可以,rnd()是函数 (11) √(12)√(13)√(14)X ’符号表示注释(15)X 这是表达式,不是变量(16)X 同上,是表达式 三、指出下列数据x,y,z的声明是否正确,如果正确请指明其类型 (1)√ x--long, y—variant, z—integer (2) √ x—long, y—long, z—integer (3) √ x—double, y—double, z—integer (4) X 变量x &中间不能有空格 (5)√自动转换成字符串 (6)X 变量声明不能直接赋值 (7)√ (8)√自动转换成字符串 (9)X 常量不能把函数写上去 (10)√ 四、写出下列表达式的结果 (1)1 (2) 1 (3)false (4) ab12 (5)123 (6)出错,加法表达式中如果有一个是数值类型,则“+”表示加号,而不是字符的链接符号(7)False (8)true (9) true (10) false 默认转换成相同类型(数值),建议这里把2改成D试试 (P.S. 布尔类型TRUE = -1, FALSE = 0; 优先顺序:^(乘方)→-(求负)→*、/→\(整除)→MOD→+、-) 五、写出下列函数的结果

《程序设计基础》练习题

《程序设计基础》综合练习题1009 姓名:学号: 一.选择题(以熟悉概念为主) 1.在C++的结构化程序设计框架中,程序的基本组成单元是___。 A.函数B.类 C.关系D.数据结构 2.下列特性中, C 与C++ 共有的是_____。 A. 继承 B. 封装 C. 多态性 D. 函数定义不能嵌套 3.面向对象程序设计思想的主要特征中,不包含____。 A.继承性B.封装性和信息隐藏性 C.功能分解、逐步求精D.多态性 4.在C++中所有的函数名称后面都紧跟着一对____,其中既可以没有内容,也可以包含函有选举权的参数。 A.( ) B.< > C.[ ] D.{ } 5.在C++的面向对象程序设计中,类与类之间通过____来实现独立性。 A.友元B.继承C.派生D.封装 6.下列哪个是C++语言的有效标识符?____。 A._No1 B.No.1 C.12345 D.int 7.在C++语言中,所有函数说明都必须指明返回值类型,没有返回值的函数应说明为____类型的函数。 A.int B.char C.float D.void 8.下列字符常量的写法中,错误的是____。 A.?\105?B.?*?C.????D.?\a? 9.下列变量的存储分配方式中,系统不为其分配内存空间的是____。 A.auto变量B.register变量C.static变量D.extern变量 10.如int型变量x的初始值为1,变量y和t皆为int型,且表达式y=(t=x,x+=t, t),则变量y的值为____。 A.0 B.1 C.2 D.不确定 11.下列关于C++运算符结合性的说法中,正确的是____。 A.赋值运算符是左结合的B.复合赋值运算符是左结合的 C.单目运算符是左结合的D.双目算术符是左结合的 12.表达式18/5*sqrt(4.0)/5值的数据类型是____。 A.int B.double C.float D.不确定 13.下列代码的输出结果是____。 int j=int( ); double d=double( ); cout<

C程序设计基础_复习题

c语言规定,任何非0的数像1 -1等都被认为是真,而0被认为是假 1>1为假 试题一、单选题 1. 已知int k,m=1;执行语句k=-m++;后,k的值是_____。【知识点:难度:正确答案:A】 A.-1 B.0 C.1 D.-2 2. 已知定义int m; float k; 正确的语句是。【知识点:难度:正确答案:D】 A.(int k)%m B.int(k)%m C.int(k%m)D.(int)k%m 3. 当k的值不为0时,在下列选项中能够将k的值赋给变量m,n的是______。【知识点:难度: 正确答案:B】 A.m=k=n B.(m=k)&&(n=m) C.(m=k)||(n=k)D.(n=m)&&(m=k) 4. 已知int x=5; 表达式6>x>1值是_____。【知识点:难度:正确答案:A】 A.0 B.1 C.5 D.表达式语法错 表达式6>x>1 ,先 判断6>x 为0,再 判断0>1,所以值 为0。 (6>x 为1 ,再判 断1>1,所以值为 0。) 5. 下列程序段执行后c值为_____。【知识点:难度:正确答案:D】 int k=7, c=0; while(--k) if (k%3) continue; else c++; A.5 B.4 C.3 D.2 6. 已知字母a的ASCII码为十进制数97,且ch为字符型变量,则执行语句ch=…a?+…D?-…A?;后,ch 中的值为_____。【知识点:难度:正确答案:C】 A.d B.c C.100 D.不确定 7. 设m,n已正确定义,执行语句{for(m=0, n=10; m,能使puts(s)语句正确输出ABCDE字符串的程序 段是______。【知识点:难度:正确答案:C】 A.char s[5] = {"ABCDE"}; puts(s) B.char s[5] = {…A?,?B?,?C?,?D?,?E?}; puts(s); C.char *s; s = "ABCDE"; puts(s); D.char *s; scanf(“%s”,s); puts(s); 《C程序设计基础及实验》

相关文档
最新文档