程序设计基础(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语言程序设计期末考试试题(含答案)一、选择题(共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程序设计的期末考试中,我们精心准备了以下题目,旨在考察同学们对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程序设计期末复习题一、填空题1. C语言符号集包括(英文字母,数字,下划线和一些有特定含义的标点符号)。
2. 一个C程序有且只有一个(主函数)。
main()3. 结构化设计中的三种基本结构是(顺序结构,选择结构,循环结构)。
4. 设int x=9,y=8;表达式x==y+1的结果是(1).5. 定义int x,y;执行y=(x=1,++x,x+2);语句后,y的值是(4)。
6. 以下程序运行的结果是(end)。
# include <stdio.h>main( ){int a,b,c;a=2;b=3;c=1;if(a>b)if(a>c)printf("%d\n",a);elseprintf("%d\n",b);printf("end\n");}7. 以下程序运行的结果是(d=20)。
# include<stdio.h>main( ){int a,b,c,d,x;a=c=0;b=1;d=20;if (a) d=d-10;else if (! b)if(! c) x=15;else x=25;printf(“d=%d”,d);}8. 以下程序(当输入值为2,1时)运行的结果是(s=2,t=3)。
# include<stdio.h>main( ){int s,t,a,b;scanf("%d,%d",&a,&b);s=1;t=1;if(a>0) s=s+1;//s=2if(a>b) t=s+1;//t=3else if (a==b) t=5;else t=2*s;printf("s=%d,t=%d\n",s,t);}9. 以下程序运行的结果是(s=7)。
# include<stdio.h>main( ){int s=0,k;for (k=7;k>=0;k--){switch(k){case 1:case 4:case 7:s++;break;case 2:case 3:case 6:break;case 0:case 5:s+=2;break;} }printf("s=%d\n",s); }10. C语言源程序文件的后缀是(.C ),经过编译后生成文件的后缀是( .obj ),经过链接后生成的文件的后缀是( .exe )。
程序设计基础期末考试复习题及参考答案-专科

《程序设计基础》复习题一、单项选择题1.以下叙述中正确的是( )A. C程序中注释部分可以出现在程序中任意合适的地方B. 花括号"{"和"}"只能作为函数体的定界符C. 构成C程序的基本单位是函数,所有函数名都可以由用户命名D. 分号是C语句之间的分隔符,不是语句的一部分2.在一个C语言程序中( )A. main函数必须出现在所有函数之前B. main函数可以在任何地方出现C. main函数必须出现在所有函数之后D. main函数必须出现在固定位置3.判断下面标识符中哪个是C语言中合法的用户定义标识符( )A. a-bB. #abdC. typedefD. _max4.为表示关系X≥Y≥Z,应使用C语言表达式( )A. (X≥Y)&&(Y≥Z)B. X>=Y>=ZC. (X>=Y)‖(Y>=Z)D. (X>=Y)&&(Y>=Z)5.以下选项中,不能作为合法常量的是A. 1.234e04B. 1.234e0.4C. 1.234e+4D. 1.234e0 6.若有两条语句:static char x[]=”abcde”;static char y[]={‘a’,’b’,’c’,’d’,’e’};则下列说法中正确的是( )A. x数组和y数组长度相同B. x数组长度大于y数组长度C. x数组长度小于y数组长度D. 以上三种说法均错误。
7.返回值为void的函数,其含义是( )A.调用函数之后,被调用的函数没有返回值;B.调用函数之后,被调用的函数不返回C.调用函数之后,被调用的函数返回值为任意类型D.以上三种说法均不正确。
8.对于语句,int x,y,z[10],*px,*py; 指出下列哪个语句是不正确的( )A. px=&x,py=pxB. px=xC. py=&yD. px=z9.在printf语句中按字符串输出的格式是( )A. “%s”B. “%c”C. “%f”D. “%d”10.C语言中,运算对象必须是整型的运算符是( )A. %B. /C. %和/D. >=11.以下说法正确的是( )A. C语言程序总是从第一个定义函数开始执行;B. 在C语言程序中,要使用的函数必须在main()函数中定义;C .C语言程序总是从main()函数开始执行;D. C语言程序的main()函数必须在程序的开始部分。
c程序设计期末考试复习题

c程序设计期末考试复习题一、选择题(每题2分,共20分)1. 下列哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef2. 在C语言中,哪个函数用于将字符串复制到另一个字符串?A. strcpyB. strcatC. strlenD. strcmp3. 如果一个变量被定义为 `static int count = 0;`,那么该变量的存储类别是什么?A. 自动存储期B. 静态存储期C. 外部存储期D. 寄存器存储期4. 在C语言中,哪个运算符用于计算两个整数的乘积?A. *B. /C. %D. ++5. 下列哪个不是C语言的控制语句?A. ifB. switchC. forD. goto6. 在C语言中,哪个函数用于将整数转换为字符串?A. atoiB. itoaC. atolD. tolower7. 在C语言中,哪个函数用于打开一个文件?A. fopenB. fcloseC. freadD. fwrite8. 如果一个函数在调用时没有返回任何值,那么该函数的返回类型是什么?A. voidB. intC. charD. float9. 在C语言中,哪个关键字用于定义一个指针?A. intB. charC. floatD. *10. 下列哪个是C语言中的合法数组声明?A. int [10] array;B. int array[10];C. int array = 10;D. int array = {1, 2, 3};二、填空题(每空2分,共20分)1. 在C语言中,用于定义一个函数的关键字是________。
2. 当需要在函数之间共享数据时,可以使用________存储类别。
3. 一个C程序的执行从________函数开始。
4. 标准输入输出库的头文件是________。
5. 用于输入数据的函数是________。
6. 在C语言中,数组的索引是从________开始的。
程序设计基础(C)期末复习题

对外经济贸易大学远程教育学院2009—2010学年度第一学期程序设计基础(C)期末复习题一、单项选择题1.程序设计一般包含以下四个步骤,其中首先应该完成的是(B)A. 设计数据结构和算法B. 建立数学模型C. 编写程序D. 调试运行程序2.下面描述中不正确的是(D)A. 程序就是软件,但软件不仅仅是程序B. 程序是指令的集会,计算机语言是编写程序的工具C. 计算机语言都是形式化语言,它有严格的语法规则和定义D. 计算机语言只能编写程序而不能表示算法3.以下说法中正确的是(C )A. C语言程序总是从第一个函数开始执行B. 在C语言程序中, main()函数可有可无C. C语言程序总是从main()函数开始执行D. C语言程序中的main()函数必须放在程序的开始部分4.C语言程序的基本单位是(B)A. 语句B. 函数C. 程序行D. 字符5.C语言程序由什么组成(C)A. 子程序B. 过程C. 函数D. 主程序段程序6.以下不是C语言特点的是(B)A、语言的表达能力强B、语法定义严格C、数据结构系统化D、控制流程结构化7.C语言并不是非常严格的算法语言,在以下关于C语言的不严格的叙述中,错误的说法是(A)A、任何不同数据类型都不可以通用B、有些不同类型的变量可以在一个表达式中运算C、在赋值表达式中等号(=)左边的变量和右边的值可以是不同类型D、同一个运算符号在不同的场合可以有不同的含义8.下面描述中,不正确的是(B)A、C程序的函数体由一系列语句和注释组成B、注释内容不能单独写在一行上C、C程序的函数说明部分包括对函数名、函数类型、形式参数等的定义和说明D、scanf和printf是标准库函数而不是输入或输出语句9.下面描述中,正确的是(C)A、主函数中的花括号必须有,而子函数中的花括号是可有可无的B、一个C程序行只能写一个语句C、主函数main是C程序启动时唯一的入口D、函数体包含了函数说明部分10.C语言中字符(char)数据在内存中存储的是(D)A、原码B、补码C、反码D、ASCⅡ码11.下列可以正确表示字符型常数的是(B)A、”a”B、’\’’C、”\n”D、29712.以下错误的转义字符是(C)A、’\\’B、’\’’C、’\81’D、’\0’13.已知:char a;int b;float c;double d;执行语句c=a+b+c+d;后,变量c的数据类型是(C)A、intB、charC、floatD、double 14.已知;int i, a ;执行语句“i=(a=2*3,a*5),a+6;”后,变量i的值是(C)A、6B、12C、30D、3615.已知int i=5;执行语句i+=++i; i的值是(C)A、10B、11C、12D、以上答案都不对16.已知:int x=1,y=2,z; 则执行:z=x>y? ++x:++y; 则z的值为(C)A、1B、2C、3D、417.已知:float a=4,b=5,c; 则执行表达式“c=a=a>b”后变量a的值为(A)A、0B、1C、4D、518.执行下面语句后x的值为(D)int a=14,b=15,x;char c=’A’;x=((a&&b) && (c<’a’));A、TRUEB、FALSEC、0D、119.下列四个选项中,均是C语言关键字的选项是(B)A. auto enum includeB. switch typedef continueC. signed union scanfD. if struct type20.C语言中的标识符只能由字母,数字和下划线三种字符组成,且第一个字符(C)A. 必须为字母B. 必须为下划线C. 必须为字母或下划线D. 可以是字母,数字和下划线中任一字符21.若有定义:int a=7;float x=2.5,y=4.7;则表达式x+a%3*(int)(x+y)%2/4的值是(A)A. 2.500000B. 2.750000C. 3.500000D. 0.000000 22.设变量a是整型,f是实型,i是双精度型,则表达式10+'a'+i*f值的数据类型为(C)A. intB. floatC. doubleD. 不确定23.表达式(a=3*5,a*5),a+5的值是多少(A)A. 20B. 80C. 不能确定D. 1524.语句:printf("%d \n",12&&12);的输出结果是(B)A. 12B. 1C. 24D. 025.C语言的语句中用作判断的表达式一般为(D)A. 关系表达式B. 逻辑表达式C. 算术表达式D. 逻辑表达式和关系表达式26.若已定义x和y为double型,则表达式:x=1,y=x+3/2的值是(C)A. 1B. 2C. 2.0D. 2.527.若有以下定义:char a; int b;float c;double d;则表达式a*b+d-c值的类型为(D)A. floatB. intC. charD. double28.若x和y都是int型变量,x=100,y=200,且有下面的程序片段:printf("%d",(x,y));上面程序片段的输出结果是(A)A. 200B. 100C. 200 100D. 输出格式符不够,输出不确定的值29.表达式:10!=9的值是(D)A. trueB. 非零值C. 0D. 130.以下关于运算符优先顺序的描述中正确的是(C)A. 关系运算符 < 算术运算符 < 赋值运算符 < 逻辑运算符B. 逻辑运算符 < 关系运算符 < 算术运算符 < 赋值运算符C. 赋值运算符 < 逻辑运算符 < 关系运算符 < 算术运算符D. 算术运算符 < 关系运算符 < 赋值运算符 < 逻辑运算符31、putchar函数可以向屏幕输出一个(D)A、整形变量值B、实型变量值C、字符串D、字符或字符变量值32、执行以下程序段后,c3的值是(A)int c1=1,c2=2,c3;c3=c1/c2;A、0B、1/2C、0.5D、133、若int a,b,c;则为它们输入数据的正确输入语句是(D)A、read (a,b,c);B、scanf (“%d%d%d”,a,b,c);C、scanf (“%D%D%D”,&a,&b,&c);D、scanf (“%d%d%d’,&a,&b,&c);34、若有以下程序段,其输出结果是(B)int a=0,b=0,c=0;c=(a-=a-5),(a=b,b+3);printf (“%d,%d,%d\n”,a,b,c);A、3,0,-10B、0,0,5C、-10,3,-10D、3,0,335、若a为int 类型,且a=125,执行下列语句后的输出是(B)printf (“%d,%o,%x\n”,a,a+1,a+2)A、125,175,7DB、125,176,7FC、125,176,7DD、125,175,2F36.表达式(int)2.1416的值是(A)A. 2 B. 2.1 C. 0 D. 337.若有条件表达式(exp)?a++:b--,则以下表达式中能完全等价于表达式(exp)的是(B)A. (exp==0)B. (exp!=0)C. (exp==1)D. (exp!=1) 38.设int x=1, y=1; 表达式(!x||y--)的值是(B)A. 0B. 1C. 2D. -139.在C 语言中,错误的int类型的常数是(A)A.32768 B.0 C.037 D.0xAF40.下列正确表示字符型常数的是(B)A.‘101’ B.‘\101’C.“\n” D.29741.有定义char ch; 判断ch的值是否为小写字母的表达式为(D)A.‘a’<= ch =‘z’ B.(ch >=‘a’)&(ch <=‘z’)C.(ch>=‘a’)AND (ch<=‘z’)D.ch>=97 && ch<=12242.以下程序的输出结果是(C)main(){int a=12,b=12;printf("%d %d\n",--a,++b);}A. 10 10B. 12 12C. 11 13D. 11 1043.能正确表示逻辑关系:"a ≥ =10或a ≤ 0"的C语言表达式是(D)A. a > =10 or a < =0B. a > =0||a < =10C. a > =10 &&a < =0D. a < =0 || a>=1044.下列程序的输出结果是(C)main(){ double d=3.2;int x,y;x=1.2; y=(x+3.8)/5.0;printf("%d \n", d*y);}A. 3B. 3.2C. 0D. 3.0745、已知:int a,*p=&a;则下列函数调用中错误的是________。
C语言程序设计期末考试试题含答案

C语言程序设计期末考试试题含答案一、选择题(每题 3 分,共 30 分)1、以下选项中,不是 C 语言关键字的是()A intB floatC classD char答案:C解析:在 C 语言中,class 不是关键字,int、float 和 char 都是常见的数据类型关键字。
2、以下变量定义中,正确的是()A int a=b=5;B char a='A';C float a=55, b=66;D double a; b;答案:C解析:A 选项中不能在定义时连续赋值;B 选项应该是 char a ='A';注意单引号;D 选项应该是 double a, b; 中间用逗号分隔。
3、以下程序段的输出结果是()```cint a = 5, b = 4, c = 6;if (a > b && a > c)printf("a 最大\n");else if (b > a && b > c)printf("b 最大\n");elseprintf("c 最大\n");```A a 最大B b 最大C c 最大D 编译错误答案:C解析:因为 5 不大于 6,所以执行 else 部分,输出“c 最大”。
4、以下循环语句执行的次数是()```cfor (int i = 0; i < 5; i++){printf("%d ", i);}```A 4 次B 5 次C 6 次D 无限次答案:B解析:从 0 到 4 ,一共 5 次。
5、以下数组定义中,正确的是()A int a5 ={1, 2, 3, 4, 5, 6};B int a ={1, 2, 3};C int a5 ={1, 2};D int a3 =(1, 2, 3);答案:B解析:A 选项数组长度为 5,却初始化了 6 个元素;C 选项只初始化了前两个元素,后面三个元素默认为 0;D 选项初始化方式错误,应该用花括号。
《程序设计基础(C语言)》期末考试试卷(B卷)及答案

《程序设计基础(C 语言)》期末考试试卷(B 卷)适用专业:2分,共60分)三、程序填空题(共16分)【1】 【2】 【3】《程序设计基础(C语言)》期末考试试卷(B卷)一、单项选择题(只有一个答案是正确的,请把正确选项的序号,填入答题卡中,否则无效。
多选不给分。
每题2分,共60分)1.结构化程序设计所规定的三种基本控制结构是()A) 树形、网形、环形 B)输入、处理、输出C)主程序、子程序、函数 D)顺序、选择、循环2.算法的复杂度是指 ( )A)算法程序中的指令条数 B)算法程序的长度C)算法执行过程中所需要的存储空间 D)算法程序所占的存储空间3.编制一个好的程序,首先要保证它的正确性和可靠性,还应强调良好的编程风格,在书写功能性注释时应考虑()A)仅为整个程序作注释 B)为程序段作注释C)仅为每个模块作注释 D)为每个语句作注释4.对C语言源程序执行过程描述正确的是( )A)从main函数开始执行,到源程序最后一个函数结束B)从程序中第一个函数开始执行,到最后一个函数结束C)从第一个函数开始执行,到main函数结束D)从main函数开始执行5.以下对C语言的描述中,正确的是 ( )A)最小的C语言源程序中没有任何内容B)C语言源程序中要求每行只能书写一条语句C)注释可以出现在C语言源程序中的任何位置D)C语言源程序中可以有重复的函数名6.设c1,c2都是char型变量,则以下不正确的函数调用为()A) printf("%c,%c",c1,c2); B) getchar(c1);C) putchar("\"); D) putchar(c1);7.以下运算符中优先级最高的是( )A) <= B) = C) ++ D)and8..属于C语言中合法的字符串常量的是 ( )A)hellow B)“china” C)‘hellow’ D)$abc$9.以下能正确定义整型变量a,b,c并为其赋初值为 2 的是()A) int a=b=c=2; B) int a,b,c=2; C) a=b=c=2; D) int a=2,b=2,c=2;10.定义a为整型变量,且设其初值为5,则表达式a+=a-=a*=a 的值为 ( )A)5 B)0 C)25 D)-511. 若变量已正确说明为int类型,要给a、b、c输入数据,以下正确的输入语句是()A) scanf(“%D%D%D”,a,b,c); B)scanf(“%d%d%d”,a,b,c);C) read(a,b,c); D)scanf(“%d%d%d”,&a,&b,&c);12.设x,y,z,k都是int 型变量,则执行表达式:x=(y=2,z=4,k=4)后,x的值为( ) A) 2 B)4 C)6 D)1213.若有定义语句 float x[6]; 则以下对x数组元素的正确引用是()A) x+2 B) &(x+2) C) *(x+2) D) *&x[6]14. 若有以下程序()main(){ int i=1,j=2,k=3;if(i++= =1&&(++j= =3||k++= =3))printf("%d %d %d\n",i,j,k);}程序运行后的输出结果是(A) 2 3 4 (B) 2 3 3 (C)2 2 3 (D) 1 2 315.程序运行后的输出结果是( )A)5 B)4 C)6 D)不确定main(){ int a=5,b=4,c=6,d;d=a>b?(a>c?a:c):(b);printf(“%d \ n”,d);}16.程序运行后的输出结果是( )A)a=2,b=1 B)a=1,b=1 C)a=1,b=0 D)a=2,b=2main(){ int x=1,y=0,a=0,b=0;switch(x){case 1: switch(y){case 0: a++; break;case 1: b++; break;}case 2: a++; b++; break;}printf(“a=%d,b=%d\ n”,a,b);}17.有以下程序段,其输出结果是()int x=3;do { printf(“%d”,x-=2); } while(!(--x));A) 死循环 B)3 0 C) 1 D) 1 -218.以下程序的输出结果的是 ( )A)11 B)10 C)9 D)101main(){ int i,j;for(j=10;j<11;j++){ for(i=9;i<j;i++)if(!(j%i)) break;if(i>=j-1) printf(“%d”,j); }}19.以下对一维数组st的正确说明是 ( )A) int st(10); B) int k=10,st[k];C) int k, st[k]; D) #define SIZE 8 int st[SIZE];20.C语言规定,函数返回值的类型是由()A)调用该函数时的主调函数类型决定 B)return语句中的表达式类型所决定C)调用该函数时系统临时决定 D)定义该函数时所指定的函数类型决定21.以下正确的数组定义语句是()A) int st[2][2]={1,2,3,4,5}; B) float st[3][]={{1},{2},{3}}; C) int st[2][3]={{1},{1,2},{1,2,3}}; D) int st[1][4]={4};22.以下程序段的输出结果是()char str[10]={‘s’,‘t’,‘u’,‘d’,‘e’,‘n’,‘t’};printf(“%d\n”,strlen(str));A) 7 B) 8 C) 10 D) 存在语法错误23.程序运行后的输出结果是()A)6,5,6,5 B)5,6,5,6 C)6,5,5,6 D)5,6,6,5main(){ int a=5,b=6,*p,*q,*r;p=&a; q=&b;r=p; p=q; q=r;printf(“%d,%d,%d,%d\n”,*p,*q,a,b);}24. 若用数组名作为实参,则传递给形参的是()A) 数组的首地址 B) 数组第一个元素的值C) 数组中全部元素的值 D) 数组元素的个数25. 若定义:enum weekday day;则下面除之外其他三者等价()A)day=(enum weekday)2; B)day=Tuesday;C)day=2; D)day=(enum weekday)(5-3);26. 若定义()struct student { int num; char name[20]; float score; } stu1, *ptr = &stu1;则下面除之外其他三者等价A)stu1.num B)ptr.num C)(*ptr).num D)ptr->num27. 以下程序的功能是()#include stdio.hmain(){ int i=0,n=0; char s[80],*p; p=s;strcpy(p, it s a book );for(; *p!= \0 ;p++)if (*p= = ) i=0;else if(i=0) { n++; i=1;}printf( n=%d\n ,n);}A) 统计字符串中的单词个数 B) 统计字符串中的空格个数C) 统计字符串中的字母个数 D) 统计字符串中的全部字符个数28.以下语句或语句组中,能正确进行字符串赋值的是()A)char *sp; *sp="right!"; B)char s[10];s="right!";C)char s[10];*s="right!"; D)char *sp="right!";29.设有以下定义int a[6][8],(*p)[8]=a; 能正确引用元素a[3][4]的是()A)*(*(p+3)+4) B)*(p+3)+4 C)*(*(p+4)+3) D)*(*(p+2)+3)30.在以下选项中,操作不合法的一组是( )。
C程序设计教程期末复习题及答案

C程序设计教程期末复习题及答案习题 1 一、选择题1(在C#中 B 都是对象。
A 任何类型B 任何事物C 任何代码D 任何技术 2(对象包含数据和 A 的方法。
A 在该数据上工作B 调用C 函数调用D 传递参数 3(一个类是 D 的蓝本。
A 数据集合B 函数集合C 方法集合D 给定功能集合 4(.NET构架包含公用语言运行时期和 B 。
5(.NET的核心是 A 。
A CLRB Windows2000C DNAD 分解平台 6(C#程序以 B 扩展名保存编写的程序。
A .CS B .PS C .CSS D .SCB 的命名空间。
7(System是A 存储系统类B 控制台类C I/O操作D 新项目 8(namespace用于声明 B 。
A 新项目B 一个命名空间C 类与方法D 指令 9(每个C#程序必须有一个 D 方法。
A 类方法B 构造方法C MainD 重载方法二、问答题1. 面向对象编程的三大原则是什么,答:封装、继承和多态性。
2. 封装是什么,答:封装是用于隐藏对象实际的制作细节。
3. 继承是什么,答:继承是在建立新的特定对象时,可以使用现有对象的功能性。
4. 多态性是什么,答:多态性是程序代码能够依据实际对象所需而进行不同的行为。
5. .NET的核心构件包括哪些,答:(1).NET构造块服务或有计划的访问某些服务。
(2)将在新的Internet设备上运行的.NET设备软件。
(3).NET用户经验。
6. CLR的作用是什么,答:CLR是.NET的核心,它是一个运行时期环境,在该环境中,以不同语言编写的应用程序均能始终运行。
三、编程题使用.NET代码编辑器编写一个C#应用程序,以在屏幕打印出:C# is the Component-oriented language in C and C++ family of language.要求:(1) 使用using System命名空间,即定位System命名空间的Console类。
《程序设计基础(C)》机考期末试卷(二)及答案

《程序设计基础(C)》机考期末试卷(二)及答案所属语言:C语言试卷方案:2017级C期末考试试卷总分:100分共有题型:5种一、判断共10题(共计15分)第1题(1.5分)题号:1678 难度:易第10章若要用fopen函数打开一个新的二进制文件,该文件既能读也能写,则文件打开方式为rb+.答案:N第2题(1.5分)题号:1642 难度:易第6章在一个函数内定义的变量只在本函数范围内有效.答案:Y第3题(1.5分)题号:1580 难度:易第3章在switch语句中,swicth与case后的表达式可以为任意类型.答案:N第4题(1.5分)题号:1617 难度:中第5章已知字符数组str1的初值为"C Language",则语句str2=str1;执行后字符数组str2也存放字符串"C Language".答案:N第5题(1.5分)题号:1592 难度:难第3章若有条件表达式(!x)?a++:b++;则表达式中(!x)等价于x!=0.答案:N第6题(1.5分)题号:29 难度:中第1章进行宏定义时,宏名必须使用大写字母表示。
答案:N第7题(1.5分)题号:1095 难度:易第1章组成C语言程序的是主函数和库函数.答案:N第8题(1.5分)题号:1658 难度:难第8章&b指变量b的地址处所存放的值.答案:N第9题(1.5分)题号:1607 难度:中第4章用do-while语句构成的循环,在while后的表达式为非零时结束循环.答案:N第10题(1.5分)题号:1624 难度:易第6章C语言程序中的main()函数必须放在程序的开始部分.答案:N二、单选共10题(共计20分)第1题(2.0分)题号:3562 难度:中第9章下列描述正确的是().A:用户可通过类型定义产生一种新的数据类型B:类型定义格式要求中的标识符必须是大写字母序列C:类型定义格式要求中的类型名必须是大写字母序列D:以上描述均不正确答案:D第2题(2.0分)题号:90 难度:中第1章以下数据中,不正确的数值或字符常量是()。
C语言程序设计(期末考试)

C语言程序设计(期末考试)选择题,每空一分(共80题)1.C语言程序是由()构成的。
A)一些可执行语言B)main函数C)函数(正确答案)D)包含文件中的第一个函数2.()是构成C语言程序的基本单位。
A、函数(正确答案)B、过程C、子程序D、子例程3.C语言程序从()开始执行。
A)程序中第一条可执行语句B)程序中第一个函数C)程序中的main函数(正确答案)D)包含文件中的第一个函数4.C语言程序从main()函数开始执行,所以这个函数要写在()。
A)程序文件的开始B)程序文件的最后C)它所调用的函数的前面D)程序文件的任何位置(正确答案)5、以下说法中正确的是()。
A、C语言程序总是从第一个定义的函数开始执行B、在C语言程序中,要调用的函数必须在main()函数中定义C、C语言程序总是从main()函数开始执行(正确答案)D、C语言程序中的main()函数必须放在程序的开始部分6.下列方法中错误的是()。
A.主函数可以分为两个部分:主函数说明部分和主函数体。
B.主函数可以调用任何非主函数的其它函数。
C.任何非主函数可以调用其它任何非主函数。
D.程序可以从任何非主函数开始执行。
(正确答案)7.下列说法错误的是()A.C程序运行步骤是编辑、编译、连接、执行。
B.C语言的变量名必须用小写,常量用大写。
(正确答案)C.C语言的三种基本结构是顺序、选择、循环。
D.C程序一定由函数构成的。
8.下列关于C语言的说法错误的是()。
A.C程序的工作过程是编辑、编译、连接、运行B.C语言不区分大小写。
(正确答案)C.C程序的三种基本结构是顺序、选择、循环D.C程序从main函数开始执行9.VC默认的C语言源程序扩展名为.CPP,需经过()之后,生成.exe文件,才能运行。A)编辑、编译B)编辑、连接C)编译、连接(正确答案)D)编辑、改错10.下列说法中正确的是()。
A.由于C源程序是高级语言程序,因此一定要在VC软件中输入。
烟台大学程序设计基础期末考试复习题及参考答案

