(完整版)C程序设计语言复习题(试题及答案版)
C程序设计复习题

二、计算题 1、 2.8 2、5.5 三、选择题 C A D C D B
3、a=60
4、4.5
C B C
A D
03. 分支、循环控制程序
一、 计算题
1.a=3,b=4,c=5,a+b>c&&b= =c 2.3>5?3:5<8?25:40 3.设 a=1,b=2,c=3,d=4,m=n=1,有表达式(m=a>b)&&(n=c>d),计算表达式后 m,n 的值?
二、 计算题
1. 2.8+7%3*11%2/4 2. 5/2+5.0/2+7%6 3. a=12,a*=2+3 4. 设 int b=7;float a=2.5,c=4.7;求下面表达式的值。 5. a+(int)(b/2*(int)(a+c)/2)%4
三、 选择题
1. 在 C 语言中,每个语句和数据定义是用( A)句号 B)逗号 下列字符串是标识符的是( ) 。 A)_HJ B)9_student )结束。 C)分号 D)括号
五、 将以下语句改写成 switch 语句:
if((t>0)&&(t<=10)) if((t>=3)&&(t<=6)) x=2; else if((t>1)||(t>8)) x=3; else x=1; else x=0; 参考答案: 一、计算题 1、0 2、25 二、选择题 B C D
3、m=0,n=1
超文本过程
(D)
子程序
5. 下列说法正确的是( ) (A) 一个函数的函数体必须要有变量定义和执行部分,二者缺一不可 (B) 一个函数的函数体必须要有执行部分,可以没有变量定义 (C) 一个函数的函数体可以没有变量定义和执行部分,函数可以是空函数 (D) 以上都不对 6. 下列说法正确的是( ) (A) main 函数必须放在 C 程序的开头 (B) main 函数必须放在 C 程序的最后 (C) main 函数可以放在 C 程序的中间部分,即在一些函数之前在另一个函数之后, 但在执行 C 程序时是从程序开头执行的 (D) main 函数可以放在 C 程序的中间部分,即在一些函数之前在另一些函数之后, 但在执行 C 程序时是从 main 函数开始的 7. 下列说法正确的是( ) (A) 在执行 C 程序时不是从 main 函数开始的 (B) C 程序书写格式严格限制,一行内必须写一个语句 (C) C 程序书写格式自由,一个语句可以分写在多行上 (D) C 程序书写格式严格限制,一行内必须写一个语句,并要有行号
(完整版)C语言程序设计题库及答案,推荐文档

A.552 B.264 C.144 D.-264 30 . int a=3,b=2;printf(“%d,%d\n”,--a,b++);输出结果是(A )。
A.2,2 B.2,3 C.3,2 D.3,3
判断题(共 5 题,每题 2 分) 1 . 只能在循环体内和 switch 语句体内使用 break 语句。(对) 2 . 一个算法应该具备有穷性、确定性、输入、输出和有效性。(对) 3 . C 语言中,每个程序都必须要有一个且只有一个 main 函数。(对) 4 . 调用函数时,实参是一个数组名,则向函数传递的是数组的首地址。(对)
5 . 表达式 16/8*sqrt(4.0)/2 值的数据类型为 double 双精度实型。(对)
第二套试题
单选题(共 20 题,每题 4 分) 1 . 若有输入语句 scanf( %d%d%d,&x,&y,&z);则不能使 x 值为 5,y 值为 6,z 值为 7 的输入是___A___。
A.5,6 ,7
A.5,6 ,7
B.5 回车换行 6 7 C.5 6 7
D.5,6,7
12 . 若 i,j 已定义为 int 类型,则下程序段中内循环体的总的执行次数是( B )。 for (i=3;i>0;i--) for (j=0;j<=4;j++){...}
A.12
B.15
C.16
13 . 下列选项中,合法的 C 语言关键字是_D___。
A.1
B.3
C.2.0
D.2.5
19 . func(exp1,(exp2,exp3),(exp4,exp5,exp6));含有(C )个实参。 A.1 B.2 C.3 D.6 20 . 有 int x=3,y=4,z=5;则下面表达式中值为 0 的是__B____。 A.x&&y B.! (x<y&&!z||1) C.x||y+z&&y-z D.x<=y 21 . 已定义 c 为字符型变量,则下列语句中正确的是____C__。
(完整版)C语言程序设计练习题(含程序及参考答案)

