C语言 期末考试试题(含答案)

合集下载

C语言程序设计期末考试试题 含答案

C语言程序设计期末考试试题 含答案

C语言程序设计期末考试试题含答案第一部分:选择题(每题5分,共40分)1. 下列选项中,不是C语言基本数据类型的是:A. intB. floatC. doubleD. string答案:D2. 在C语言中,for循环和while循环的区别是:A. for循环适用于已知循环次数,while循环适用于未知循环次数B. for循环必须有循环条件,while循环可以没有循环条件C. for循环只能用于数字计算,while循环可以用于任意类型的循环D. for循环和while循环没有区别答案:A3. 下列哪个选项是合法的变量名:A. 123varB. _varD. %var答案:B4. 在C语言中,使用printf函数输出一个整数变量的值,应该使用下列哪个占位符:A. %fB. %cC. %dD. %s答案:C5. 下列代码中,输出的结果是什么:```cint a = 5;printf("%d\n", a++);printf("%d", a);```A. 6 5B. 6 6C. 5 6答案:A6. 下列哪个选项中的函数可以用来比较两个字符串是否相等:A. strcmpB. strcatC. strlenD. strcpy答案:A7. 当我们在编写C语言程序时,通常会将一些常用的函数或者代码片段写成一个个独立的文件,这些文件通常以什么扩展名来保存:A. .cB. .hC. .txtD. .exe答案:B8. 下列代码中,缺少的语句是什么:```cint a = 10;int b = 20;int c = a + b;```A. return c;B. printf("%d", c);C. break;D. continue答案:B第二部分:编程题(每题30分,共60分)题目1:编写一个C程序,实现求取一个整数数组中元素的平均值。

要求通过函数实现,函数原型为:float average(int arr[], int length),其中arr为整数数组的首地址,length为数组的长度。

c语言期末考试题及其答案

c语言期末考试题及其答案

C语言期末考试题及其答案一选择题(7分,每小题0.5分)1。

C语言源程序的基本单位是(B)。

A 过程B 函数C 子程序D 标识符2。

下列程序的输出结果是(C )。

main(){int a=7,b=5;printf("%d\n",b=b/a);}A 5B 1C 0 D不确定值3.假设变量a,b均为整型,表达式(a=5,b=2,a>b?a++:b++,a+b)的值是(B )。

A 7B 8C 9D 24。

设a为int型变量,执行下列赋值语句后,a的取值分别是( ).a=125.534;a=(int)125。

521%4;a=5〈〈2;A 125,31,1B 125,1,20C 125,31,20D 125。

534,2,205。

设有如下程序段,下面描述中正确的是(C )。

int k=10;while(k=0) k=k—1;A 循环执行一次B循环是无限循环C循环体语句一次也不执行D循环体语句执行一次6。

以下程序的输出结果为(D ).int i;void prt( ){for(i=5;i〈8;i++)printf("%c”,’*’);printf("\t”);}main(){for(i=5;i〈=8;i++) prt();}A ***B *** ****** ***C *** ***D * **7。

在C语言程序中,以下说法正确的是(A)。

A函数的定义可以嵌套,但函数的调用不可以嵌套B函数的定义不可以嵌套,但函数的调用可以嵌套C函数的定义和函数的调用都不可以嵌套D函数的定义和函数的调用都可以嵌套8。

以下函数调用语句中含有(A )个实参。

func((e1,e2),(e3,e4,e5));A 2B 3C 5D 语法错误9。

以下程序的输出结果为()。

#define ADD(x)x*xmain( ){int a=4,b=6,c=7,d=ADD(a+b)*c;printf("d=%d",d);}A d=70B d=80C d=140D d=70010。

c语言期末试题及答案及详解

c语言期末试题及答案及详解

c语言期末试题及答案及详解一、选择题(每题2分,共20分)1. 下列哪个选项是C语言中的关键字?A. defineB. caseC. functionD. include答案:B2. C语言中,用于定义一个结构体的关键字是:A. structB. unionC. enumD. typedef答案:A3. 若有以下代码:```cint a = 5, b = 10;a = a + b;b = a - b;a = a - b;```执行后变量a的值是:A. 5B. 10C. 15D. 0答案:B4. 下列关于指针的描述,错误的是:A. 指针可以指向一个变量B. 指针可以指向一个数组C. 指针可以指向一个函数D. 指针不可以指向一个指针答案:D5. 在C语言中,以下哪个函数用于将字符串从源字符串复制到目标字符串?A. strcpyB. strcatC. strcmpD. strlen答案:A6. 下列哪个选项是C语言中合法的数组声明?A. int arr[5] = {0, 1, 2, 3, 4};B. int arr[] = {0, 1, 2, 3, 4};C. int arr[5] = {0, 1, 2};D. int arr[] = {0, 1, 2, 3};答案:B7. C语言中,以下哪个运算符用于执行按位与操作?A. &&B. ||C. &D. &&答案:C8. 下列关于函数的描述,正确的是:A. C语言中的函数可以没有返回值B. C语言中的函数可以返回多个值C. C语言中的函数可以重载D. C语言中的函数可以嵌套定义答案:A9. 在C语言中,以下哪个选项是正确的文件操作函数?A. fopenB. fcloseC. fgetcD. All of the above答案:D10. 下列关于C语言中循环的描述,错误的是:A. for循环可以嵌套使用B. while循环可以和do-while循环嵌套使用C. do-while循环至少执行一次D. break语句可以跳出循环体答案:B二、填空题(每题2分,共20分)1. 在C语言中,用于定义一个整型变量的关键字是________。