2022 程序设计基础(C语言)C一、单选题(每题3分,共20道小题,总分值60分)1.以下程序段完全正确的是________A.int *p ; scanf ( “%d ”, & p) ;B.int *p ; scanf( “%d ”, p ) ;C.int k , *p = &k ; scanf ( “%d”, p) ;D.int k , *p ; *p = &k; scanf ( “%d”,p);正确答案:C2.以下不能定义为用户标识符的是__________A.MainB._0C._intD.sizeof正确答案:D3.设形参和实参都为int类型变量,以下正确的说法是()。
A.实参和与其对应的形参占用独立的存储单元B.实参和与其对应的形参共占用一个存储单元C.只有当实参和与其对应的形参同名时才共占用一个存储单元D.形参是虚拟的,不占用存储单元正确答案:A4.有函数关系如下,能正确表示该关系的程序段是()。
A.y=x+1; if(x>=0) if(x= =0) y=x; else y=x-1;B.y=x-1; if(x!=0) if (x>0) y=x+1; else y=x;C.if (x<=0) if (x<0) y=x-1; else y=x; else y=x+1D.y=x; if(x<=0) if (x<0) y=x-1; else y=x+1;正确答案:C5.以下程序段完全正确的是___________。
A.int *p ; scanf ("%d" , & p) ;B.int *p ; scanf("%d" , p ) ;C.int k , *p = &k ; scanf ("% d" , p) ;D.int k , *p ; *p = &k; scanf ("%d" ,p);正确答案:C6.当说明一个结构体类型变量时系统分配给它的内存是()。
C语言程序设计期末考试试题含答案

