浙江大学C语言期末考试试卷 2000A
浙江大学C语言总复习题--综合
综合练习一、判断题1.在Trubo_C中运行一个C程序时,实际上是运行后缀为.EXE的可执行文件。
2.在C语言中整数可用十进制数、八进制数和二进制数三种数制表示。
3.在程序的运行过程中,整型常量的值是可以改变的。
4. C程序中,用/* 和 */界定的部分称之为注释,注释部分对程序的运行不起作用。
5.大括弧 { } 只能用来括复合语句。
6. do_while语句构成的循环不能用其它循环语句来代替。
7.不能用scanf 函数输入字符。
8.在 C 程序中,函数的定义不可以嵌套,但函数的调用可以嵌套。
9. 一个变量的作用域取决于变量定义语句在程序中出现的位置。
10.C 语言的一个编译预处理命令用 # 开始,最后加分号。
11. C语言源程序文件经过编译、连接之后生成一个后缀为.EXE的文件。
12. C语言中以 %o开头的数是八进制整数。
13.在程序的运行过程中,符号常量的值是可以改变的。
14.在 C 程序中,APH 和 aph 代表不同的变量。
15.一个复合语句在语法上被认为是一条语句。
16. 只能用while语句构成循环。
17.不能用printf函数输出字符。
18. C程序中各函数之间既允许直接递归调用也允许间接递归调用。
19. 在函数外部定义的变量称为全局变量。
20.宏定义的命令行可以看作是一条C 语句。
21. C语言源程序是可以用来直接运行的程序。
22. C语言中以 %x 开头的数是十六进制整数。
23. C程序中定义的变量,代表内存中的一个存储单元。
24.在 C 程序中,9ab是非法的用户标识符。
25. C语句必须用一个分号作为结束。
26. do_while语句构成的循环不能用break语句退出。
27. scanf 函数是 c 语言的标准输入函数。
28. C程序的main函数不能有参数。
29. 在函数内部定义的变量称为局部变量。
30.用#include包含的头文件的后缀必须是.h。
31. C 语言程序的三种基本结构是顺序结构、选择结构和循环结构。
大学C语言期末考试试题(含答案)
第一章C语言概述1.1 选择题*1.1一个C程序的执行是从 A 。
A)本程序的main函数开始,到main函数结束B)本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C)本程序的main函数开始,到本程序文件的最后一个函数结束D)本程序文件的第一个函数开始,到本程序main函数结束参考答案:A参考分析:C语言总是从main函数开始,main函数结束。
但是C 语言中存在一个exit(0)函数,它可以使得程序在任何时候、任何位置结束程序的运行。
如果不考虑exit(0)等函数的特殊作用,C则总是在main函数结束。
*1.2以下叙述正确的是 C 。
A)在C程序中,main函数必须位于程序的最前面B)在C程序的每一行只能写一条语句C)C语言本身没有输入输出语句D)在对一个C程序进行编译的过程中,可发现注释中的拼写错误参考答案:C参考分析:C程序对main函数的位置没有任何要求;其书写格式自由,一行可以写多条语句,一条语句(多关键字语句)可以写在多行;C语言忽略注释,把注释看作是一个空格,不会对注释中的内容进行语法检查。
因此,如果注释中存在错误,系统是不可能发现的。
另外,C语言的I/O操作均通过函数实现,系统本身未提供相应的语句。
1.3以下叙述不正确的是 D 。
A)一个C源程序可由一个或多个函数组成B)一个C源程序必须包含一个main函数C)C程序的基本组成单位是函数D)在C程序中,注释说明只能位于一条语句的后面参考答案:D参考分析:C语言中,注释语句的位置是任意的,当然,它不能破坏标识符的完整性。
C语言只是将一个注释看作是一个空格,因此对注释内的任何错误都不作检查。
1.4 C语言规定:在一个源程序中,main函数的位置 C 。
A)必须在最开始B)必须在系统调用的库函数的后面C)可以任意D)必须在最后参考答案:C*1.5一个C语言程序是由 B 。
A)一个主程序和若干个子程序组成B)若干函数组成C)若干过程组成D)若干子程序组成参考答案:B参考分析:通常许多语言程序由主程序和子程序构成,但是C语言是函数式语言,整个程序由众多函数组成。
浙江大学C语言程序设计理论考试模拟试题答案
浙江大学C语言理论考试模拟试题答案一、判断题共10题,每题1分,共10分。
正确的请选择A,错误的请选择B。
1、在C语言中,函数不可以嵌套定义,但函数可以嵌套调用。
AA、正确B、错误解答:A2、在程序中else 子句可以单独使用。
BA、正确B、错误解答:B3、C 语言源程序文件通过了编译、连接之后, 生成一个后缀为.EXE 的文件。
( ) AA、正确B、错误解答:A4、_ya是不合法的C语言标识符。
BA、正确B、错误解答:B5、在数组初始化时,如果初值个数多于数组长度,将出现错误。
AA、正确B、错误解答:A6、C语言规定,函数返回值的类型是由return语句中的表达式类型所决定。
BA、正确B、错误解答:B7、若有定义int *p, 则表达式p++ 的值就是p 所指向的变量的地址值加1。
BA、正确B、错误解答:B8、'\n'不是一个字符常量。
BA、正确B、错误解答:B9、表达式(z=0, (x=2)||(z=1),z) 的值是1。
BA、正确B、错误解答:B10、若打开文件的方式为“w”而该文件已经存在,则文件中原有数据被清空。
A、正确B、错误二、单选题请从给定的选项中选择一个唯一正确的选项。
每小题2分,共10题,20分。
1、 C下面有关变量的命名,不合法的是:( )A. _intB. __intintC. __int&intD. ___intintintC解答:C2、有变量定义int a;float c;下面输入语句有语法错误的是( )。
A. scanf("%d,%f", &a, &c);B. scanf("x=%d, c=%f", &a, &c);C. scanf("%d%f", &a, &c);D. scanf("%f %d",&a, &c);D解答:D3、下面关于函数参数使用的说法,不正确的是:()A. 函数调用时实参按顺序传递到形参;B. 函数调用时实参把值传递给形参;C. 函数的实参和形参个数可以不一致,但使用时应尽量一致;D. 函数的实参和形参可以同名;C解答:C4、已知int k=1; for(k=1;1;k++) if(k) break; for语句的循环次数是( )。
大学C语言期末考试练习题(带详解答案)
一、单项选择题1.( A)是构成C语言程序的基本单位。
A、函数B、过程C、子程序D、子例程2.C语言程序从C开始执行。
A) 程序中第一条可执行语句B)程序中第一个函数C)程序中的main函数D) 包含文件中的第一个函数3、以下说法中正确的是(C)。
A、C语言程序总是从第一个定义的函数开始执行B、在C语言程序中,要调用的函数必须在main( )函数中定义C、C语言程序总是从main( )函数开始执行D、C语言程序中的main( )函数必须放在程序的开始部分4。
下列关于C语言的说法错误的是(B)。
A)C程序的工作过程是编辑、编译、连接、运行B) C语言不区分大小写.C)C程序的三种基本结构是顺序、选择、循环D) C程序从main函数开始执行5。
下列正确的标识符是(C).A.-a1 B。
a[i] C。
a2_i D。
int t5~8题为相同类型题考点:标识符的命名规则(1)只能由字母、数字、下划线构成(2)数字不能作为标识符的开头(3)关键字不能作为标识符选项A中的“—" ,选项B中“[”与“]"不满足(1);选项D中的int为关键字,不满足(3)6.下列C语言用户标识符中合法的是(B)。
A)3ax B)x C)case D)-e2 E)union选项A中的标识符以数字开头不满足(2);选项C,E均为为关键字,不满足(3);选项D中的“-”不满足(1);7.下列四组选项中,正确的C语言标识符是(C)。
A)%x B)a+b C) a123 D) 123选项A中的“%” ,选项B中“+”不满足(1);选项D中的标识符以数字开头不满足(2)8、下列四组字符串中都可以用作C语言程序中的标识符的是(A)。
A、print _3d db8 aBcB、I\am one_half start$it 3paiC、str_1 Cpp pow whileD、Pxq My->book line#His。
C语言期末考试试卷附参考答案
C语言期末考试一试卷附参照答案序列中 10 个数的次序为:,若使用次序比较法,经过三轮排序后,这10 个数的次序为:。
3. 调用字符串办理函数时,应在程序的开头增添预编译命令:#include<>,puts( )函数将一个以结束的字符序列(字符串)输出到终端4.C 语言中,函数分为系统供给的和用户自定义函数两类,也可分为有参函数和两类。
5.函数的递归调用指在调用一个函数的过程中又。
6.函数值只好经过语句返回主调函数。
四、程序改错(求出两个非零正整数的最大条约数在右侧写出正确内容, 5× 2)#include<stdio.h>int fun(int a, b ){ int r,t;if(a<b) {t=a;b=a;a=t;}r=a%b;while(r!=0){a=b;b=r;r=a/b;}return a;}五、阅读程序写出运转结果(4×5)1.# include<stdio.h>int main( ){ void fun(int x);fun(8);printf("\n");}void fun(int x){if(x/2>0) fun(x/2);printf("%d",x);}运转结果为:3. #include <stdio.h># include<math.h>int main( ){ int i,j,n=0;for(i=― 5;i<=5;i++){ if(i%2!=0) n++;for(j=1;j<=abs(i);j++) printf( “ “);,并作为函数值返回。
在错误下边划横线,void main( ){ int n1,n2,a;printf( “please input n1,n2:\n ”);scanf( “%d%d”,&n1,&n2); a=fun(n1,n2);printf("最大条约数是: %d\n",a);}2.# include <stdio.h>void main ( ){ char s1[ ]=” This book ”;char s2[ ]= ” THIS hook ”;int i;for (i=0;s1[i]!= 0’ &&s2[i]!= 0’i++);if(s1[i]!=s2[i]) printf( “ %c” ,s1[i]);}运转结果为:4.#include <stdio.h>int main( ){int i,j,x;int a[10] ={12,3,14,5,26,97,38,9,0,―2}; for(i=0;i<=9;i++){x=a[i];j=i-1;while(j>=0&&x<a[j])六、程序填空题(结果按次号填在下方对应横线上, 10× 2 分)1、编程实现将十进制整数 n 变换成十六进制 2、编写判断能否为素数的函数,在主函数 数输出。
浙大c期末考试题及答案
浙大c期末考试题及答案一、选择题(每题2分,共20分)1. 以下哪个选项是C语言中合法的变量名?A. 2variableB. variable2C. variable-nameD. variable_name答案:B2. C语言中,哪个关键字用于声明一个整型变量?A. intB. floatC. doubleD. char答案:A3. 以下哪个选项是C语言中正确的字符串声明?A. char str[] = "Hello, World!";B. string str = "Hello, World!";C. char* str = "Hello, World!";D. string str[] = "Hello, World!";答案:A4. 在C语言中,以下哪个运算符用于计算两个数的乘积?A. +C. *D. /答案:C5. 以下哪个选项是C语言中合法的数组声明?A. int array[5] = {1, 2, 3, 4, 5};B. int array[] = {1, 2, 3, 4, 5};C. int array[5] = {1, 2, 3};D. int array = {1, 2, 3, 4, 5};答案:B6. 在C语言中,哪个函数用于计算一个数的平方根?A. sqrt()B. square_root()C. root()D. pow()答案:A7. 以下哪个选项是C语言中正确的函数声明?A. int add(int a, int b);B. int add(a, b);C. int add(int a, b);D. int add(a, int b);答案:A8. 在C语言中,哪个关键字用于创建一个循环,直到满足某个条件?B. whileC. do-whileD. foreach答案:B9. 以下哪个选项是C语言中合法的指针声明?A. int *ptr;B. int ptr*;C. *int ptr;D. ptr int*;答案:A10. 在C语言中,哪个关键字用于定义一个结构体?A. structB. classC. unionD. enum答案:A二、填空题(每题2分,共20分)1. 在C语言中,使用____关键字可以定义一个宏。
2000年秋浙江省计算机等级考试二级C试卷及答案
2000年秋等级(二级C语言)考试试卷试题一、计算机基础题(本题共15分)单选题(每题1分,共10分)1.软盘加上写保护后,对它可以进行的操作是()A.只能读盘,不能写盘B.只能写盘,不能读盘C.既可读盘,又可写盘D.既不能读盘,也不能写盘2.在语言处理程序中,编译程序的功能是()A.解释执行高级语言程序B.将汇编语言程序编译成目标程序C.解释执行汇编语言程序D.将高级语言程序翻译成目标程序3.下列有关计算机病毒的说法中,是错误的。
A.游戏软件常常是计算机病毒的载体B.尽量做到专机专用或安装正版软件,是预防计算机病毒的有效措施C.用消毒软件将一片软盘消毒之后,该软盘就没有病毒了D. 计算机病毒在某些条件下被激活之后,才开始起干扰和破坏作用4.在Window95中,桌面是指。
A.电脑桌面B.活动窗口C.文档窗口D.窗口、图标和对话框所在屏幕背景5.在Windows95资源管理器窗口的左窗格中,文件夹图标含有“+”时,表示该文件夹。
A.只含有文件B.是空文件夹C.含有子文件夹D.只含有文件而不含有文件夹6.以下是用十六进制表示的两个连续的存储单元的内容,其中一定不是汉字编码。
A.A0A0H B.1234H C.BBBBH D.ABCDH7.下列有关Word97格式刷的叙述中,是正确的。
A.格式刷既可以复制字体格式也可以复制段落格式B.格式刷只能复制字体格式C.格式刷只能复制段落格式D.格式刷只能复制纯文本的内容8.在Word97表格中,单元格内能填写的信息。
A.只能是文字B.只能是文字或符号C.只能是图像D.文字、符号、图像均可9.调制解调器的功能是实现。
A.数字信号与模拟信号的转换B.数字信号的整形C.模拟信号的放大D.数字信号的编码10.计算机网络最突出的优点是。
A.存储最大B.资源共享C.运算速度快D.运算精度高填空题(每题1分,共5分)1.CPU是计算机的核心部件,该部件主要由组成。
2.十进制数157.375转换成对应的十六进制数是。
2000年秋浙江省二级C语言笔试试卷
2000年秋浙江省高校非计算机专业学生计算机等级考试试卷(二级C)说明:考生应将全部答案填写在答卷上,否则作无效处理。
考试时间为120分钟。
试题一、计算机基础题(本题共15分)(一)单选题(每题1分,共10分)1.软盘加上写保护后,对它可以进行的操作是(1)。
A.只能读盘,不能写盘B.只能写盘,不能读盘C.既可读盘,又可写盘D.不能读盘,也不能写盘2.在语言处理程序中,编译程序的功能是(2)。
A.解释执行高级语言程序B.将汇编语言程序编译成目标程序C.解释执行汇编语言程序D.将高级语言程序翻译成目标程序3.下列有关计算机病毒的说法中,(3)是错误的。
A.游戏软件常常是计算机病毒的载体B.尽量做到专机专用或安装正版软件,是预防计算机病毒的有效措施C.用消毒软件将一片软盘消毒之后,该软盘就没有病毒了D.计算机病毒在某些条件下被激活之后,才开始起干扰和破坏作用4.在Windows95中,桌面是指(4)。
A.电脑桌B.活动窗口C.文档窗口D.窗口、图标和对话框所在的屏幕背景5.在Windows95资源管理器窗口的左窗格中,文件夹图标含有“+”时,表示该文件夹(5)。
A.只含有文件B.是空文件夹C.含有子文件夹D.只含有文件而不含有文件夹6.以下是用十六进制表示的两个连续的存储单元的内容,其中 6)一定不是汉字编码。
A.A0A0H B.1234H C.BBBBH D.ABCDH7.下列有关Word 97格式刷的叙述中,(7)是正确的。
A.格式刷既可以复制字体格式也可以复制段落格式B.格式刷只能复制字体格式C.格式刷只能复制段落格式D.格式刷只能复制纯文本的内容8.在Word 97表格中,单元格内能填写的信息(8)。
A.只能是文字B.只能是文字或符号C.只能是图像D.文字、符号、图像均可9.调制解调器的功能是实现(9)。
A.数字信号与模拟信号的转换B.数字信号的整形C.模拟信号的放大D.数字信号的编码10.计算机网络最突出的优点是(10)。
c语言编程浙大期末2000级B试卷
2000~2001学年“程序设计基础--C”试卷考试时间: 2001年6月27日下午2:00-4:00注: 请将答案写在答题卷上一、单项选择题(每题2分,共30分)1. ______是合法的用户自定义标识符。
A、b-bB、floatC、<fr>D、_isw2. 若变量已正确定义并赋值,表达式______不符合C语言语法。
A、a*b/c;B、3.14%2C、2, bD、a/b/c3. _____是不正确的字符常量。
A、'\n'B、'1'C、"a"D、'\101'4. 在C 程序中,用_____表示逻辑值“真”。
A、1B、非0 的数C、非1 的数D、大于0 的数5. ______把x、y定义成float类型变量,并赋同一初值3.14。
A、float x, y=3.14;B、float x, y=2*3.14;C、float x=3.14, y=x=3.14;D、float x=y=3.14;6. 若变量已正确定义,表达式______的值不是2。
A、2&3B、1<<1C、a==2D、1^37. 若变量已正确定义,语句“if(a>b) k=0; else k=1;”和______等价。
A、k=(a>b)?1:0;B、k=a>b;C、k=a<=b;D、a<=b ? 0 : 1;8.设变量定义为“int a, b;”,执行下列语句时,输入_____,则a和b的值都是10。
scanf("a=%d, b=%d",&a, &b);A、10 10B、10, 10C、a=10 b=10D、a=10, b=109.下列程序的输出结果是_____。
fun(int a, int b, int c){ c =a*b; }main( ){ int c;fun(2,3,c);printf(”%d\n”,c);}A、0B、1C、6D、无法确定10. 在C程序中,若对函数类型未加说明,则函数的隐含类型为_____。
2022年浙江大学公共课《C语言》科目期末试卷B(有答案)
2022年浙江大学公共课《C语言》科目期末试卷B(有答案)一、填空题1、为建立如图10-5所示的存储结构(即每个结点两个域,data是数据域,next是指向结点的指针域),请将定义补充完整。
struct s{char data;_______}node;2、C语言源程序的基本单位是________3、在C语言源程序中,一个变量代表【】。
4、在C语言中,8作为双目运算符时表示的是_______,而作为单目运算符时表示的是_______。
5、把以下多项式写成只含7次乘法运算,其余皆为加、减运算的C语言表达式为_______。
5x7+3x6-4x5+2x1+x3-6x2+x+106、设x为无符号整数。
表达式x^(~(~0<<n)<<(p+1-n)))的作用是将x 中从第p位开始的n位求反(1变0,0变1),其他位不变。
请按表达式的求值顺序写出分解步骤,并解释含义。
__________________________________7、下面add函数的功能是求两个参数的和,并将和值返回调用函数。
函数中错误的部分是_______,改正后为_______。
void add(float a,float b){float c;c=a+b;return c;}8、下面程序段将输出computer。
请填空。
char c[]="It is a computer";for(i=0;_______;i++){_______;printf("%c",c[j]);}9、下面程序段的运行结果是_______。
int i=5;char c[6]="abcd";do{c[i]=c[i-1];}while(--i>0);puts(c);10、若有以下定义和语句,则在程序中可通过指针pt,用*(pt[i]+j)等4种形式引用数组元素x[i][],另3种形式分别是:_______、_______和_______。
浙江大学“程序设计基础-C”试题卷 (2)
2000~2001学年“程序设计基础--C”试卷考试时间:2000年6月27日下午2:00-4:00注:请将答案写在答题卷上一、单项选择题(每题2分,共30分)1.______是合法的用户自定义标识符。
A、b-bB、floatC、<fr>D、_isw2.若变量已正确定义并赋值,表达式______不符合C语言语法。
A、a*b/c;B、3.14%2C、2,bD、a/b/c3._____是不正确的字符常量。
A、'\n'B、'1'C、"a"D、'\101'4.在C程序中,用_____表示逻辑值“真”。
A、1B、非0的数C、非1的数D、大于0的数5.______把x、y定义成float类型变量,并赋同一初值3.14。
A、floatx,y=3.14;B、floatx,y=2*3.14;C、floatx=3.14,y=x=3.14;D、floatx=y=3.14;6.若变量已正确定义,表达式______的值不是2。
A、2&3B、1<<1C、a==2D、1^37.若变量已正确定义,语句“if(a>b)k=0;elsek=1;”和______等价。
A、k=(a>b)?1:0;B、k=a>b;C、k=a<=b;D、a<=b?0:1;8.设变量定义为“inta,b;”,执行下列语句时,输入_____,则a和b的值都是10。
scanf("a=%d,b=%d",&a,&b);A、1010B、10,10C、a=10b=10D、a=10,b=109.下列程序的输出结果是_____。
fun(inta,intb,intc){c=a*b;}main(){intc;fun(2,3,c);printf(”%d\n”,c);}A、0B、1C、6D、无法确定10.在C程序中,若对函数类型未加说明,则函数的隐含类型为_____。
c语言期末测试题附答案.docx
课程代码: A100002座位号:《计算机技术基础( C语言)》试卷 A 姓名 :学号 :专业 :学院 :班级 :20年月日题号一二三四五六七总分得分第一部分选择题(共30 分)一、得分评卷人单项选择题(本大题共 15小题,每题只有一个正确答案,一题得 2 分,共 30答对分)1、以下关于 C 语言标识符的描述中,正确的是【】。
A)标识符可以由汉字组成B)标识符只能以字母开头C)关键字可以作为用户标识符D)Area与area是不同的标识符2、使下列程序段输出“ 123, 456,78”,键盘输入数据,正确的输入是【】。
int i,j,k;scanf( “%d,%3d%d”,&i,&j,&k);printf( “%d,%d,%dn”,i,j,k);3、判断 char 类型的变量A) (c1>=0)&&(c1<=9)c1 是否为数字字符的正确表达式为B) (c1>= ’0’)&&(c1<=’9’)【】。
C) ’0’<=c1<=’9’D) (c1>=’0’)||(c1<=’9’)4、若有语句 int a=1,b=2,c=3;则以下值为0的表达式是【】。
A)’ a’&&’b’ B )a<=b C )((a>b)||(b<c) D)(!(a+b)==c&&a)5、已知:int a[2][3];则对数组元素的非法引用是【】A. *(a[0]+2)B. a[1][3] C . a[1][0] D. *(*(a+1)+2)6、在循环语句的循环体中执行break语句,其作用是【】。
A)跳出该循环体,提前结束循环B)继续执行 break 语句之后的循环体各语句C)结束本次循环,进行下次循环D)终止程序运行7、执行语句for(i=10;i>0;i--);后,变量i的值为【】。
2000年秋浙江省计算机等级考试二级C试卷及答案
2000年秋等级(二级C语言)考试试卷试题一、计算机基础题(本题共15分)单选题(每题1分,共10分)1.软盘加上写保护后,对它可以进行的操作是()A.只能读盘,不能写盘B.只能写盘,不能读盘C.既可读盘,又可写盘D.既不能读盘,也不能写盘2.在语言处理程序中,编译程序的功能是()A.解释执行高级语言程序B.将汇编语言程序编译成目标程序C.解释执行汇编语言程序D.将高级语言程序翻译成目标程序3.下列有关计算机病毒的说法中,是错误的。
A.游戏软件常常是计算机病毒的载体B.尽量做到专机专用或安装正版软件,是预防计算机病毒的有效措施C.用消毒软件将一片软盘消毒之后,该软盘就没有病毒了D. 计算机病毒在某些条件下被激活之后,才开始起干扰和破坏作用4.在Window95中,桌面是指。
A.电脑桌面B.活动窗口C.文档窗口D.窗口、图标和对话框所在屏幕背景5.在Windows95资源管理器窗口的左窗格中,文件夹图标含有“+”时,表示该文件夹。
A.只含有文件B.是空文件夹C.含有子文件夹D.只含有文件而不含有文件夹6.以下是用十六进制表示的两个连续的存储单元的内容,其中一定不是汉字编码。
A.A0A0H B.1234H C.BBBBH D.ABCDH7.下列有关Word97格式刷的叙述中,是正确的。
A.格式刷既可以复制字体格式也可以复制段落格式B.格式刷只能复制字体格式C.格式刷只能复制段落格式D.格式刷只能复制纯文本的内容8.在Word97表格中,单元格内能填写的信息。
A.只能是文字B.只能是文字或符号C.只能是图像D.文字、符号、图像均可9.调制解调器的功能是实现。
A.数字信号与模拟信号的转换B.数字信号的整形C.模拟信号的放大D.数字信号的编码10.计算机网络最突出的优点是。
A.存储最大B.资源共享C.运算速度快D.运算精度高填空题(每题1分,共5分)1.CPU是计算机的核心部件,该部件主要由组成。
2.十进制数157.375转换成对应的十六进制数是。
大一上c语言期末考试题库及详解答案
大一上c语言期末考试题库及详解答案在大一上学期的C语言课程中,期末考试通常涵盖了C语言的基础知识、数据类型、控制结构、函数、数组、指针以及结构体等核心概念。
以下是一份模拟的期末考试题库及详解答案,供同学们复习参考。
1. 以下哪个选项是C语言中的合法标识符?A. 2variableB. variable2C. _variableD. variable-2答案:B, C。
在C语言中,标识符可以由字母、数字和下划线组成,但不能以数字开头。
2. C语言中,int类型变量占用的字节数是多少?A. 1B. 2C. 4D. 8答案:C。
在大多数现代计算机系统中,int类型变量占用4个字节。
3. 以下哪个选项是正确的C语言语句?A. int a = 10;B. int a = '10';C. int a = "10";D. int a = 10.0;答案:A。
在C语言中,整型变量应该使用整数值进行初始化。
4. 以下哪个选项是C语言中的选择结构?A. if-elseB. switch-caseC. whileD. for答案:A, B。
if-else和switch-case是C语言中的选择结构,用于根据不同的条件执行不同的代码块。
5. 以下哪个选项是C语言中的循环结构?A. if-elseB. switch-caseC. whileD. for答案:C, D。
while和for是C语言中的循环结构,用于重复执行一段代码直到满足某个条件。
6. 以下哪个选项是C语言中的数组声明?A. int arr[5];B. int arr[];C. int arr = 5;D. int [5]arr;答案:A, B。
在C语言中,数组可以声明为固定大小(如A选项)或者声明为动态大小(如B选项)。
7. 以下哪个选项是C语言中的指针声明?A. int *ptr;B. int ptr[];C. int ptr = 0;D. int *ptr = nullptr;答案:A, D。
浙江省高等学校(C语言)试卷及参考答案
(4)A、+=item C、1.0/item
B、sum=-1 C、sum=n
B、i>n D、i>=n
B、item=item+i D、item=item/i B、item D、sum+item
ቤተ መጻሕፍቲ ባይዱ
2.阅读下列程序说明和程序,在每小题提供的若干可选答案中,挑选一个正确答案。 【程序说明】先输入一个正整数 n(1≤n≤10),再输入 n 个从小到大有序排列的整数,并
n= (9) ; for(i=0;i<n;i++){ [j]!='\0';j++){
for( (10) ;str
putchar(str[j]);
} for( (11) ;j<i;j++){ pu tchar(str[j]);
C 程序设计试卷第 2 页(共 6 页)
} (12) ;
} }
【供选择的答案】
一、程序阅读与填空(24 小题,每小题 3 分,共 72 分)
1.阅读下列程序说明和程序,在每小题提供的若干可选答案中,挑选一个正确答案。
【程序说明】
输入一个正整数 n,计算并输出 1 + 1/2!+ /3! + … + 1/n! 的值。
【程序】
#include <stdio.h> void main()
else low=mid+1; } if(low<=high) printf("Index is %d \n",mid); else printf("Not Found\n"); }
大一上c语言期末考试试题及答案
大一上c语言期末考试试题及答案一、选择题(每题2分,共20分)1. C语言中,以下哪个关键字用于定义一个函数?A. intB. returnC. functionD. void答案:A2. 在C语言中,哪个运算符用于取模运算?A. %B. /C. *D. -答案:A3. 下列哪个选项是C语言中的合法标识符?A. 2variableB. variable2C. -variableD. variable!答案:B4. 在C语言中,以下哪个选项不是控制语句?A. ifB. switchC. forD. include答案:D5. C语言中,用于定义数组的关键字是?A. arrayB. listC. vectorD. int答案:D(注意:在C语言中,定义数组时不需要特定的关键字,而是直接使用数据类型后跟数组名和大小,如int array[10];但根据题目的选项,D是最接近正确答案的)6. 下列哪个选项是C语言中的逻辑运算符?A. &&B. ||C. !D. 以上都是答案:D7. 在C语言中,哪个函数用于输入?A. scanfB. printfC. coutD. cin答案:A8. 下列哪个选项是C语言中的字符串字面量?A. "Hello World"B. 'Hello World'C. "Hello" "World"D. 'Hello' 'World'答案:A9. 在C语言中,哪个函数用于输出?A. scanfB. printfC. coutD. cin答案:B10. C语言中,以下哪个选项是正确的二维数组声明?A. int array[3][2];B. int array[3][];C. int array[][2];D. int array[][];答案:A二、填空题(每题2分,共20分)1. 在C语言中,定义一个整型变量并初始化为10,应使用语句:inta = _______; 答案:102. C语言中,用于计算两个数的和的表达式是:a + _______; 答案:b3. 若有定义:int a = 5; float b = 3.14;,则表达式a + b的结果是:_______; 答案:8.144. C语言中,用于定义一个字符型变量并赋值为'A'的语句是:char c = _______; 答案:'A'5. 在C语言中,若要比较两个字符串是否相等,可以使用函数:strcmp(s1, s2),若s1和s2相等,则该函数返回值为:_______; 答案:06. C语言中,若要交换两个变量的值,可以使用以下语句:temp = a;a = b;b = _______; 答案:temp7. 在C语言中,若要计算一个数的绝对值,可以使用函数:abs(x),其中x为需要计算绝对值的数,该函数的返回类型是:_______; 答案:int8. C语言中,若要使用一个函数,需要先进行_______;答案:声明或定义9. 在C语言中,若要定义一个指针变量,可以使用以下语句:int *p; 其中p是一个指向_______类型的指针;答案:int10. C语言中,若要定义一个结构体变量,可以使用以下语句:struct Student { int id; char name[20]; } stu; 其中stu是一个_______类型的变量;答案:Student三、编程题(每题10分,共60分)1. 编写一个C语言程序,计算并输出1到100之间所有奇数的和。
(2021年整理)浙大版C语言程序设计期末考试模拟题2
(完整版)浙大版C语言程序设计期末考试模拟题2编辑整理:尊敬的读者朋友们:这里是精品文档编辑中心,本文档内容是由我和我的同事精心编辑整理后发布的,发布之前我们对文中内容进行仔细校对,但是难免会有疏漏的地方,但是任然希望((完整版)浙大版C语言程序设计期末考试模拟题2)的内容能够给您的工作和学习带来便利。
同时也真诚的希望收到您的建议和反馈,这将是我们进步的源泉,前进的动力。
本文可编辑可修改,如果觉得对您有帮助请收藏以便随时查阅,最后祝您生活愉快业绩进步,以下为(完整版)浙大版C语言程序设计期末考试模拟题2的全部内容。
1、C语句必须用一个分号作为结束.A、正确B、错误解答:A正确答案:A,结果:正确2、设有以下定义”int a[10],*p=a;”,则*p被赋初值为数组元素a[0]的地址。
A、正确B、错误解答:B3、设变量定义为char cc[]="12\n345”,则表达式sizeof(cc) 的值是7。
A、正确B、错误正确答案:A,结果:正确4、若执行fopen函数时发生错误,则函数的返回值是0。
A、正确B、错误正确答案:A,结果:正确5、在函数内部定义的变量称为局部变量。
A、正确B、错误正确答案:A,结果:正确6、在c程序中,else的个数不能多于if的个数。
A、正确B、错误正确答案:A,结果:正确7、若函数f()要返回表达式a+b的值,则必须写成return (a+b)。
A、正确B、错误解答正确答案:B,结果:正确8、有以下语句,输出结果是:0int x=40,y=4,z=4;x=x==(y=z);printf("%d\n",x);A、正确B、错误正确答案:A,结果:正确9、表达式3。
14%2 不符合C语言语法。
A、正确B、错误正确答案:A,结果:正确10、对于下列for循环语句,循环一次也不能执行A、正确B、错误正确答案:A,结果:正确二、单选题。
请从给定的选项中选择一个唯一正确的选项.每小题2分,共10题,20分。
C语言程序设计期末考试卷及答案.doc
..C语言程序设计期末考试卷及答案一、单项选择题。
从A 、B 、C 、D 四个选项中,选择一个最佳答案填入括号内( 每小题1分,共计30分)。
1.一个C 语言程序的执行是从( )。
A )本程序文件的第一个函数开始,到本程序文件的最后一个函数结束B )本程序的main 函数开始,到main 函数结束C )本程序的main 函数开始,到本程序文件的最后一个函数结束D )本程序文件的第一个函数开始,到本程序的main 函数结束2.下列选项中不属于...C 语言关键字的是( )。
A )switch B )printf C )default D )case3.设有语句 int a = 4; ,则执行了语句 a += a -= a * a; 后,变量a 的值是( )。
A )24B ) -24C )4D )164.已知int i;float d;,则正确的表达式是( )。
A )(int d)B )int(d)%iC )(int)d%iD )int(d%i)5.已知int i,a;,执行语句i=(a=3*9,a/5),a+11; 后,变量i 的值是( )。
A )5B )16C )27D )386.下列选项中合法的字符型常量是( )。
A )"a"B )'\n'C )"\n"D )a7.下面程序的运行结果是( )。
#include <stdio.h> void main( ) { int k = 15;printf("k = %d,k = %o,k = %x\n",k,k,k); }A )k = 15,k = 15,k = 15B )k = 15,k = 17,k = 17C )k = 15,k = 017,k = 0xfD )k = 15,k = 17,k = f8.已知a,b,c 为int 类型,执行语句:scanf ("%d%d%d",&a,&b,&c );使得a 为10,b 为20,c 为30,以下不正确...的输入形式是( )。
大一上c语言期末考试题库及详解答案
大一上c语言期末考试题库及详解答案大一上C语言期末考试题库及详解答案一、选择题(每题2分,共20分)1. C语言中,以下哪个是合法的变量名?A. 2variableB. variable-nameC. variable_nameD. variable-name2答案:C2. 下列哪个选项是C语言中的关键字?A. defineB. ifC. caseD. switch答案:B3. 在C语言中,以下哪个语句是正确的?A. int a = 10;B. int a = "10";C. int a = 10.0;D. int a = 0x10;答案:A4. C语言中,以下哪个是正确的数组声明?A. int numbers[];B. int numbers[10] = {};C. int numbers = 10;D. int numbers[10] = {1, 2, 3};答案:B5. 下列哪个不是C语言的标准输入输出函数?A. printf()B. scanf()C. getchar()D. puts()答案:C二、填空题(每空2分,共20分)1. 在C语言中,一个整型变量int占用的字节数是______。
答案:4(或根据实际情况填写)2. 以下代码段的输出结果是______。
```cint main() {int a = 10;printf("%d", a);return 0;}```答案:103. 在C语言中,若要声明一个字符数组并初始化,可以使用______。
答案:char array[] = "Hello";4. 以下代码段的输出结果是______。
```cint main() {for (int i = 0; i < 5; i++) {printf("%d ", i);}return 0;}```答案:0 1 2 3 45. 在C语言中,若要实现字符串的复制,可以使用______函数。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
z=*x+y+z; printf("%d, %d, %d#", *x, y, z); } void main() { int x=1, y=5, z=9; p(&x, y); printf("%d, %d, %d#", x, y, z); } 4. 若输入 -6+15*3/5=<回车> , 则以下程序的输出结果是_______。 #include <stdio.h> void main() { int m=0, sum=0; char c, oldc='+'; do {
#define A 10
#define B (A<A+2)-2
printf("%d", B*2);
4. 写出判断字符变量 c 是英文字母的表达式
。
5. 写出下列程序段的输出结果。
int k, x;
for (k=0, x=0; k<=9&&x!=10; k++)
x+=2;
printf ("%d, %d", k, x) ; 6. 写出下列程序段的输出结果。
c=getchar(); if(c<='9'&&c>='0') m=10*m+c - '0'; else {
if(oldc=='+') sum += m; else sum -= m; m=0; oldc=c; printf("%d, ", sum); } } while(c!='='); }
四、程序填空题(每空 2 分,共 20 分)
for(c=getchar(); getchar()!=’#’; c=getchar())
putchar(c);
}
10. 执行程序 find –nx ould text.txt 时,*++argv[1]的值是_______。 三、程序阅读题(每题5分,共20分)
1. 若输入 3 1 2 3 <回车> , 则以下程序的输出结果是_______。
二、填空题(每小题 2 分,共 20 分)
1. 写出下列程序段的输出结果。 float x1, x2;
x1=3/2; x2=x1/2; printf("%d, %.1f", (int)x1, x2) ; 2. 表达式 (7<<1>>2^2 ) 的值是_______。 3. 写出下列程序段的输出结果。
main()
{
char
name[10];
int mark;
struct link * t;
while ( 1 ) {
scanf("%s %d", name, &mark); if ( strcmp(name, "#") == 0 ) break; ______(1)_______; } for (t=head; ______(2)_______) printf("<%s>: %d\n", t->name, t->mark); } void insert(char * name, int mark) { struct link * p; p = ______(3)_______ ; strcpy(p->name, name); p->mark = mark; ______(4)_______; if ( head != NULL ) ______(5)_______; head = p; } 2. prog.c 是带命令行参数的程序。运行 prog filename 时,将文本文件 filename 中的内容原样 输出;运行 prog -u filename 时,将文本文件 filename 中的所有字母以大写方式输出(其余 字符原样输出);运行 prog -d filename 时,只将文本文件 filename 中的数字输出。 # include <stdio.h> # include <ctype.h> void main(int argc, char * argv[]) { FILE *fp; char * filename, ch; int tag=0; if (argc <2 || argc>3) { printf(“Argument error\n”); return; } if (argc == 3) { if (strcmp(argv[1], “-u”) == 0) tag=1; else if (strcmp(argv[1], “-d”) == 0) tag=2; else {printf(“Option error\n”); return;} ______(6)_______; } else filename = argv[1]; if (______(7)_______) { printf(“Cannot open file\n”); return; } while (______(8)_______ ) { ch = fgetc(fp); if ( tag == 0 ) putchar(ch); else if ( tag == 1 ) ______(9)_______; else if ( ______(10)_______) putchar(ch); } fclose(fp); }
五、编程题 ( 共 10 分,混合班学生做第2题,其他学生做第1题)
1. [程序说明] (10 分) 输入 m 和 n(m≥n≥0)后,计算下列表达式的值并输出。 m! n!*(m-n)! 要求将计算阶乘的运算写成函数 fact(n),函数返回值的类型为 float。
2. [程序说明] (10 分) 编写函数 strcmp(char * s1, char * s2)。若 s1 和 s2 均是数字串(包括+/-号),则按照十进制
} 2. 若输入89 76 24 25 9 8 11 16 35 4 <回车> , 则以下程序的输出结果是_______。
#include "stdio.h" #define N 10 main() {
int x[N], y1[N], y2[N]; int i, j, n1, n2, t, p; n1=n2=0; for(i=0;i<N;i++){
C、“/*”和”*/” D、“*/”和”/*”
2. 下列运算符中,优先级最低的是_____。
A、*
B、!=
C、+
D、=
3. 若变量已正确定义,表达式 (j=3, j++) 的值是_____ 。
A、3
B、 4
C、5
D、0
4. 已知字符 ‘a’ 的 ASCII 码为 97 ,执行下列语句的输出是_____。
struct {
int len;
char *str;
} *p;
A、指针 str 上 B、指针 p 上
C、str 指的内容上
15. 对于如下说明,语法和语义都正确的赋值是_____。
int c, *s, a[]={1, 3, 5};
A、c=*s;
B、 s[0]=a[0];
C、s=&a[1];
D、以上均不是 D、 c=a;
2000~2001 学年《程序设计基础-C》试卷
考试时间: 2000 年 12 月 31 日上午 8:30-10:30
注: 请将答案写在答卷上
一、单项选择题(每小题 2 分,共 30 分)
1. C 语言程序中可以对程序进行注释,注释部分必须用符号_____括起来。
A、‘{‘ 和’}’ B、‘[‘和’]’
A、 i!=0 && j!=0 B、i*j!=0
C、!(i==0 || j==0) D、i&&j
9. 若 a 是基本整型变量,c 是单精度实型变量,输入语句______是错误的。
A、scanf(”%d,%f”, &a, &c);
B、scanf(”d=%d, c=%f”, &a, &c);
C、scanf(”%d%f”, &a, &c);
#include "stdio.h"
void main()
{ int i, j, n, a[10]; scanf("%d", &n); for (i=0; i<n; i++) scanf("%d",&a[i]); for (i=0; i<n; i++) for (j=0; j<n; j++) printf("%d, ", a[(i+j)%n]);
if(y2[p]<y2[j]) p=j; if(p!=i){
t=y2[i]; y2[i]=y2[p]; y2[p]=t; } } for(i=0; i<n1; i++) printf("%d, ", y1[i]); for(i=0; i<n2; i++) printf("%d, ", y2[i]); } 3. 以下程序的输出结果是_______。 #include <stdio.h> int z; void p(int *x, int y) { ++*x; y--;
1. 下列程序的功能是创建单向链表。
#include <stdio.h>
#include <alloc.h>