完整word版,C语言程序设计期末考试试题(含答案)

完整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语言程序设计期末考试试题含答案

C语言程序设计期末考试试题含答案一、选择题(每题 3 分,共 30 分)1、以下选项中,不是 C 语言关键字的是()A intB floatC charD string答案:D解释:string 不是 C 语言的关键字,C 语言中表示字符串通常使用字符数组。

2、以下能正确表示八进制整数的是()A 018B 0x18C 0o18D 18答案:C解释:在 C 语言中,八进制整数以 0 开头,数字取值范围 0 7,所以 0o18 能正确表示八进制整数。

3、若有定义:int a = 5, b = 2; 则表达式 a / b 的值是()A 25B 2C 20D 3答案:B解释:在 C 语言中,两个整数相除,结果为整数,舍去小数部分,所以 5 / 2 的结果是 2 。

4、以下程序段的输出结果是()int x = 10;printf("%d\n",++x);A 10B 11C 9D 12答案:B解释:++x 是先将 x 的值增加 1,然后再使用 x 的值,所以输出11 。

5、若有定义:int a5 ={1, 2, 3, 4, 5};则 a2的值是()A 2B 3C 4D 5答案:B解释:数组下标从 0 开始,所以 a2的值是 3 。

6、以下函数声明中,正确的是()A void fun(int a, b);B void fun(int a, int b);C void fun(int a; int b);D void fun(int, int);答案:B解释:函数参数列表中,每个参数都需要明确指定其类型,所以 B 选项正确。

7、若有定义:char str ="hello";则 sizeof(str)的值是()A 5B 6C 20D 不确定答案:B解释:str 数组不仅包含字符'h','e','l','l','o',还包含一个字符串结束符'\0',所以 sizeof(str)的值是 6 。

c语言期末复习试题附答案

c语言期末复习试题附答案

试卷编号:1120所属语言:C语言试卷方案:C语言期末考试试卷总分:100分共有题型:4种一、单项选择共30题(共计60分)第1题(分)设有定义:int k=0;,以下选项的四个表达式中与其他三个表达式的值不相同的是(A ).A:k++B:k+=1C:++kD:k+1第2题(分)已知int i=5,执行语句i+=++i后,i的值是(C).A:10B:llC:12D:A、B、C都不对第3题(分)以下程序的功能是:给r输入数据后,计算半径为r的圆面积s.程序在编译时出错. ttinclude <>void main()/* Beginning */{ int r;float s;scanf (〃%d〃,&r);s=p*r*r; printf (〃s=%f\n〃,s);出错的原因是(D).A:注释语句书写位置错误B:存放圆半径的变量r不应该定义为整型C:输出语句中格式描述符非法D:计算圆面积的赋值语句中使用了非法变量第4题(分)〃\\\〃 ABC\〃 \\〃的长度是(B ).A:llB:7C:5D:3第5题(分)已知int j, i=l执行语句j=-i++;后,j的值是(C ).A:1B:2串中的内容为“abcdefg”时,c 所指数组中的内容应该为 “lg2f3e4dcba” 。

*/ttinclude <>#include <>#include <>void fun ( char char *b, char *c )int i , j;char ch;i = 0;j 二 strlen(b)-l;/**********FOUND**********/ch = b [ i];b[j] = ch; i++; j —;/**********FOUND**********/while ( *a &&*b )//此处&&改为| | (逻辑或)if ()*c =*a;c++;/**********FOUND**********/a+;)if ( *b )*c 二*b; c++;b++;*c = 0;main()char sl[100],s2[100],t[200];clrscr ();printf (,z \nEnter si string : 〃);scanf (〃如〃,si);printf (,z \nEnter s2 string : 〃);scanf (〃%s 〃, s2);fun( si, s2, t );printf (/z \nThe result is : %s\n 〃,t );i j四、程序设计共1题(共计20分)第1题(分)/*【程序设计】功能:判断一个整数w 的各位数字平方之和能否被5整除, 可以被5整除则返回1,否则返回0。

c语言期末考试试题及答案

c语言期末考试试题及答案

1. 一个C程序的组成部分可以是().A)一个主函数和一至若干个其他函数B)一至若干个主函数C)一个主程序和一至若干个其他函数D)一个主程序和一至若干个子程序2. 一个C程序的执行是从()。

(A)本程序的main函数开始,到main函数结束(B)本程序文件的第一个函数开始,到本程序文件的最后一个函数结束(C)本程序的main函数开始,到本程序文件的最后一个函数结束(D)本程序文件的第一个函数开始,到本程序main函数结束3. C语言中的标识符只能由字母、数字和下划线三种字符组成,且第一个字符()。