C语言程序设计期末考试试题含答案一、选择题(每题 2 分,共 40 分)1、以下选项中,不是 C 语言关键字的是()A intB floatC charD string答案:D解释:string 不是 C 语言的关键字,C 语言中表示字符串通常使用字符数组。
2、以下能正确表示八进制整数的是()A 0o123B 0123C 0x123D 123答案:B解释:在 C 语言中,八进制整数以数字 0 开头,所以 0123 是八进制整数。
3、以下变量定义中,合法的是()A int a=b=1;B char a='\0';C float 2a;D double a&;答案:B解释:A 选项中不能连续赋值;C 选项变量名不能以数字开头;D 选项变量名不能包含特殊字符&。
4、若有定义:int a=5, b=2; 则表达式 a/b 的值是()A 25B 2C 20D 3答案:B解释:C 语言中,两个整数相除结果为整数,舍去小数部分。
5、若有定义:int a5 ={1, 2, 3, 4, 5};则 a2的值是()A 2B 3C 4D 5答案:B解释:数组下标从 0 开始,所以 a2对应的值是 3 。
6、以下关于函数的叙述中,正确的是()A 函数可以嵌套定义B 函数可以嵌套调用C 函数可以没有返回值D 以上都不对答案:C解释:函数不能嵌套定义,但可以嵌套调用。
函数可以没有返回值,此时函数类型为 void 。
7、若有以下函数定义:```cint fun(int a, int b){return a + b;}```则调用 fun(1, 2)的返回值是()A 1B 2C 3D 4答案:C解释:函数 fun 实现了两个整数的相加,所以 fun(1, 2)的返回值是3 。
8、以下关于指针的叙述中,错误的是()A 指针可以指向变量B 指针可以指向数组C 指针可以指向函数D 指针不可以进行加减运算答案:D解释:指针可以进行加减运算,但运算的结果要根据指针所指向的数据类型来确定。
C语言程序设计期末考试试题及答案