(完整版)C语⾔程序设计练习题(含程序及参考答案)C语⾔练习题(所提供的源程序均采⽤⾃定义函数⽅式解决,如不采⽤函数⽅式,也可直接在main函数中借鉴该思想编程,因时间有限,所有程序未能⼀⼀验证,仅供参考使⽤)1、定义⼀个函数int fun(int a,int b,int c),它的功能是:若a,b,c能构成等边三⾓形函数返回3,若能构成等腰三⾓形函数返回2,若能构成⼀般三⾓形函数返回1,若不能构成三⾓形函数返回0。
#includeint fun(int a,int b,int c){if(a+b>c && b+c>a && a+c>b){if(a==b && b==c )return 3;else if(a==b||b==c||a==c)return 2;else return 1;}else return 0;}void main(){int a,b,c,shape;printf("\nInput a,b,c: ");scanf("%d%d%d",&a,&b,&c);printf("\na=%d, b=%d, c=%d\n",a,b,c);shape =fun(a,b,c);printf("\n\nThe shape : %d\n",shape);}2、编写⼀个程序,将两个变量的值交换, 例如变量a中的值原为 3,b中的值原为8,程序运⾏后 a 中的值为8,b中的值为3。
#includevoid fun(int *x,int *y){int t;t=*x;*x=*y;*y=t}void main(){int a=3,b=8;printf("%d %d\n",a,b);fun(&a,b);printf("%d %d\n",a,b);}3、从键盘输⼊3个数,将最⼤值放在变量a中,最⼩值放在变量c中。
(完整版)C语言试卷及答案

(完整版)C语言试卷及答案一、选择题(每题2分,共40分)1、C语言源程序的基本单位是( )A.程序行B.语句C.函数D.字符2、C语言规定:在一个源程序中,main函数的位置()。
A.必须在最开始B.必须在系统调用的库函数的后面C.可以任意D.必须在最后3、在下列字符列中,合法的标识符是( )A.p12&.aB.stud_100C. water$12D.88sum4、在C语言中,要求运算的数必须是整数的运算符是()A./B.!C.%D.= =5、设有语句 int a =3;则执行了语句a + = a - = a*a;后,变量a 的值是()A、3B、0C、9D、-126、设a=5,b=6,c=7,d=8,m=2,n=2,执行(m=a > b)&&(n=c>d)后n的值为()A、1B、2C、3D、47、执行下列程序时输入:1234567,程序的运行结果是()main(){int x,y;scanf(“%2d%*2c%1d”,&x,&y);printf(“%d\n”,x+y);}A.17B.46C.15D.98、下述程序的输出结果是() #includevoid main(){int x=-1,y=4;int k;k=++x<=0&&!(y--<=0);printf("%d,%d,%d",k,x,y);}A.0,0,3B.0,1,2,C.1,0,3,D.1,1,29、为了避免嵌套的if-else语句的二义性,C语言规定else总是与()组成配对关系。
A.缩排位置相同的ifB.在其之前未配对的ifC.在其之前未配对的最近的ifD.同一行上的if10、两次运行下面的程序,如果从键盘上分别输入6和4,则输出结果是()main(){int x;scanf(“%d“,&x);if(x++>5)printf(“%d”,x);else printf(“%d\n”,x--);}A.7和5B.6和3C.7和4D.6和411、若变量c为char类型,能正确判断出c为小写字母的表达式是( )A. 'a'<=c<= 'z'B. (c>= 'a')||(c<= 'z')C. ('a'<=c)and ('z'>=c)D. (c>= 'a')&&(c<= 'z')12、已知int x=10,y=20,z=30;以下语句执行后x,y,z的值是。
C语言程序设计期末考试复习题及答案