A)必须为字母B)必须为下划线C)必须为字母或下划线D)可以是字母、数字和下划线中任一种字符4. 设有定义:int m=1,n=—1;则执行语句printf(”%d\n",(m-—&++n);后的输出结果是()。

A)–1 B)0 C) 1 D) 25。

表达式11&10的结果用二进制表示为()。

A)11B)3C)1D)106。

设有语句int a=3;则执行语句a+=a—=a*a后,变量a的值是().(A)3(B)0(C)9(D)-127. 在下列选项中,不的赋值语句是()。

A)t/=5;B)n1=(n2=(n3=0));C)k=i==j;D)a=b+c=1;8. 下列()表达式不满足:当x的值为偶数时值为”真”,为奇数时值”假"。

A)X%2==0B)!x%2!=0C)(x/2*2-x)==0D)!(x%2)9。

若有定义:int a=8, b= 5, c;执行语句c=a/b+0.4 后c的值为()A) 1.4 B)1 C)2。

0 D)210. 假设a=3,b=4,c=5,则逻辑表达式:!(a+b)+c—1&&b+c/2的值是().A)true B)false C)0D) 111。

若int a=3,b=4;则执行c=a++>2||b-->=4之后,b变量的值为()。

A)3B)0C)4D)212。

C语言期末考试试题及答案

C语言期末考试试题及答案

C语言期末考试试题及答案------------------------------------------作者------------------------------------------日期C语言期末考试试卷共  页 第  页一、单选题(每题 分,共 分).以下叙述正确的是 ♉♉♉♉♉♉ 。

✌) 程序的每行只能写一条语句 ✆语言本身没有输入输出语句)在 程序中,注释说明只能位于一条语句的后面)在多函数的程序中,❍♋♓⏹函数必须放在其它子函数的定义之前.以下不正确的常量表示形式是 ♉♉♉♉♉♉ 。

✌✆  ✆✠☞ ✆‘ ’✆ ☜ 以下不正确的变量名是 ♉♉♉♉♉♉ 。

✌✆  ✆ ♉❍♋⌧ ✆ ✋☠❆✆ ✞ 以下正确的一组语句是 ♉♉♉♉♉♉♉♉。

✌✆ ♓⏹♦ ⌧⍓✆ ♓⏹♦ ⏹ ♦♍♋⏹♐☎✂♎✂⏹✆♓⏹♦ ♋☯⏹✆ ♍♒♋❒ ♋✉☐ ☐♋ ✆ ♍♒♋❒ ♦☯ ♦✂♒♏●●☐✂ 若以下变量均已正确定义和赋值,则正确的语句是 ♉♉♉♉♉♉♉♉。

✌✆ ♋♌✆ ⍓⌧ ✆ ⌧⍓ ✆ ⏹✉.下面各组中与给出的程序段功能不等价的是 ♉♉♉♉♉♉♉♉。

♓♐☎♋✆ ♌♏●♦♏ ♓♐☎♋✆ ♌♏●♦♏ ♌✌✆♓♐☎♋✆ ♌ ✆♓♐☎♋✆ ♌✆♓♐☎♋✆ ♌ ✆♓♐☎♋✆♓♐☎♋✆ ♌ ♏●♦♏♓♐☎♋✆ ♌ ♓♐☎♋✆ ♌♓♐☎♋✆ ♌ ♓♐☎♋✆ ♌♏●♦♏ ♌ ♓♐☎♋✆ ♌♏●♦♏ ♌♓♐☎♋✆ ♌ 运行下面程序段,若输入♋♌♍✁,则程序输出是:♉♉♉♉♉♉♉♉。

♍♒♋❒ ♍♓⏹♦ ❖❖♦♒♓●♏☎☎♍♑♏♦♍♒♋❒☎✆✆✐✁✆ ♦♦♓♦♍♒☎♍✆ ♍♋♦♏ ♋❖♎♏♐♋◆●♦ ❖❖♍♋♦♏ ♍❖❝❝☐❒♓⏹♦♐☎✂❖♎❖♎⏹✂❖❖✆✌✆ ✆ ✆  ✆共  页 第  页共  页 第 页共  页 第  页.对♐☐❒☎表达式  表达式 ✆⑤❝可以理解为:♉♉♉♉♉♉♉♉。

大学C语言期末考试练习题(带详解答案)

大学C语言期末考试练习题(带详解答案)

大学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.-a1B.a[i]C.a2_iD.intt5~8题为相同类型题考点:标识符的命名规则(1)只能由字母、数字、下划线构成(2)数字不能作为标识符的开头(3)关键字不能作为标识符选项A中的“-”,选项B中“[”与“]”不满足(1);选项D中的int为关键字,不满足(3)6.下列C语言用户标识符中合法的是(B)。