C语言程序设计期末考试试题及答案一、选择题(每题2分,共20分)1. C语言中,下列哪个选项是合法的数据类型?A. intB. floatC. characterD. string2. 关于C语言中的变量,以下哪个说法是正确的?A. 变量可以在程序中的任何位置声明B. 变量在使用前必须先声明C. 变量不能重复声明D. 变量的作用域可以是全局的,但不能是局部的3. 在C语言中,以下哪个操作符用于取模?A. %B. /C.D. &4. 下面哪个函数用于动态分配内存?A. malloc()B. alloc()C. new()D. calloc()5. 在C语言中,以下哪个关键字用于定义结构体?A. structB. unionC. enumD. class二、填空题(每题2分,共20分)6. 在C语言中,标准输入输出头文件是_________。
7. 一个整型变量占用_________个字节。
8. 如果一个整型变量声明为`int a = 5;`,那么`printf("%d", a++);`的输出是_________。
9. 在C语言中,函数返回值的类型默认是_________。
10. 指针是一种特殊类型的变量,用于存储_________的地址。
三、编程题(共40分)11. 编写一个C程序,实现一个简单的计算器,包括加、减、乘、除四种运算。
12. 编写一个C程序,实现一个函数,该函数接受一个整数数组和一个整数n,返回数组中与n相等的元素个数。
13. 编写一个C程序,实现一个结构体`Student`,包含学生的姓名、学号和成绩。
编写一个函数,输入学生的信息并打印出来。
### 答案一、选择题答案1. A. int2. B. 变量在使用前必须先声明3. A. %4. A. malloc()5. A. struct二、填空题答案6. stdio.h7. 48. 59. int10. 变量三、编程题答案11. 计算器程序示例:```c#include <stdio.h>int main() {char operator;double firstNumber, secondNumber;printf("Enter an operator (+, -, , /): ");scanf("%c", &operator);printf("Enter two operands: ");scanf("%lf %lf", &firstNumber, &secondNumber);switch(operator) {case '+':printf("%.1lf + %.1lf = %.1lf", firstNumber, secondNumber, firstNumber + secondNumber);break;case '-':printf("%.1lf - %.1lf = %.1lf", firstNumber, secondNumber, firstNumber - secondNumber);break;case '':printf("%.1lf %.1lf = %.1lf", firstNumber, secondNumber, firstNumber secondNumber);break;case '/':if(secondNumber != 0.0)printf("%.1lf / %.1lf = %.1lf", firstNumber, secondNumber, firstNumber / secondNumber);elseprintf("Divide by zero situation.");break;default:printf("Error! operator is not correct");}return 0;}```12. 数组中与n相等的元素个数函数示例:```c#include <stdio.h>int countOccurrences(int arr[], int n, int size) {int count = 0;for (int i = 0; i < size; i++) {if (arr[i] == n) {count++;}}return count;}int main() {int arr[] = {1, 2, 3, 4, 5, 2, 2};int n = 2;int size = sizeof(arr) / sizeof(arr[0]);int count = countOccurrences(arr, n, size);printf("Number of occurrences of %d is %d", n, count);return 0;}```13. 学生信息结构体及打印函数示例:```c#include <stdio.h>typedef struct {char name[50];int studentID;float grade;} Student;void printStudentInfo(Student student) {printf("Name: %s\n", );printf("Student ID: %d\n", student.studentID); printf("Grade: %.2f\n", student.grade);}int main() {Student student;printf("Enter name: ");scanf("%s", );printf("Enter student ID: ");scanf("%d", &student.studentID); printf("Enter grade: ");scanf("%f", &student.grade);printStudentInfo(student);return 0;}```。
c程序设计大学期末考试题及答案

