佛山三水网站建设,重庆金融公司网站建设,上海网络网站建设,站长工具樱花第1章 C语言概述第1讲 C语言概述随堂测验1、程序 #include void main() { printf(Hello, world!\n); } 经过编译运行会在显示器上输出 Hello, world#xff01; 如果希望输出#xff1a;Nice to meet you. 则应使用Nice to meet you.替换( )。A、voidB、mainC、p…第1章 C语言概述第1讲 C语言概述随堂测验1、程序 #include void main() { printf(Hello, world!\n); } 经过编译运行会在显示器上输出 Hello, world 如果希望输出Nice to meet you. 则应使用Nice to meet you.替换( )。A、voidB、mainC、printfD、Hello, world!第2讲 C语言基本语法成分随堂测验1、if 属于A、关键字B、用户标识符C、预定义标识符D、以上均不对作业1、下列属于C语言关键字的是( )。A、IntB、typedefC、ENUMD、unien2、下列叙述中不正确的是( )。A、分号是C语句的必要组成部分B、C语句的注释可以写在语句的后面C、函数是C程序的基本单位D、主函数的名字不一定用main表示3、构成C语言源程序的基本单位是( )。A、过程B、函数C、子程序D、命令4、一个C程序的执行是从( )。A、main函数开始直到main函数结束B、main函数开始直到最后一个函数结束C、第一个函数开始直到最后一个函数结束D、第一条语句开始直到最后一条语句结束5、下列属于C语言中合法标识符的是( )。A、ex-1B、ifC、_cookD、951a6、以下叙述不正确的是( )。A、在C程序中注释说明只能位于一条语句的后面B、注释说明被计算机编译系统忽略C、注释说明必须跟在“//”之后不能换行或者括在“/*”和“*/”之间且注释符必须配对使用D、注释符“/”和“*”之间不能有空格7、下面四组选项中均是C语言关键字的选项是( )。A、auto enum includeB、switch typedef continueC、signed union scanfD、if struct type8、在C程序中main函数的位置( )。A、必须作为第一个函数B、必须作为最后一个函数C、可以任意D、必须放在它所调用的函数之后9、C程序是由( )构成的。A、一个主程序与若干子程序B、一个或多个函数C、若干过程D、若干子程序10、C语言属于( )。A、机器语言B、汇编语言C、高级语言D、低级语言11、C语言的源程序通常的扩展名是( )。。A、.cppB、.cC、.objD、.exe12、下列选项中( )属于多行注释。A、//B、/**/C、\\D、/*13、下列可用作C语言用户标识符的是( )A、x-yB、mπC、studentD、for14、以下不是C语言关键字的是( )A、doB、GotoC、breakD、return15、C语言允许直接访问内存地址。16、C语言本身没有输入输出语句。17、while、If、double均是C语言的关键字。18、101a是合法标识符。19、在C语言中合法标识符的第一个字符必须是字母。第2章 基本数据类型和运算符第1讲 整型常量与浮点型常量随堂测验1、实型数据可以表示为小数形式或指数形式。第2讲 符号常量与字符型常量随堂测验1、有符号常量定义 #define PI 3.14159 在程序运行中PI相当于( )。A、3.14159B、3.14C、3.D、3第3讲 变量随堂测验1、变量是可以变的量所以可以将字符型变量a的值改变为( )。A、32767B、256C、‘a’D、25.6第4讲 算术运算符与算术表达式随堂测验1、表达式28%5的结果为( )。A、2B、8C、5D、0第5讲 赋值运算符与赋值表达式随堂测验1、如有定义 int ab2 则执行表达式ab;后a的值为( )。A、2B、3C、0D、随机第6讲 关系运算符与关系运算符随堂测验1、表达式35的值为( )。A、1B、0C、表达式错误D、3第7讲 逻辑运算符与逻辑运算符随堂测验1、如有定义int a2b3; 则执行语句 a||b后变量b的值为( )。A、2B、3C、4D、以上均不对第8讲 条件运算符与逗号运算符随堂测验1、若有语句xy?zx:zy; 已知x为8y为10则执行上述语句后z的值为( )。A、8B、10C、0D、以上答案均不对第9讲 类型转换随堂测验1、将实型数3.14赋给整型变量a后a的值为3。第2章 单元测验1、下列不合法的字符常量是( )。A、2B、\101C、abD、\n2、下列合法的转义字符是( )。A、\B、\018C、\eeD、xab3、以下选项中不合法的实型常量是( )。A、E3B、.123C、-6.2e4D、5.4、若已定义x和y为double型变量则表达式x1,yx3/2的值是( )。A、1B、2C、2.0D、2.55、执行语句“x(a5,ba--)”后x,a,b的值分别是( )。A、5,5,4B、5,4,4C、5,4,5D、4,5,46、已知int x5y5z5则执行语句x%yz后x的值是( )。A、0B、1C、5D、67、表达式(k3*2,k4),k*3的值是( )。A、14B、10C、30D、188、下面程序的输出结果是( )。 #include void main() { int x10,y3,z; printf(%d\n,z(x%y,x/y)); }A、0B、1C、3D、49、经过下述赋值后变量x的数据类型是( )。 float x21.0; int y; y(int)x;A、intB、floatC、doubleD、char10、执行以下程序后输出结果为 #include void main() { int x; float y; y3.6; x(int)y10; printf(x%d,y%f,x,y); }A、x13.5,y3.600000B、x13,y3.600000C、x13,y3D、x13,y3.611、下列浮点数的形式表示错误的是( )。A、10.6B、.5C、1e5D、12E2.012、printf(%d,541);的结果是( )。A、0B、1C、2D、313、假设a1,b2,c3,d4,则表达式ab?a:bA、4B、3C、2D、114、若x为int类型则表达式x1x5x的值是1。15、8E2是不合法的整型常量。16、-6.2e4是不合法的实型常量。17、执行语句“printf(%x,-1);”屏幕显示-ffff。18、若有int x8,y5,z;则执行语句“zx/y0.4”后z的值为1。第3章 顺序和选择结构程序设计第1讲 算法及结构化程序设计方法随堂测验1、有些算法没有输入或者输出。第2讲 程序基本结构随堂测验1、所有的程序都可以用顺序、分支和循环三种基本结构表示出来。第3讲 数据输入与输出(上)随堂测验1、如有定义int a128 则输出语句printf(“%o”,a);的输出结果为( )。A、200B、128C、100D、格式描述符使用错误第4讲 数据输入与输出(下)随堂测验1、C语言中输入输出的功能是使用库函数实现的。第5讲 二路分支1随堂测验1、条件表达式x0z10z-10的作用相当于分支语句 if(x) z10 else z-10第6讲 二路分支2随堂测验1、else会和离它最近的if配对。第7讲 多路分支随堂测验1、以下选项中()不属于switch语句的关键字。A、forB、caseC、defaultD、break第4章 循环结构程序设计第1讲 循环控制语句随堂测验1、C语言提供的循环控制语句有while、do-while、for三种。第2讲 循环嵌套随堂测验1、外重循环每执行一次内重循环要执行完整的一遍。第3讲 循环典型应用--累加累乘问题随堂测验1、求解123 ... n!的问题可以使用一重循环完成也可以使用两重循环完成。第4讲 循环典型应用--迭代问题随堂测验1、迭代问题的求解关键要素确定迭代变量确定迭代关系式确定迭代次数。第5讲 循环典型应用问题--猴子吃桃随堂测验1、猴子吃桃问题使用迭代递推方法实现时有2个迭代变量。第4章 单元测验1、以下说法正确的是( )。A、do-while语句构成的循环不能用其他语句构成的循环来代替。B、do-while语句构成的循环只能用break语句退出。C、用do-while语句构成的循环在while后的表达式为非0时结束循环。D、用do-while语句构成的循环在while后的表达式为0时结束循环2、以下程序运行时从键盘输入3.6,2.4输出结果是( )。 #include void main() { float x,y,z; scanf(%f,%f,x,y); zx/y; while(1) { if(fabs(z)1.0) { xy; yx; zx/y; } else break; } printf(%f,y); }A、1.500000B、1.600000C、2.000000D、2.4000003、如果c是大于1的正整数与以下程序段功能相等的赋值语句是( )。 sa; for(b1;bc;b) ss1;A、sab;B、sac;C、ssc;D、sbc;4、有一条长阶梯若每步跨2阶则最后剩余1阶若每步跨3阶则最后剩余2阶若每步跨5阶则最后剩余4阶若每步跨6阶则最后剩余5阶若每步跨7阶最后才正好一阶不剩。请问这条阶梯共有多少阶。 请补充while语句后的判断条件。 #include void main() { int i1; while( ) i; printf(阶梯共有%d阶.\n,i); }A、!((i%21)(i%32)(i%54)(i%65)(i%70))B、(i%21)(i%32)(i%54)(i%65)(i%70)C、!((i%20)(i%32)(i%54)(i%65)(i%70))D、!((i%21)(i%32)(i%54)(i%65)(i%71))5、以下程序段的输出结果是( )。 #include void main() { int a3; do { printf(%d,a--); }while(!a); }A、321B、3C、不输出任何内容D、326、若定义int i; 则以下for语句的执行结果是( )。 for(i1;i10;i) { if(i%3) i; i; printf(%d,i); }A、35811B、369C、258D、24687、以下程序段的输出结果是( )。 int n10; while(n7) { printf(%d,,n); n--; }A、10,9,8,B、10,9,8,7,C、9,8,7,6,D、9,8,7,8、以下程序的输出结果是( )。 #include void main() { int i5; for(;i15;) { i; if(i%40) printf(%2d,i); else continue; } }A、81216B、812C、1216D、89、以下关于for语句的说法不正确的是( )。A、for循环只能用于循环次数已经确定的情况B、for循环是先判断表达式后执行循环体语句C、for循环中可以用break语句跳出循环体D、for循环体语句中可以包含多条语句但要用花括号括起来。10、C语言中while语句和do-while语句的主要区别是( )。A、do-while的循环体不能是复合语句B、do-while的循环体至少无条件执行一次C、while的循环控制条件比do-while的循环控制条件严格D、do-while允许从外部转到循环体内11、若定义int i;则以下循环语句的循环执行次数是( )。 for(i2;i0;) printf(%d,i--);A、0B、1C、2D、无限次12、下面程序段的输出结果是__________。 #include void main() { int n4; while(n) printf(%d,--n); }A、3210B、4321C、321D、4321013、在while(x)语句中的x与下面条件表达式等价的是__________。A、x!0B、x0C、x!1D、x114、语句while(!y)中的!y等价于y!0。15、下面程序段循环一次也不执行。 int x10; while(x0) xx-1;16、for语句中的表达式可以部分或全部省略但是两个分号不能省略。17、用于直接中断最内层循环的语句是break。18、以下程序的输出结果是n4 #include void main() { int i,n0; for(i2;i5;i) { do { if(i%3) continue; n; } while(!i); n; } printf(n%d,n); }19、while语句与do-while语句功能相同。20、for语句只能实现循环次数确定的循环。第5章 数组第1讲 一维数组的概念随堂测验1、静态数组的大小必须是提前固定的。第2讲 一维数组的应用(上)随堂测验1、数组具有随机存取的特点。第3讲 一维数组的应用(下)随堂测验1、冒泡排序的核心思想是相邻的元素如果是逆序就进行交换。第4讲 二维数组的概念随堂测验1、二维数组可以看成是由多个一维数组构成的一维数组。第5讲 二维数组的应用(上)随堂测验1、矩阵的运算可以借助二维数组来实现。第6讲 二维数组的应用(下)随堂测验1、在C语言中二维数组是按照行序为主序进行存储的。第7讲 字符数组的概念随堂测验1、字符数组可以用来处理字符串问题。第8讲 字符串处理函数随堂测验1、strcopy函数多用来进行字符串的赋初值。第9讲 字符串的应用随堂测验1、二维字符数组可以处理多个字符串的应用问题。第10讲 指针和一维数组随堂测验1、数组名是该数组首元素的起始地址是一个地址常量。第11讲 折半查找随堂测验1、折半查找要求是待查记录是有序排列的。第12讲 冒泡排序随堂测验1、冒泡排序是稳定性排序方法。第5章单元测验1、若定义以下变量和数组 int i; int a[3][3]{1,2,3,4,5,6,7,8,9}; 则下列语句的输出结果是( )。 for(i0;i3;i) printf(%d ,a[i][2-i]);A、1 5 9B、1 4 7C、3 5 7D、3 6 92、以下程序执行后的输出结果是( )。 #include void main() { int i,j,s0; int a[4][4]{1,2,3,4,0,2,4,6,3,6,9,12,3,2,1,0}; for(j0;j4;j) { ij; if(i2) i3-j; sa[i][j]; } printf(%d\n,s); }A、12B、11C、18D、163、设有定义语句int a[2][4];则以下叙述不正确的是( )。A、a数组可以看成是由a[0]、a[1]两个元素组成的一维数组B、a[0]代表一个地址常量C、元素a[0]是由4个整型元素组成的一维数组D、可以用a[0]5;的形式给数组元素赋值4、假设a、b均为字符数组则以下正确的输入语句是( )。A、gets(a,b);B、scanf(%s %s,a,b);C、scanf(%s %s,a,b);D、gets(a);gets(b);5、下列描述正确的是( )。A、两个字符串所包含的字符个数相同时才能比较字符串B、字符个数多的字符串比字符个数少的字符串大C、字符串That小于字符串TheD、字符串 STOP 与 STOP 相等6、以下能对二维数组a进行正确初始化的是( )。A、int a[][3]{{1,2,3},{4,5,6}};B、int a[2][4]{1,2,3},{{4,5},{6}};C、int a[2][]{{1,0,1},{5,2,3}};D、int a[][3]{{1,0,1},{},{1,1}};7、以下合法的数组定义是( )。A、int a[]Language;B、int a[5]{0,1,2,3,4,5};C、char aC Program;D、char a[]C Program Language.;8、在C语言中引用数组元素时其数组下标的数据类型允许是( )。A、整型常量B、整型表达式C、整型常量或整型表达式D、任何类型的表达式9、以下程序的输出结果是( )。 #include #include void main() { char str[10]Ch\nina; printf(%d,strlen(str)); }A、5B、6C、7D、1010、已知int a[3][2]{3,2,1}则表达式“a[0][0]/a[0][1]/a[1][0]”的值是( )。A、0B、1C、0.16667D、错误的表达式11、下列说法错误的是( )。A、C语言中的二维数组在内存中是按列优先存储的。B、C语言中数组的下标都是从0开始的。C、C语言中不带下标的数组名代表数组的首地址。D、C语言中静态数组的大小不能使用变量进行定义。12、若int A[5]{1,2,3};则A[2]的值是( )。A、1B、2C、3D、013、判断字符串S1是否大于字符串S2应当使用( )。A、if(S1S2)B、if(strcmp(S1,S2))C、if(strcmp(S1,S2)0)D、if(strcmp(S2,S1)0)14、调用strlen(abcd\0ed\0g)的返回值为4。15、当接受用户输入的含空格的字符串时应使用getc函数。16、数组名实际是该数组首元素的起始地址。17、一个字符数组就是一个字符串。18、指向数组元素的指针只能指向数组的首元素。19、在C语言中只有一维数组和二维数组( )。20、int A[]{1,2,3,4};这种赋值方式是错误的。第5章编程题目1、最大值2、数组排序。第6章 函数和模块设计第1讲 函数概念、定义及调用随堂测验1、一个C源程序可以由多个函数组成。第2讲 函数参数传递随堂测验1、当被调函数需要使用主调函数中的数据时可以将主调函数中的这些数据作为参数传递给被调函数。第3讲 函数嵌套调用随堂测验1、C语言中函数允许嵌套调用但是不允许嵌套定义。第4讲 函数递归调用随堂测验1、函数的递归调用比非递归实现系统代价要大。第5讲 变量的作用域随堂测验1、全局变量如果未初始化系统会自动赋初值为0第6章单元测验1、以下说法正确的是( )。A、实参和与其对应的形参各占用独立的存储单元B、实参和与其对应的形参共享一个存储单元C、只有当形参和与其对用的实参同名时才共享存储单元D、形参是虚拟的不占用存储单元2、C语言中函数的数据类型是指( )。A、函数返回值的数据类型B、函数形参的数据类型C、调用该函数时的实参的数据类型D、任意指定的数据类型3、以下叙述正确的是( )。A、全局变量的作用域一定比局部变量的作用域范围大B、静态类型变量的生存期贯穿于整个程序的运行期间C、函数的形参都属于全局变量D、未在定义语句中赋值的auto变量和static变量的初值都是随机值4、以下说法不正确的是( )。A、在不同的函数中可以有相同名字的变量B、在一个函数内定义的变量只能在本函数内有效C、函数的形式参数是局部变量D、在一个函数内的复合语句中定义的变量在本函数内有效5、下列程序的输出结果是( )。 #include void f(int x,int y,int z) { zxy; } void main() { int a; f(5,6,a); printf(%d\n,a); }A、1B、11C、12D、不确定的值6、以下程序的输出结果是( )。 #include int func(int a,int b) { return(ab); } void main() { int x6,y7,z8,r; rfunc(func(x,y),z--); printf(%d\n,r); }A、15B、20C、21D、317、以下程序的输出结果是( )。 #include double f(int n) { int i; double s0; for(i1;in;i) s1/i; return s; } void main() { int i,m3; float a0.0; for(i0;im;i) aaf(i); printf(%f\n,a); }A、5.5000000B、3.000000C、4.000000D、8.258、以下程序的输出结果是( )。 #include int f(int a) { int b0; static int c3; ac,b; return a; } void main() { int a,i,t; a3; for(i0;i3;i) tf(a); printf(%d\n,t); }A、3B、4C、5D、69、以下程序的执行结果是( )。 #include long ff(int n) { if (n3) return (ff(n-1)ff(n-2)); else return(3); } void main() { printf(%d\n,ff(4)); }A、5B、6C、7D、810、以下程序的执行结果是( )。 #include int k1; void fun(int m) { mk; km; { char kB; printf(%d,,k-A); } printf(%d,%d,m,k); } void main() { int i4; fun(i); printf(%d,%d,i,k); }A、1,5,64,6B、2,5,64,6C、1,6,64,6D、1,5,63,611、下列函数调用语句中含有5个实参。 fun((a1,a2),(a3,a4,a5));12、为提高程序的运行速度在函数中对于自动变量和形参可用register型的变量。13、凡在函数中未指定存储类别的变量其隐含的存储类别是void类型。14、C语言中的函数可以嵌套调用但不可以嵌套定义。15、若调用一个函数且此函数中没有return语句则该函数没有返回值 。第7章 指针基础第1讲 指针基础(上)随堂测验1、指针实质就是地址。第2讲 指针基础(下)随堂测验1、指针提供了间接访问变量的作用。第3讲 指针与数组随堂测验1、数组名是该数组首元素的起始地址是一个地址常量。第7章 单元测验1、以下程序的运行结果是( )。 #include void main() { int k1,j2,*p,*q,*t; pk; qj; tp; pq; qt; printf(%d,%d,*p,*q); }A、2,1B、1,2C、1,1D、2,22、关于指针变量以下描述不正确的是( )。A、在没有对指针变量赋值时指针变量的值是不确定的B、基类型相同的指针变量可以进行相减运算C、在使用没有赋值的指针变量时不会出现问题D、可以通过指针变量来取得它指向的变量值3、下列关于指针说法正确的是 ( )。A、指针是用来存储变量值的类型B、指针类型只有一种C、指针变量可以与整数进行相加或相减运算D、指针变量的存储空间与其基类型有关4、下列运算中不属于指针变量p的常用运算的是( )。A、pB、p*1C、p--D、p25、下列选项中()是取值运算符。A、*B、C、#D、6、指针变量所占用的内存空间和其基类型无关。7、指针变量用来存储某一个变量的地址。8、指针变量和指针所指向的变量是一样的。9、指针变量有间接访问另外一个变量的作用。10、指针变量的基类型可以是任何一种基本数据类型。