A)3a某B)某C)caeD)-e2E)union选项A中的标识符以数字开头不满足(2);选项C,E均为为关键字,不满足(3);选项D中的“-”不满足(1);7.下列四组选项中,正确的C语言标识符是(C)。

A)%某B)a+bC)a123D)123选项A中的“%”,选项B中“+”不满足(1);选项D中的标识符以数字开头不满足(2)8、下列四组字符串中都可以用作C语言程序中的标识符的是(A)。

A、print_3ddb8aBcB、I\\amone_halftart$it3paiC、tr_1CpppowwhileD、P某qMy->bookline#Hi.age选项B中的“\\”,”$”,选项D中“>”,”#”,”.”,”-”不满足(1);选项C中的while为关键字,不满足(3)9.C语言中的简单数据类型包括(D)。

c语言期末考试试题及答案

c语言期末考试试题及答案

c语言期末考试试题及答案一、选择题(每题2分,共20分)1. C语言中,用于定义一个结构体的关键字是:A. structB. unionC. enumD. typedef答案:A2. 下列哪个选项是C语言的合法整数常量?A. 0x12B. 0123C. 12.34D. 1.2e3答案:A3. 在C语言中,用于将字符串复制到另一个字符串的函数是:A. strcpyB. strcatC. strcmpD. strlen答案:A4. 下列关于C语言函数的描述,错误的是:A. 函数可以返回一个值B. 函数可以没有返回值C. 函数可以有多个返回值D. 函数可以没有参数答案:C5. 在C语言中,用于声明一个指针变量的语法是:A. int *p;B. int *p = 0;C. int p*;D. int p = *0;答案:A6. 下列关于C语言数组的描述,正确的是:A. 数组的大小在声明时确定B. 数组的大小在运行时确定C. 数组的大小可以动态改变D. 数组的大小可以是任意值答案:A7. 在C语言中,用于打开文件的函数是:A. fopenB. fcloseC. freopenD. fgetc答案:A8. 下列关于C语言中文件操作的描述,错误的是:A. 文件指针必须指向有效的文件B. 文件指针可以指向标准输入输出流C. 文件指针可以是任意值D. 文件指针可以用于读写操作答案:C9. 在C语言中,用于输出格式化字符串的函数是:A. printfB. scanfC. sprintfD. fprintf答案:A10. 下列关于C语言中指针的描述,正确的是:A. 指针可以存储变量的地址B. 指针可以存储变量的值C. 指针可以存储函数的地址D. 指针可以存储数组的地址答案:A二、填空题(每题2分,共20分)1. 在C语言中,使用________运算符可以获取变量的地址。

答案:&2. C语言中,使用________运算符可以对指针进行递增操作。

数据结构c语言期末考试试题及答案

数据结构c语言期末考试试题及答案

数据结构c语言期末考试试题及答案一、选择题(每题2分,共20分)1. 在C语言中,以下哪个关键字用于定义结构体?A. structB. unionC. enumD. typedef答案:A2. 在C语言中,以下哪个函数用于创建链表节点?A. mallocB. callocC. reallocD. free答案:A3. 如果一个链表的头指针为NULL,这意味着什么?A. 链表为空A. 链表已满C. 链表正在使用中D. 链表已损坏答案:A4. 在C语言中,以下哪个数据结构允许快速随机访问?A. 链表B. 数组C. 栈D. 队列5. 在二叉树中,以下哪个术语描述了没有子节点的节点?A. 根节点B. 叶节点C. 内部节点D. 父节点答案:B6. 以下哪个算法用于在二叉搜索树中查找一个元素?A. 深度优先搜索B. 广度优先搜索C. 插入排序D. 二分查找答案:D7. 在C语言中,以下哪个关键字用于定义一个函数?A. intB. voidC. returnD. struct答案:A8. 以下哪个选项是正确的递归函数定义?A. int fact(int n) { if (n > 1) return n * fact(n-1); else return 1; }B. int fact(int n) { if (n > 1) return n * fact(n); else return 1; }C. int fact(int n) { if (n > 1) return n * fact(n+1); else return 1; }D. int fact(int n) { if (n > 1) return n; else return 1; }9. 在C语言中,以下哪个函数用于释放动态分配的内存?A. mallocB. callocC. reallocD. free答案:D10. 在C语言中,以下哪个关键字用于定义一个指针?A. intB. charC. *D. &答案:C二、填空题(每题2分,共20分)1. 在C语言中,结构体的成员可以通过其结构体变量名和______访问。

C语言期末考试试题及详细答案

C语言期末考试试题及详细答案

选择练习题1、C 语言中最简单数据类型包括( B )。

A 、整型,实型,逻辑型B 、整型,实型,字符型C 、整型,字符型,逻辑型D 、整型,实型,逻辑型,字符型 2、C 语言中,运算对象必须是整型数运算符是(A )。

A 、%B 、/C 、%和/D 、*3、为表示关系x <y <z ,应使用C 语言表达式( A )。

A 、(x <y)&&(y <z )B 、(x <y)AND (y <z)C 、(x <y <z)D 、(x <y) &(y <z)4、C 语言程序基本单位是( C )。