c程序设计大学期末考试题及答案一、选择题(每题2分,共20分)1. C语言中,以下哪个关键字用于声明函数?A. intB. floatC. returnD. void答案:D2. 在C语言中,以下哪个运算符用于逻辑与操作?A. &&B. ||C. !D. %答案:A3. 若有定义int a=5;,则表达式a++的值为多少?A. 4B. 5C. 6D. 0答案:B4. 在C语言中,以下哪个函数用于计算字符串的长度?A. strcatB. strcmpC. strcpyD. strlen答案:D5. 下面哪个选项是C语言中的合法整型常量?A. 0x12B. 0x1zC. 0x1.2D. 0x1.2e答案:A6. C语言中,以下哪个选项是正确的二维数组声明?A. int a[3,4];B. int a[3][4];C. int a[3][];D. int a[][];答案:B7. 在C语言中,以下哪个选项是正确的字符串字面量?A. "Hello, World!"B. 'Hello, World!'C. "Hello World!"D. 'Hello World!'答案:A8. 若有定义char c='A';,则表达式c+32的值为多少?A. 65B. 97C. 66D. 98答案:B9. 在C语言中,以下哪个选项是正确的结构体声明?A. struct Student {int age; char name[20];} stu;B. struct {int age; char name[20];} stu;C. struct Student {int age; char name[20];} stu[];D. struct {int age; char name[20];} stu[];答案:A10. 在C语言中,以下哪个选项是正确的指针声明?A. int *p;B. *int p;C. int *p[];D. int (*p)[];答案:A二、填空题(每题2分,共20分)1. 在C语言中,用于定义一个无返回值的函数的关键字是________。
程序设计基础(C)第1——5章复习题答案