A)称为函数的直接递归调用 B)称为函数的间接递归调用
C)称为函数的循环调用 D)C语言中不允许这样的递归调用
6.以下叙述中正确的是 ( A )
{ char a='a',b;
printf("%c,",++a);
printf("%c\n",b=a++);}
程序运行后的输出结果是a)b,b B)b,c C)a,b D)a,c
9.有以下函数定义:(c)
void fun(int n, double x) { …… }
1 main()
2 { int x;
3 if (x=90) printf(“right”);
4 else printf(“error”);
}
行号: 改为: main()
2 { char s[]=”china”;
(4) main()
{ int a,b;
a=5;
b=8;
p(a,b);
p(a+b,a);
}
p(int x,int y)
{
y=x+y;
printf(“%d %d”,x,y);
}
程序的运行结果是:
A)for(i=1,p=1;i<=5;i++) p*=i;B)for(i=1;i<=5;i++){ p=1; p*=i;}
C)i=1;p=1;while(i<=5){p*=i; i++;}D)i=1;p=1;do{p*=i; i++; }while(i<=5);
完整word版,C语言程序设计期末考试试题(含答案)

C语言程序设计期末考试试题及其答案一、单项选择题(本大题共20题,每题2 分,共40分)1、以下不是C语言的特点的是( )A、C语言简洁、紧凑B、能够编制出功能复杂的程序C、C语言可以直接对硬件进行操作D、C语言移植性好2、以下不正确的C语言标识符是( )A、ABCB、abcC、a_bcD、ab.c3、一个C语言程序是由( )A、一个主程序和若干子程序组成B、函数组成C、若干过程组成D、若干子程序组成4、一个算法应该具有“确定性”等5个特性,对另外4个特性的描述中错误的是( )A、有零个或多个输入B、有零个或多个输出C、有穷性D、可行性5、设变量a是整型,f是实型,i是双精度型,则表达式10+‘a’+i*f值的数据类型为( )A、intB、floatC、doubleD、不确定6、在C语言中,char型数据在内存中的存储形式是( )A、补码B、反码C、源码D、ASCII码7、有如下程序,输入数据:12345M678<cR>后(<CR>表示回车),x的值是( ) 。
#include<stdio.h>main(){int x;float y;scanf("%3d%f",&x,&y);}A、12345B、123C、45D、3458、若有以下定义int a,b; float x,则正确的赋值语句是( )A、a=1,b=2B、b++;C、a=b=5D、b=int(x);9、以下程序的执行结果是( )#include<stdio.h>{int i=10,j=10;printf("%d,%d\n",++i,j--);}A、11,10B、9,10C、11,9D、10,910、巳知字母A的ASCII码是65,以下程序的执行结果是( )#include<stdio.h>main(){char c1='A',c2='Y';printf("%d,%d\n",c1,c2);A、A,YB、65,65C、65,90D、65,8911、下列运算符中优先级最高的是( )A、<B、十C、%D、!=12、设x、y和z是int型变量,且x=3,y=4,z=5,则下面表达式中值为0是( ) 。
C语言程序设计试题及答案