A 、程序行B 、语句C 、函数D 、字符5、C 语言程序一行写不下时,可以( D )。

A 、用逗号换行B 、用分号换行C 、用回车符换行D 、在任意一空格处换行6、下述标识符中,( C )是合法用户标识符。

A 、A&B B 、void C 、_student D 、7、在C 语言中,字符型数据在内存中以( BA 、补码B 、ASCII 码C 、反码D 、原码8、一个程序由若干文件组成,共用同一变量,则此变量存储类别应该为( B )。

A 、autoB 、externC 、staticD 、Register9、以下关于switch 语句和break 语句描述中,只有(B )是正确。

A 、在switch 语句中必须使用break 语句B 、在switch 语句中,可以根据需要使用或不使用break 语句C 、break 语句只能用于switch 语句中D 、break 语句是switch 语句一部分10、C 语言规定:调用一个函数时,实参变量和形参变量之间数据传递是(B )。

A 、地址传递B 、值传递C 、由实参传给形参,并由形参传回给实参D 、由用户指定传递方式11、下述C 语言转义符中( D )是非法。

A 、'\b'B 、'\037'C 、'\0xf 'D 、'\''12、为了要计算s=10!(10阶乘),则以下对s 定义正确是( D )。

C语言程序设计期末考试试题及答案

C语言程序设计期末考试试题及答案

C语言程序设计期末考试试题及答案装 C. C++; D.a+b+c|2.已知int j , i=1 ;执行语句“ j=i++ ; ”后,变量i 的值是B 。

A. 1B. 2C. - 1D. -2 3. 执行下面程序:#i nclude "stdio.h" void mai n()订 {int a=1,b=2,c=3 ;c=(a+=a+2),(a=b,b+3); printf(“ %d,%d,%d ,a,b,c);丨}线则输出结果是:_A _______ 。

A. 2,2,4 B. 4,2,3 C. 5,5,3 D. 4,2,5[4.若要求在if 后一对圆括号中表示 a 不等于0的关系,则能正确表示这一关系的表达式为D 。

—A. a< >0B. !aC. a=0D. a:5. for (j=0;j<11;j++);循环结束后,j 的值是 B _________ 。

A. 12B. 11C. 10D. 96. C 语言中函数返回值的类型由 _D ___ 决定的。

[ A. return语句中的表达式类型B.调用该函数的主调函数的类型 :C.调用函数时临时决定D.定义函数时所指定的函数类型7. 下列说法中正确的是 B 。

- A 在调用用户自定义函数时,必须对其进行声明。

1B 函数可以返回一个值,也可以什么值也不返回。

:C 说明函数时,必须明确参数的类型和返回值。

D 在程序设计中空函数没有什么作用。

C 语言程序设计试题','g','s','\0'};8. 若int i=10 ;执行下列程序后,变量 i 的正确结果是_D_switch ( i ) {case 0: i+=1 ; case 10: i+=1 ; case 11: i+=1 ; default: i+=1 ;}A. 10B. 11C. 12D. 139. 下列语句中不正确的字符串赋值或初始化的是 C 。

大学C语言程序设计考试试题及答案3套

大学C语言程序设计考试试题及答案3套

main()
{int a=[3][3]={1,3,5,7,9,11,13,15,17},sum=0,i,j;
for (i=0;i<3;i++)
for(j=0;j<3;j++)
if (i==j) sum=sum+a[j]; printf(“sum=%d\n”,sum);
} 四、编程题(本大题共 4 题,每题 8 分,共 32 分) 1、编写摄氏温度、华氏温度转换程序。要求:从键盘输入一个摄氏温度,屏幕就显示 对应的华氏温度,输出取两位小数。转换公式:F=(C+32)×9/5 。 2、试编程判断输入的正整数是否既是 5 又是 7 的正倍数。若是,则输出 yes;否则输 出 no。 3、判断数 m 是否为素数(只能被 1 和它本身整除的整数)? 4、对 15 个数进行排序,按从小到大的顺序输出。 《C 语言程序设计》期末考试试卷(A 卷)评分标准及标准答案 一、单项选择题(本大题共 20 题,每题 2 分,共 40 分) 1、 B 2、 D 3、 B 4、 B 5、 C 6、 D 7、 B 8、 B 9、 A 10、D 11、C 12、D 13、D 14、C 15、D 16、C 17、C 18、D 19、C 20、B 二、填空题(本大题共 10 空,每空 2 分,共 20 分) 1、 顺序结构 分支结构 循环结构 2、 单精度型(或:float 型) 双精度型(或;double 型] 3、 1 4、
C 语言期末考试试卷
一 单项选择题(每题 2 分,共 40 分)
1 以下叙述正确的是 。 A C 程序基本组成单位是语句 C C 程序每一行只能写一个语句
B 简单 C 语句必须以分号作为结束符 D 注释语句可以嵌套

c语言期末试题及答案

c语言期末试题及答案

c语言期末试题及答案一、选择题1.下列C语言中的数据类型中,占用字节最小的是:A. intB. floatC. charD. double答案:C2.在C语言中,用于执行循环的关键字是:A. forB. whileC. doD. switch答案:A、B3.以下哪个运算符可以用于判断两个表达式的值是否相等?A. ==B. =C. !=D. >答案:A4.C语言中表示注释的符号是:A. //B. /*C. #D. --答案:B5.以下关于数组的说法正确的是:A. 数组的大小是固定的,不能改变B. 数组中的所有元素的类型必须相同C. 数组的下标从0开始D. 数组的索引可以是负数答案:B、C二、填空题1.下面哪个函数用于从标准输入读取一个字符? __________答案:getchar()2.在C语言中,变量x的地址可以用__________表示。

答案:&x3.以下代码中,num的值为__________:```cint num;printf("%d", num);```答案:未定义,可能是任意值。

三、编程题1.编写一个C语言程序,实现求斐波那契数列第n个数的功能。

其中,斐波那契数列的定义如下:F(1) = 1F(2) = 1F(n) = F(n-1) + F(n-2)```c#include <stdio.h>int fibonacci(int n) {if (n == 1 || n == 2) {return 1;} else {return fibonacci(n-1) + fibonacci(n-2);}}int main() {int n;printf("请输入n的值:");scanf("%d", &n);printf("斐波那契数列的第%d个数是:%d\n", n, fibonacci(n));return 0;}```以上代码会通过递归的方式计算斐波那契数列第n个数的值。

c语言期末考试试题及答案

c语言期末考试试题及答案

c语言期末考试试题及答案一、选择题1. C语言中,用于表示整数常量的数据类型是()。

A. floatB. doubleC. intD. char答案:C2. 若有定义:int a = 5; float b =3.14; 则下列表达式中错误的是()。

A. a + bB. a * bC. a / bD. b % a答案:D3. C语言中,用于输入的函数是()。

A. printf()B. scanf()C. puts()D. gets()答案:B4. 下列关于数组的说法,正确的是()。

A. 数组大小是动态的,可以在运行时改变B. 数组一旦定义,其大小不可改变C. 数组可以存储不同类型的数据D. 数组的索引必须从0开始答案:B5. 在C语言中,一个合法的指针变量是()。

A. int *pB. *int pC. float *pD. p int答案:A二、填空题1. 在C语言中,使用关键字________定义一个全局变量。

答案:extern2. 若有定义:int x = 10; 则表达式 `x + (x++) * 2` 的值是________。

答案:303. 在C语言中,使用________可以将字符串常量输出到控制台。

答案:printf4. 一个整型变量可以存储的最大值(假设为int max)与最小值(假设为int min)的范围是________ < int max < int min。

答案:-32768, 32767(假设是16位整型)5. 函数________用于计算一个字符串的长度。

答案:strlen三、判断题1. C语言中的注释可以使用“//”或“/* */”两种形式。

()答案:正确2. 在C语言中,所有的函数都有返回值。

()答案:错误3. 指针变量的地址可以通过使用&运算符获得。

()答案:正确4. 在C语言中,long int和int类型的大小是相同的。

()答案:错误5. 使用switch语句时,case标签后的值必须是整型或字符型。

大学c语言期末考试试题及答案

大学c语言期末考试试题及答案

大学c语言期末考试试题及答案一、选择题(每题2分,共20分)1. 下列哪个是C语言的关键字?A. intB. StringC. mainD. void答案:A2. 在C语言中,哪个运算符用于计算两个数的乘积?A. +B. -C. *D. /答案:C3. 以下哪个是合法的C语言变量名?A. 2variableB. variable2C. variable-nameD. variable#name答案:B4. 在C语言中,哪个函数用于计算两个数的和?A. sum()B. add()C. plus()D. None of the above答案:D5. 下列哪个是C语言的标准输入输出库?A. <stdio.h>B. <iostream.h>C. <io.h>D. <input.h>答案:A6. 在C语言中,哪个语句用于结束程序的执行?A. break;B. continue;C. return;D. exit;答案:C7. 在C语言中,哪个关键字用于定义一个函数?A. funcB. functionC. defD. void答案:D8. 下列哪个是C语言中的控制流语句?A. ifB. switchC. forD. All of the above答案:D9. 在C语言中,哪个函数用于输出字符串到标准输出设备?A. printf()B. puts()C. cout()D. print()答案:B10. 下列哪个是C语言的字符串类型?A. charB. stringC. strD. text答案:A二、填空题(每题2分,共10分)1. 在C语言中,字符常量用____表示。

答案:单引号2. 在C语言中,一个数组的元素个数称为____。

答案:数组的长度或数组的维度3. 函数____用于输出格式化的数据到标准输出设备。

答案:printf4. 在C语言中,____关键字用于定义一个函数的返回类型。

大一上期末c语言试题及答案

大一上期末c语言试题及答案

大一上期末c语言试题及答案一、选择题(每题2分,共20分)1. C语言中,以下哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A2. 在C语言中,以下哪个运算符用于取地址?A. *B. &C. %D. #答案:B3. 下列哪个选项不是C语言中的控制语句?A. ifB. switchC. forD. case答案:D4. C语言中,以下哪个函数用于将字符串转换为浮点数?A. atoi()B. atof()C. itoa()D. sprintf()答案:B5. 在C语言中,以下哪个选项不是合法的变量名?A. _myVarB. my_varC. 2myVarD. myVar2答案:C6. C语言中,以下哪个选项是正确的文件操作函数?A. fopen()B. fclose()C. fprint()D. all of the above答案:D7. 在C语言中,以下哪个选项是正确的字符串定义?A. char str[] = "Hello";B. char str[] = {"Hello"};C. char str[] = 'Hello';D. char str[] = {"Hello"};答案:A8. 下列哪个选项是C语言中合法的数组定义?A. int arr[5] = {0, 1, 2, 3, 4};B. int arr[] = {0, 1, 2, 3, 4};C. int arr[5] = {0, 1, 2};D. all of the above答案:D9. C语言中,以下哪个函数用于将浮点数转换为字符串?A. sprintf()B. printf()C. scanf()D. strcat()答案:A10. 在C语言中,以下哪个选项是正确的注释?A. // This is a single line commentB. /* This is a single line comment */C. // This is a multi-line commentD. /* This is a multi-line comment */答案:A二、填空题(每题2分,共20分)1. 在C语言中,使用________关键字可以定义一个函数。

c语言期末考试试题及答案

c语言期末考试试题及答案

c语言期末考试试题及答案考试题目一:填空题(共15空)1. C语言是一种_________型的编程语言。

2. 在C语言中,用来表示“或”的运算符是______。

3. 在C语言中,用于定义宏的关键字是______。

4. 函数调用时,参数的传递方式是______传递。

5. 在C语言中,表示真值的关键字是______。

6. 在使用scanf函数读取字符时,可以使用______修饰符。

7. 在C语言中,用于循环控制的关键字是______。

8. C语言中,数据类型的长度由______决定。

9. 在C语言中,用于将浮点数转换为整数的函数是______。

10. C语言中的结构体可以包含不同______类型的成员。

11. 在使用printf函数进行格式化输出时,%d用来输出______类型的数据。

12. 在C语言中,用于断开当前循环并开始下一次循环的关键字是______。

13. 在C语言中,用于定义常量的关键字是______。

14. C语言中,用于定义无符号整型变量的关键字是______。

15. 使用指针变量时,可以通过______操作符获得指针所指向的地址的值。

答案:1. 结构化2. ||3. #define4. 值5. true6. %c7. for8. 编译器9. ceil10. 数据11. 整数12. continue13. const14. unsigned15. *(星号)考试题目二:判断题(共10题)1. C语言是一种面向对象的编程语言。

(×)2. 在C语言中,数组的下标从0开始。

(√)3. C语言中,变量的作用域可以超出其声明的块。

(×)4. 在C语言中,可以通过malloc函数为变量分配动态内存。

(√)5. 在C语言中,switch语句可以用来实现嵌套循环。

(×)6. C语言只支持单继承。

(×)7. 在C语言中,函数可以有多个返回值。

(×)8. C语言中,使用void*类型指针可以指向任意类型的数据。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

西北农林科技大学信息工程学院西北农林科技大学本科课程考试试卷2015∼2016学年第1学期《C 语言程序设计》课程闭卷专业班级:命题教师:耿楠审题教师:学生姓名:学号:考试成绩:编程题一、..........................................................[15分]编写程序,提示用户输入一个整数n ,n 的取值范围为[1,10000],编程实现平方值小于等于n 的所有奇数的平方值之和。

例如,如果用户输入n 为100,那么小于100的所有奇数平方值为:1,9,25,49,81,它们的和为sum=165(1+9+25+49+81=165)。

如果输入的n 取值范围不在[1,10000],那么输出结果为“invalid number ”以提示用户输入了非法数据后退出程序。

输入样例:100输出样例:sum =165输入样例:10001输出样例:invalid number 评分标准:(1)(2分)输入的n 不在[1,10000]范围时,输出正确。

(2)(8分)for 循环正确。

(3)(3分)正确求和。

(4)(2分)输出语句正确。

测试用例:测试用例输出结果0invalid number 10001invalid number 10000sum =1666501sum =1-1invalid number2015-2016学年第1学期《C 语言程序设计》期末试题示例代码:1#include <stdio.h>2#include <stdlib.h>34int main ()5{6int i,n,sum =0;7scanf("%d",&n);89if (n >10000||n <=0)10{11printf("invalid number \n ");12return 1;13}1415for (i =1;i *i <=n;i ++)16{17if (i %2!=0)18{19sum =sum +i *i;20}21}2223printf("sum=%d \n ",sum);2425return 0;26}编程题二、..........................................................[15分]从键盘上输入10个整型数,利用函数查找并输出最大元素和最小元素,要求使用一维数组和一级指针编程实现。

提示:(1)在主函数main 中输入10个整型数,并声明两个整型变量分别用于存储数组的最大及最小元素值。

(2)编程过程中,请使用以下函数原型,务必要注意的是不得改变该函数原西北农林科技大学信息工程学院型的任何内容!void find_max_min (const int *pa,int n,int *plargest,int *psmallest);//----------------------------------------------------------------//功能:求取一维数组pa 中的最大元素及最小元素//参数:[int *pa]---一维数组a 的首地址(一级指针)//[int n]---数组元素个数//[int *plargest ]---指向最大元素的指针(一级指针)//[int *psmallest]---指向最小元素的指针(一级指针)//----------------------------------------------------------------(3)结果输出,请使用代码:printf("Largest:%d,Smallest:%d \n ",…);//请注意添加需要的代码输入:10个整数输出:最大元素以及最小元素输入样例:38438846595147649输出样例:Largest :84,Smallest :4评分标准:(1)(10分)正确使用和实现void find_max_min (const int *pa,int n,int *plargest,int *psmallest);函数。

(2)(5分)正确实现int main()函数并结果正确。

测试用例:测试用例输出结果38438846595147649Largest :84,Smallest :412345678910Largest :10,Smallest :11828907690232-1048523699Largest :1828,Smallest :-1045404547872112184784546Largest :787,Smallest :6785433-180773588812Largest :88,Smallest :-182015-2016学年第1学期《C 语言程序设计》期末试题示例代码:1#include <stdio.h>2#include <stdlib.h>34void find_max_min (const int *pa,int n,int *plargest,int *psmallest);56int main (void )7{8int a[10];9int largest =0,smallest =0,i;1011for (i =0;i <sizeof (a)/sizeof (a[0]);i ++)12scanf("%d",&a[i]);13find_max_min(a,sizeof (a)/sizeof (a[0]),&largest,&smallest);14printf("Largest:%d,Smallest:%d \n ",largest,smallest);15return 0;16}1718void find_max_min (const int *pa,int n,int *plargest,int *psmallest)19{20const int *p,*p_l,*p_sl;2122for (p =p_l =p_sl =pa;p <pa +n;p ++)23{24if (*p >*p_l)25{26p_l =p;27}28if (*p <*p_sl)29{30p_sl =p;31}32}3334*plargest =*p_l;35*psmallest =*p_sl;36}西北农林科技大学信息工程学院编程题三、..........................................................[15分]从键盘上输入两个向量,每个向量包含5个双精度浮点数(double),计算这两个向量的内积,并输出该计算结果,要求使用函数调用和数组编程实现。

提示:(1)向量内积计算公式为:若有向量a =(a 1,a 2,...,a n )和b =(b 1,b 2,...,b n ),则a 与b 的内积为a 1∗b 1+a 2∗b 2+...+a n ∗b n 。

(2)实现输入函数,该函数用于数组元素的输入,要求函数原型为:void input_vector (double a[],int n);(3)实现内积计算函数,要求函数原型为:double inner_product (double a[],double b[],int n);(4)main 函数的部分代码如下,请根据注释对省略号处的代码进行补充。

int main (void ){double a[N],b[N];printf("Enter vector a:");/*此处调用input_vector 函数实现向量a 的输入*/···printf("Enter vector b:");/*此处调用input_vector 函数实现向量b 的输入*/···/*此处调用inner_product 内积计算函数实现内积计算并输出*/printf("Inner product of a and b is:%1f.\n ",···);return 0;}输入:两个包含有5个元素的向量输出:向量的内积2015-2016学年第1学期《C 语言程序设计》期末试题输入样例:Enter vector a :2.304.503.2Enter vector b :02.803.60输出样例:Inner product of a and b is :0.000000.评分标准:(1)(5分)正确使用和实现void input_vector (double a[],int n);函数。

(2)(10分)正确使用和实现double inner_product (double a[],doubleb[],int n);函数。

测试用例:测试用例输出结果2.304.503.20.00000002.803.602.30.94.50.993.246.6430003.052.84.563.64.0722.310.94.550.9934.261937.16400039.052.00846.5613.644.071234535.00000054321示例代码:1#include <stdio.h>2#include <stdlib.h>3#define N 545void input_vector (double a[],int n);6double inner_product (double a[],double b[],int n);78int main (void )9{西北农林科技大学信息工程学院10double a[N],b[N];11printf("Enter vector a:");12input_vector(a,N);13printf("Enter vector b:");14input_vector(b,N);15printf("Inner product of a and b is:%1f.\n ",inner_product(a,b,N));1617return 0;18}1920void input_vector (double a[],int n)21{22int i;23for (i =0;i <n;i ++)24{25scanf("%lf",&a[i]);26}27}2829double inner_product (double a[],double b[],int n)30{31int i;32double s =0;33for (i =0;i <n;i ++)34{35s +=(a[i]*b[i]);36}37return s;38}编程题四、..........................................................[15分]从键盘上输入5条学生信息记录,利用函数指针实现这5个学生成绩的升序和降序排列,并输出排序后的结果,要求使用函数调用、函数指针以及结构体数组编程实现。

相关文档
最新文档