程序设计基础(C)第1——5章复习题及参考答案一、单选题1.可以在C语言中使用的一组用户标识符是(C)。
A. 3BB. KEYC. _123D. voidsizeof cl_c2 T3_al_ CHA TDO -for scanf 6B2.while(!x)中的!x与下面条件(A)等价。
A. x==0B. x==1C. x!=5D. x!=03.增1减1运算只能作用于(B)。
A. 常量B. 变量C. 表达式D. 函数4.下面四个选项中,均是字符常量或数值常量的选项是(A)。
A. 0.0B. “A”C. …3‟D. +0010f 3.9E-2.5 011 0xabcd8.9e 1e1 0xff00 2e3…&‟ …\”‟ 0a 50.5.下选项中正确的实型常量是(D)。
A. 0B. 0.618*10^2C. .871D. 3.1415 6.C语言中运算对象必须是整型的运算符是(D)。
A. %= 与/B. = 与&C. * 与^D. % 与|7.设a=2,b=2;则++a+b的结果是( D),a的结果是( B ),b的结果是( A)。
A. 2B. 3C. 4D. 59.下列运算符中优先级最低的是(B)。
A. +B. &&C. <=D. sizeof10.设int a=2;则表达式(a++*1/3)的值是(A),a的值是(D)。
A. 0B. 1C. 2D. 311.字符数据在内存中的存储采用的是(D)。
A. 反码B. 补码C. EBCDIC码D. ASCII码12.在C语言类型说明中,int、char、short等类型数据的长度是(D)。
A. 固定的B. 由用户自己定义的C. 任意的D. 与机器字的长度有关的13.在C语言中,不同类型的两个数据混合运算时,要先转换成相同类型再进行运算,设有int,long,unsigned和char类型的变量和数据,则它们的转换规律是(C),表达式最后的运算结果是(D)类型的数据。