《C语言程序设计》(卷)考核班级学生数印数考核方式闭卷考核时间120 分钟(本试卷包括第一卷和第二卷,答卷时间总共120分钟)第一卷第一部分:基础知识(20项,共40分)1.一个C语言程序是由()组成的。
A.主程序B.子程序C.函数D.过程2.转换说明符%x的输出形式是()。
A.十进制B.八进制C.十六进制D.二进制3.若a、b均为int型变量,且a=100,则关于循环语句for(b=100;a!=b;++a,++b) printf ( “------------“) ;的正确说法是()。
A.循环体只执行一次B.死循环C.循环体一次也不执行D.输出-----------4.若x、y、z均为int 型变量,则执行下列语句后的z值为()。
x=1; y=2; z=3; z=(x>y)?z :y ; z = (z<y)?z:x;A.1 B.4 C.2 D.35.下面标识符中,合法的用户标识符为()。
A.P#Ad B.12a C.char D._int6.‘A’+ 3 的结果是()。
A.’A’B.’D’的ASCⅡ码C.65 D.37.语句char str[20];说明str是一个字符串,最多能表示()。
A.20个字符B.19个字符C.18个字符D.21个字符8.将int 型变量n转换成float型变量的方法是()。
A.float n B.(float)n C.float(n) D.21个字符9.以下不正确的描述是()。
A.使用while和do-while循环时,循环变量初始化的操作应在循环语句之前完成B.while循环是先判断表达式后执行循环体语句C.do-while和for循环均是先执行循环体语句,后判断表达式D.for、while、do-while循环中的循环体均可以由空语句构成10.在循环中使用break 语句的功能是()。
A.使程序的执行跳出break所在的那一重循环B.使程序执行结束C.跳出包含此break语句的所有循环D.终止本次循环,继续下次循环11.下面是一个初始化指针的语句:int *px = &a;其中指针变量的名字应该是()。
(完整版)C语言各章节复习题(带答案)

