《C语言程序设计基础》期末考试试卷‘B’及答案
一、单项选择题(每小题2分,共30分)答案填入下表1. 在C语言中,下面字符串能用作变量名的是( )。
A、a+bB、autoC、2-andD、a22. 若double x=2,y;则执行y=x+3/2;后,y的值是( )。
A、3.500000 B. 3.000000 C. 2.000000 D. 33. 下列关于C语言中字符常量与字符串常量的叙述中,错误的是( )。
A、字符常量是用单撇号括起来的一个字符B、空格字符也可用作字符常量C、字符串常量是用单撇号括起来的一个字符序列D、字符串常量是用双撇号括起来的一个字符序列4. 若有以下变量说明和数据的输入方式,则正确的输入语句为( )。
变量说明:float x1,x2;数据的输入方式:4.52<回车>3.5<回车>A、scanf(“%f,%f”,&x1,&x2);B、scanf(“%f%f”,&x1,&x2);C、scanf(“%3.2f,%2.1f”,&x1,&x2);D、scanf(“%3.2f%2.1f”,&x1,&x2);5. 下列程序段的执行结果是( )。
char s[10];s=″abcd″;printf(″%s\n″,s);A、输出abcdB、输出aC、输出abcduuuuuD、编译不通过6. 在一个源文件中定义的全局变量的作用域为()。
A. 本文件的全部范围B. 从定义该变量开始至本文件结束C. 本函数的全部范围D. 本程序的全部范围7.当调用函数时,实参是一个数组名,则向函数传送的是( )。
A、数组的长度B、数组的首地址C、数组每一个元素的地址D、数组每个元素中的值8.若j为整型变量,则下面while循环( )。
j=10;while(j!=0) j=j-1;A、执行0次B、执行1次C、执行10次D、执行无限次9. 在while(x)语句中的x与下面条件表达式等价的是:( )。
A、x!=0B、x==1C、x!=1D、x==010. 以下对C语言函数的描述中,正确的是( )。
A、调用函数时,参数可以是表达式B、函数的定义可以是嵌套C、函数必须有返回值D、所有函数必须在同一个程序文件中定义12. C语言中函数返回值的类型由( )决定的。
A、return语句中的表达式类型B、调用该函数的主调函数的类型C、调用函数时临时决定D、定义函数时所指定的函数类型13. 以下定义语句中,错误的是( )。
A、int a[ ]={1,2};B、int a[ ][3]={1,2,3,4,5};C、char s[10]=“test”;D、int n=5,a[n];14. 若变量c为char类型,能正确判断出c为大写字母的表达式是( )。
A、'A'<=c<= 'Z'B、(c>= 'A')||(c<= 'Z')C、(c>= 'A')&&(c<= 'Z')D、('A'<=c)and ('Z'>=c)15. 若有以下说明和语句,且已知char型占1个字节,int型占两个字节,float 型占4个字节。
struct st{ int num;char name[10];int age;float score;}student;则结构体变量student占用内存的字节数是( )。
A. 10B. 18C. 9D. 2二、填空题(每空2分,共20分)16.以下if语句执行后,a、b、c中的值分别为________。
int a=1,b=2,c=3;if(a>c) b=a; a=c; c=b;17.若程序中用到strlen()函数,就在程序开头写上包含命令#include<string.h>________。
18. 设有以下变量定义,并已赋确定的值char w; int x; float y; double z;则表达式:w*x +z-y所求值的数据类型为。
19. 字符串"Chinese"的占内存长度是单元。
20. 若int i=10,j=2;则执行i*=j+8;后i的值为。
21. 若有定义float x,y;则从键盘给x、y输入数据的语句应写为。
22. 若int a[2][2]={{1},{2,3}};则a[0][1]的值为___________。
23. 条件“y能被4整除但不能被100整除”的C语言表达式是________ ___;表达式“0≤a≤10”在C语言中应表示为。
24. 有如下程序段int *p,a=10,b=1; p=&a; a=*p+b;执行该程序段后,a的值为。
三、程序分析题(每小题5分,共10分)25. 阅读程序,写出下列程序的运行结果。
#include <stdio.h>int main(){int i,j,a[][3]={1,2,3,4,5,6,7,8,9};for(i=0;i<3;i++){ for(j=i;j<3;j++)printf("%d ",a[i][j]);printf("\n");}}26. 阅读程序,写出下列程序的运行结果。
# include <stdio.h>main(){int m=1, n=2, *p=&m, *q=&n, *r;r=p;p=q;q=r;printf("%d,%d,%d,%d\n",m,n,*p,*q);}四、程序填空题(每小题10分,共20分)27. 该程序的功能为:向数组中录入十个数,然后求这十个数的平均值。
#include <stdio.h>main(){float a[10],x;int i;for(i=0;i<10;i++)scanf(“%f”, (1));for(i=0,x=0;i<10;i++)(2);x=x/10.0;printf(“平均值=%f\n”,x);}(1)(2)28.程序完成的功能为:将三个整数按从小到大的顺序排列,并打印出来。
#include <stdio.h>int main() {int x,y,z,t;scanf("%d%d%d",&x,&y,&z); if(x>y){t=x;x=y;y=t;} if( (1) ){ (2) } if( y>z ){t=y;y=z;z=t;}printf("这三个数从小到大为:%d,%d,%d",x,y,z); return 0; }(1) (2)五、程序设计题(每小题10分,共20分)29. 编写程序:计算任一输入的整数的各位数字之和。
要求:使用自定义函数求解;主函数包括输入、输出和函数调用语句。
30. 编写程序:实现下面的分段函数,输入x 的值,求y 的值。
y=21311xx x ⎧⎪-⎨⎪-⎩101011≥<≤<x x x【本套试卷共有五大题,计30小题】一、单项选择题(每小题2分,共30分)1-5 DBCBD6-10 BBCAA11-15 CDDCB二、填空题(每空2分,共20分)16. 3,2,2 。
17. #include <string.h> 。
18. double 。
19. 8 。
20. 100 。
21. scanf(“%f %f”,&x,&y) ; 。
22. 0 。
23. y%4= =0&&y%100!=0_. a>=0&&a<=10 。
24. 11三、程序分析题(每小题5分,共10分)25. 运行结果:1 2 3 5 6 926. 运行结果:1,2,2,1四、程序填空题(每小题10分,共20分)27.(1 ) &a[i](2 ) x=x+a[i];28.(1 ) x>z(2 ) t=x;x=z;z=t;五、程序设计题(每小题10分,共20分)29. #include <stdio.h>int shuzihe(int n);int main(){int n,sum;printf("请输入任一正整数:");scanf("%d",&n);sum=shuzihe(n);printf("这个整数的各位数字之和为:%ld\n",sum);return 0;}int shuzihe(int n){int sum=0;while(n!=0){ sum+=n%10;n=n/10;}return sum;}30. #include <stdio.h>int main(){float x,y;scanf("%f",&x);if(x<1)y=x;else if(x>=1&&x<10)y=2*x-1;elsey=3*x-11;printf("y=%f\n",y);return 0;}。
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语言程序设计期末考试试题(含答案)一、选择题(共20题,每题2分,共40分)在每个题目给出的选项中选出一个正确答案,并将其序号填入题前括号内。
1. 下列关于C语言标准库的说法,错误的是:A. C语言标准库提供了多个头文件,如<stdio.h>、<stdlib.h>等。
B. C语言标准库中包含了很多有用的函数和变量。
C. C语言标准库的函数和变量的声明保存在头文件中。
D. C语言标准库中的函数和变量可以直接使用,无需任何声明和定义。
2. 下面哪个选项是正确的整型常量表示法?A. 3.14B. 'A'C. 3.0E8D. 0xFC3. 下面代码中,输出结果是多少?```c#include <stdio.h>int main() {int x = 3, y = 4, z;z = (x++) + (++y);printf("%d\n", z);return 0;}```A. 7B. 8C. 9D. 104. 下面哪个选项是正确的声明一个指向整型数据的指针?A. int *ptr;B. int ptr;C. *int ptr;D. ptr *int;5. 下面哪个选项是正确的函数声明?A. int add(int a, int b);B. int add(int a, b);C. add(int a, int b);D. add(int a, b);(略去其他题目...)二、编程题(共2题,每题30分,共60分)请编写符合题目要求的程序。
1. 题目描述:编写一个程序,实现求解1至100之间的所有偶数的和,并打印输出结果。
以下是程序的运行示例:```1至100之间的所有偶数的和为2550。
```2. 题目描述:编写一个程序,实现将用户输入的英文句子的每个单词首字母变为大写,并打印输出结果。
以下是程序的运行示例:```请输入一个英文句子:hello world!转换后的句子为:Hello World!```三、简答题(共2题,每题10分,共20分)请简要回答以下问题。
C语言期末考试题(含答案)
C语言期末考试题(含答案)《C语言程序设计》期末试卷一、单项选择题(10x2’=20’)1、以下叙述正确的是()A)C语言的源程序不必通过编译就可以直接运行。
B)C语言中的每条可执行语句最终都将被转换成二进制的机器指令。
C)C语言源程序经编译形成的二进制代码可以直接运行。
D)C 语言中的函数不可以单独进行编译。
2、一个C语言的源程序中()A)必须有一个主函数B)可能有多个主函数C)必须有除主函数外其它函数D)可以没有主函数3、以下不能定义为用户标识符的是()A)scanfB)VoidC)_3comD)int4、若以下选项中的变量已正确定义,则正确的赋值语句是()A)x1=26.8%3;B)1+2=x2;C)x3=0x12;D)x4=1+2=3;15、设有定义:floata=2,b=4,h=3;以下C语言表达式中与代数式(a b)*h的计2算结果不相符的是().C)for、while、do-whileD)if、for、continue7.在while(!x)语句中的!x与下面条件表达式等价的是()A) x!=0B) x==1C)x!=1D)x==08、有以下程序:#include <XXX>void main(){int i=1,j=1,k=2;if( (j++||k++)&&i++ )printf(“%d,%d,%d\n”,i,j,k);}执行后的输出结果是()A)1,1,2B)2,2,1C)2,2,2D)2,2,39、有以下程序:#include <XXX>void main(){int i,s=0;for(i=1;i<10;i+=2)s+=i+1;printf(“%d\n”,s);}程序执行后的输出结果是()A)自然数1~9的累加和B)自然数1~10的累加和C)自然数1~9中奇数之和D)自然数1~10中偶数之和10、有以下函数定义:void fun(int n,double x){……}若以下选项中的变量都已经正确定义并赋值,则对函数fun的正确调用语句是()A)fun(int y,double m);B)k=fun(10,12.5);C)fun(x,n);D)void fun(n,x);2、填空题(10x2’=20’)11、C言语描绘“x和y都大于或等于z”的表达式是:。
C语言程序设计期末考试试题及答案
C语言程序设计期末考试试题及答案一、选择题(每题2分,共20分)1. C语言中,以下哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A2. 下列关于C语言函数的描述中,正确的是?A. 函数可以没有返回值B. 函数可以有多个返回值C. 函数可以没有参数D. 函数必须有参数答案:C3. 在C语言中,以下哪个运算符用于取地址?A. *B. &C. %D. #答案:B4. 下列关于数组的描述中,错误的是?A. 数组可以是多维的B. 数组的下标从0开始C. 数组的大小在编译时确定D. 数组可以动态分配答案:D5. C语言中,以下哪个关键字用于定义一个指针?A. intB. charC. *D. void答案:C6. 在C语言中,以下哪个关键字用于定义一个静态变量?A. staticB. externC. registerD. auto答案:A7. 下列关于C语言中文件操作的描述中,正确的是?A. 文件操作只能使用标准库函数B. 文件指针必须使用FILE类型C. 文件操作必须使用fclose函数关闭文件D. 文件操作不能使用缓冲区答案:B8. 在C语言中,以下哪个关键字用于定义一个宏?A. defineB. typedefC. enumD. struct答案:A9. 下列关于C语言中位运算的描述中,错误的是?A. & 表示按位与B. | 表示按位或C. ^ 表示按位异或D. ~ 表示按位取反答案:B10. 在C语言中,以下哪个关键字用于定义一个枚举类型?A. enumB. structC. unionD. typedef答案:A二、填空题(每题2分,共20分)1. 在C语言中,一个整型变量占用的内存空间通常是______个字节。
答案:42. C语言中,使用______关键字可以定义一个无限循环。
答案:while3. C语言中,数组的元素默认初始化为______。
大一c程序设计期末考试题及答案
大一c程序设计期末考试题及答案在本次大一C程序设计的期末考试中,我们精心准备了以下题目,旨在考察同学们对C语言基础知识的掌握程度以及编程能力。
以下是考试题目及参考答案。
一、选择题(每题2分,共20分)1. C语言中,哪个关键字用于声明函数?A. intB. voidC. returnD. function答案:A2. 下列哪个选项是C语言中的合法标识符?A. 2variableB. variable-nameC. _variableD. variable$name答案:C3. 在C语言中,哪个运算符用于计算两个数的和?A. +B. -C. *D. /答案:A4. 若有以下代码片段:```cint a = 5;int b = 10;a = b;```执行后,变量a的值是多少?A. 5B. 10C. 15D. 0答案:B5. 下列哪个选项是C语言中的逻辑运算符?A. &&B. ||C. !D. 以上都是答案:D6. C语言中,哪个函数用于输入字符?A. scanf()B. printf()C. getchar()D. getc()答案:C7. 下列哪个选项是C语言中的循环结构?A. ifB. switchC. forD. do-while8. 在C语言中,哪个关键字用于定义数组?A. arrayB. listC. vectorD. int[]答案:D9. 下列哪个选项是C语言中的字符串字面量?A. "Hello World"B. 'Hello World'C. "Hello" "World"D. 'Hello' 'World'答案:A10. 在C语言中,哪个函数用于输出格式化的字符串?A. printf()B. scanf()C. sprintf()D. fprintf()答案:A二、填空题(每空2分,共20分)1. 在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语言程序设计期末考试试卷C语言程序设计期末考试试卷一、选择题(每题2分,共20分)1. 在C语言中,以下哪个选项表示一个字符常量?- A. 'A'- B. "A"- C. \A- D. A2. 以下哪个是C语言中的合法标识符?- A. 2variable- B. variable2- C. variable!3. C语言中,以下哪个语句用于定义一个整型数组?- A. int array[10] = {0};- B. int [10] array = {0};- C. int array = [10] = {0};- D. int array[10];4. 以下哪个是C语言中定义函数的关键字?- A. function- B. method- C. def- D. int5. C语言中,以下哪个是正确的函数声明?- A. int add(int a, int b)- B. int add(int a, int b) {}- C. int add(int, int);- D. void add(int a, int b);6. 在C语言中,以下哪个语句用于实现循环?- A. do-while- B. for- C. switch-case- D. if-else7. 在C语言中,以下哪个语句用于实现条件判断? - A. if-else- B. switch-case- C. while- D. for8. 在C语言中,以下哪个语句用于实现跳转?- A. return- B. break- C. continue- D. goto9. 在C语言中,以下哪个是正确的字符串字面量? - A. "Hello World"- B. 'Hello World'- C. "hello world"- D. {"Hello World"}10. 在C语言中,以下哪个是正确的结构体定义?- A. struct person { int age; char name[20]; };- B. struct { int age; char name[20]; } person;- C. struct person { int age; char name; };- D. struct person int age; char name[20];二、填空题(每空1分,共10分)1. 在C语言中,一个整型变量的默认值是______。
《C语言程序设计》期末考试试卷以及答案提示(共五篇)
《C语言程序设计》期末考试试卷以及答案提示(共五篇)第一篇:《C语言程序设计》期末考试试卷以及答案提示一、单项选择题(本大题共20题,每题2 分,共40分)1、以下不是C语言的特点的是 B。
A、C语言简洁、紧凑B、能够编制出功能复杂的程序(任何程序都可以,不算特点)C、C语言可以直接对硬件进行操作D、C语言移植性好2、以下不正确的C语言标识符是 DA、ABCB、abcC、a_bcD、ab.c(只能是字母,下划线,数字;另外数字不可开头)3、一个C语言程序是由B。
A、一个主程序和若干子程序组成B、函数组成 C、若干过程组成 D、若干子程序组成4、一个算法应该具有“确定性”等5个特性,对另外4个特性的描述中错误的是 B A、有零个或多个输入B、有零个或多个输出(有一个或多个输出)C、有穷性D、可行性5、设变数a是整型,f是实型,i是双精度型,则表达式10+…a‟+i*f值的数据类型为 C A、int B、float C、double D、不确定(低类型要转换为高类型)6、在C语言中,char型数据在内存中的存储形式是 D。
A、补码B、反码C、源码D、ASCII码7、有如下程序,输入数据:12345M678<cR>后(表示回车),x的值是B。
#include main(){ int x;float y;scanf(“%3d%f”,&x,&y);} A、12345 B、123 C、45 D、345(由scanf语句可知取三位数值给X)8、若有以下定义int a,b;float x,则正确的赋值语句是B。
A、a=1,b=2(少了分号)B、b++;C、a=b=5(句末少了分号)D、b=int(x);(右侧要是确切的值)9、以下程序的执行结果是A。
#include { int i=10,j=10;printf(“%d,%dn”,++i,j--);} A、11,10 B、9,10 C、11,9D、10,9(i是先加一再使用,j是先使用再减一)10、巳知字母A的ASCII码是65,以下程序的执行结果是D。
c语言程序设计基础试题及答案
c语言程序设计基础试题及答案一、选择题(每题2分,共20分)1. C语言中,以下哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A2. 下列哪个选项是C语言中的合法整数?A. 0x10B. 0X1GC. 08D. 0L答案:A3. 在C语言中,用于定义一个函数的关键字是?A. defineB. functionC. defD. void答案:B4. C语言中,以下哪个是正确的字符串定义?A. char str[] = "Hello";B. char str[] = {"Hello"};C. char str = "Hello";D. char str[] = 'Hello';答案:A5. 在C语言中,以下哪个运算符用于求余?A. %B. /C. //D. %答案:A二、填空题(每题3分,共15分)1. 在C语言中,定义一个整型变量的关键字是________。
答案:int2. 如果一个函数没有返回值,应该使用________关键字声明。
答案:void3. 在C语言中,________运算符用于连接字符串。
答案:+4. C语言中,________运算符用于比较两个值是否相等。
答案:==5. 在C语言中,________关键字用于定义一个指针变量。
答案:*三、简答题(每题5分,共20分)1. 简述C语言中数组和指针的关系。
答案:在C语言中,数组名可以被当作指向数组第一个元素的指针。
数组的每个元素可以通过指针运算来访问。
2. 解释C语言中函数原型声明的作用。
答案:函数原型声明提供了函数的名称、返回类型和参数类型,但不需要函数体。
它允许在函数定义之前调用函数,同时帮助编译器检查函数调用的正确性。
3. 什么是C语言中的预处理指令,举例说明。
答案:预处理指令是C语言中的特殊命令,用于在编译之前处理源代码。
c语言程序设计期末考试题目及答案
c语言程序设计期末考试题目及答案一、选择题(每题2分,共20分)1. 下列哪个选项是C语言中的合法标识符?A. 2variableB. variable2C. variable-2D. variable$2答案:B2. C语言中,以下哪个是正确的整型常量?A. 0x12B. 0x12.5C. 12.5D. 0x12.5e答案:A3. 若有以下定义,int a=10, b=20; 则以下哪个表达式的值不为10?A. a+bB. a-bC. a%bD. a*b答案:D4. C语言中,以下哪个是正确的字符串字面量?A. "Hello World"B. 'Hello World'C. "Hello\nWorld"D. "Hello World", "World"答案:C5. 以下哪个选项不是C语言中的运算符?A. +=B. ||C. &&D. :答案:D6. 在C语言中,以下哪个函数用于计算字符串的长度?A. strlen()B. strcpy()C. strcat()D. strcmp()答案:A7. 下列哪个选项是C语言中的合法浮点数?A. 3.14159B. .14159C. 3e14D. 3.14.59答案:C8. C语言中,以下哪个选项是正确的数组声明?A. int a[5] = {1, 2, 3, 4, 5};B. int a[] = {1, 2, 3, 4, 5};C. int a = {1, 2, 3, 4, 5};D. int a[5] = 1, 2, 3, 4, 5;答案:B9. 在C语言中,以下哪个选项是正确的函数声明?A. int add(int, int);B. int add(int a, int b);C. int add(int, int) {}D. int add(a, b);答案:A10. C语言中,以下哪个选项是正确的结构体声明?A. struct Student { int id; char name[20]; };B. struct { int id; char name[20]; } Student;C. struct Student { int id; char name; };D. struct Student { int id; char name[20]; int age; };答案:D二、填空题(每题3分,共15分)1. 在C语言中,`printf`函数用于输出信息到______。