一、C语言概述练习题选择1.一个C程序的执行是从。
A) 本程序的main函数开始,到main函数结束B) 本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C) 本程序文件的第一个函数开始,到本程序main函数结束D) 本程序的main函数开始,到本程序文件的最后一个函数结束2.以下叙述不正确的是。
A) 一个C源程序必须包含一个main函数 B)一个C源程序可由一个或多个函数组成C) C程序的基本组成单位是函数 D) 在C程序中,注释说明只能位于一条语句的后面3.以下叙述正确的是。
A) 在对一个C程序进行编译的过程中,可发现注释中的拼写错误B) 在C程序中,main函数必须位于程序的最前面C) C语言本身没有输入输出语句 D) C程序的每行中只能写一条语句4.一个C语言程序是由。
A)一个主程序和若干个子程序组成 B) 函数组成 C) 若干过程组成 D) 若干子程序组成5.计算机高级语言程序的运行方法有编译执行和解释执行两种,以下叙述中正确的是。
A) C语言程序仅可以编译执行B) C语言程序仅可以解释执行C) C语言程序既可以编译执行又可以解释执行D) 以上说法都不对6.以下叙述中错误的是。
A) C语言的可执行程序是由一系列机器指令构成的B)用C语言编写的源程序不能直接在计算机上运行C)通过编译得到的二进制目标程序需要连接才可以运行D)在没有安装C语言集成开发环境的机器上不能运行C源程序生成的.exe 文件7.以下叙述正确的是。
A) C语言程序是由过程和函数组成的B) C语言函数可以嵌套调用,例如:fun(fun(x))C) C语言函数不可以单独编译 D) C语言中除了main函数,其他函数不可作为单独文件形式存在二、数据类型、运算符与表达式选择.1.若x、i、j、k都是int型变量,则计算下面表达式后,x的值为x=(i=4,j=16,k=32) A) 4 B) 16 C) 32D) 522.下列四组选项中,均不是C语言关键字的选项是。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一.填空题26.C#源程序的后缀名为______.cs________。
26.C#中每个int 类型的变量占用____4___个字节的内存。
26.C#的每行语句以________分号_______结尾。
26.布尔型的变量可以赋值为关键字_____true__________或_____false_________。
26.如果int x的初始值为5,则执行表达式x - =3之后,x的值为_____2_________。
26.do...while语句在执行循环体_____之后________测试语句是否满足循环条件。
26.关键字_______class________表示一个类的定义。
26.如果一个类包含一个或多个抽象方法,它是一个_________抽象_____________类。
26.try块运行后,总是会执行_________finally_____________块中的代码。
26.一个数组如果有两个索引值,那么它是__________二维__________数组。
二.单项选择题1.在对SQL Server 数据库操作时应选用()。
A、SQL Server .NET Framework 数据提供程序;B、OLE DB .NET Framework 数据提供程序;C、ODBC .NET Framework 数据提供程序;D、Oracle .NET Framework数据提供程序;2.下列选项中,()是引用类型。
A、enum类型B、struct类型C、string类型D、int类型3.C#的数据类型有()A、值和调用类型;B、值和引用类型;C、引用和关系类型;D、关系和调用类型4.下列描述错误的是()A、类不可以多重继承而接口可以;B、抽象类自身可以定义成员而接口不可以;C、抽象类和接口都不能被实例化;D、一个类可以有多个基类和多个基接口;5.下列关于构造函数的描述正确的是()A、构造函数可以声明返回类型。
B、构造函数不可以用private修饰C、构造函数必须与类名相同D、构造函数不能带参数6.int[][] myArray3=new int[3][]{new int[3]{5,6,2},new int[5]{6,9,7,8,3},new int[2]{3,2}};那么myArray3[2][2]的值是( )。
A、9B、2C、6D、越界7.接口是一种引用类型,在接口中可以声明(),但不可以声明公有的域或私有的成员变量。
A、方法、属性、索引器和事件;B、方法、属性信息、属性;C、索引器和字段;D、事件和字段;8.在中,对于Command对象的ExecuteNonQuery()方法和ExecuteReader()方法,下面叙述错误的是()。
A、insert、update、delete等操作的Sql语句主要用ExecuteNonQuery()方法来执行;B、ExecuteNonQuery()方法返回执行Sql语句所影响的行数。
C、Select操作的Sql语句只能由ExecuteReader()方法来执行;D、ExecuteReader()方法返回一个DataReder对象;9.Winform中,关于ToolBar控件的属性和事件的描述不正确的是( )。
A、Buttons属性表示ToolBar控件的所有工具栏按钮B、ButtonSize属性表示ToolBar控件上的工具栏按钮的大小,如高度和宽度C、DropDownArrows属性表明工具栏按钮(该按钮有一列值需要以下拉方式显示)旁边是否显示下箭头键D、ButtonClick事件在用户单击工具栏任何地方时都会触发10.在中执行一个存储过程时,如果要设置输出参数则必须同时设置参数的方向和(),必要时还要设置参数尺寸。
A、大小;B、上限;C、初始值;D、类型;11.如果将窗体的FormBoderStyle设置为None,则( )。
A、窗体没有边框并不能调整大小;B、窗体没有边框但能调整大小;C、窗体有边框但不能调整大小;D、窗体是透明的;12.如果要将窗体设置为透明的,则( )A、要将FormBoderStyle属性设置为None;B、要将Opacity属性设置为小于100%得值;C、要将locked 属性设置为True;D、要将Enabled属性设置为True;13.下面描述错误的是( )。
A、窗体也是控件;B、窗体也是类;C、控件是从窗体继承来的;D、窗体的父类是控件类;14.如果设treeView1=new TreeView(),则treeView1.Nodes.Add("根节点")返回的是一个( )类型的值。
A、TreeNode;B、int;C、string;D、TreeView;D. obj.set(obj.sData);15.如果左操作数大于右操作数, ________运算符返回false.A. =B. <C. <=D. 以上都是16.下列变量初始化时不能完成转换的是:( )A.int a=5;float b=a; B.int a=65;char c=(int)a;C. string s="x";char c=s;D. Long L=123; int a=L;17.有一个整型数组int[] array = new int{1,2,3,4}。
通过索引访问该数组,当索引为2时,得到的结果是多少?( )A、1B、2C、3D、418.Web 窗体文件的扩展名为:( )A. ASPB. ASPXC. ASCXD. HTML19.下面的循环语句不管在什么条件下至少执行一次循环体的语句是()。
A. for循环B.foreach循环C. while循环D. do 循环20.在Visual 窗口中,()窗口显示了当前Visual Studio解决方案的树型结构。
A.类视图B.解决方案资源管理器C.资源视图D.属性21.在C#中无需编写任何代码就能将int型数值转换为double,称为:()A.显式转换B.隐式转换C.数据类型变换D.变换22.C#中执行下列语句后整型变量x和y的值是多少?()int x=100;int y=x++;A. x=101 y=101B. x=100 y=101C. x=101 y=100D. x=100 y=10023.C#程序中,可使用try..catch 机制来处理程序出现的______错误.A. 语法B. 运行C. 逻辑D. 拼写26.在Visual 窗口中,()窗口显示了当前Visual Studio解决方案的树型结构。
A.类视图B.解决方案资源管理器C.资源视图D.属性27.关于C#语言的基本语法,下列哪些说法是正确的?A.C#语言使用using 关键字来引用.NET 预定义的名字空间;B.用C#编写的程序中,Main 函数是唯一允许的全局函数;C.C#语言中使用的名称不区分大小写;D.C#中一条语句必须写在一行内;28.对于在代码中经常要用到的且不会改变的值,可以将其声明为常量。
如圆周率PI始终为3.14。
现在要声明一个名为PI的圆周率常量,下面哪段代码是正确的?A.const float PI; PI = 3.14f;B.const float PI = 3.14f;C.float const PI; PI = 3.14f;D.float const PI = 3.14f;29.在C#中无需编写任何代码就能将int型数值转换为double,称为:A.显式转换B.隐式转换C.数据类型变换D.变换30.如果左操作数大于右操作数, ________运算符返回false.A. =B. <C. <=D. 以上都是31.如果希望实现从1到10的累加,并得出结果。
int count = 0;___________{count += i;}应该在空白处添加下面哪段代码?A. for (int i = 0; i < 10; i++)B. for (int i = 0; i <= 9; i++)C. for (int i = 1; i <= 10; i++)D. for (int i = 1; i < 10; i++)32.为保护Web Service 不受恶意访问的攻击,应使用_______保护Web Service。
A. IIS 目录安全性B. NTFS 安全性C. 共享目录安全性D. TCP/IP 安全性33.通常计算机程序总是由若干条语句组成的,以下哪种不是组成程序的常用结构?A.跳转结构B.循环结构C.分支结构D.顺序结构34.一年中的12个月,每个月的中文对应一个数字,如“一月”对应1,“二月”对应2。
现在输入一个整数,希望能输出数字对应的中文,例如输入1,输出“一月”。
使用下面的哪种代码结构最适合?A.单一的if结构 B.嵌套的if结构 C.switch结构 D.嵌套的if…else结构变量35.在Visual Studio 2005中,假设你正在单步调试某个应用程序。
程序从入口开始,调用某个私有方法将产生异常。
现在代码运行到如图所示位置,应该使用下面哪种方式进一步调试?A、使用逐语句调试B、使用逐过程调试C、跳出调试D、停止调试36.有一个整型数组int[] array = new int{1,2,3,4}。
通过索引访问该数组,当索引为2时,得到的结果是多少?A、1B、2C、3D、437.以下类MyClass 的属性count 属于_____属性。
class MyClass{int i;int count{get{ return i; }}}A. 只读B. 只写C. 可读写D. 不可读不可写38.C#中执行下列语句后整型变量x和y的值是多少?int x=100;int y=x++;A. x=101 y=101B. x=100 y=101C. x=101 y=100D. x=100 y=10039.在编写C#程序时,若需要对一个数组中的所有元素进行处理,则使用()循环体最好。
A. for循环B.foreach循环C. while循环D. do 循环40.在中,表示程序到数据库的连接的对象为:A.DataSet对象mand对象C.DataAdapter对象D.Connection对象41.创建相当于3行4列矩阵的二维数组,正确的代码是:A. double[][] a=new double[3][4];B. double a[][] =new double[3][4];C. double[,] a =new double[3,4];D. double a[,] =new double[3,4];42.对下面的代码,哪段描述是错误的?public class Door{};public class House{public House (){Door door = new Door();}}A. Door是一个类。