程序设计基础(C)期末复习题
- 格式:pdf
- 大小:2.86 MB
- 文档页数:16
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语言程序设计期末考试试题(含答案)一、选择题(共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语言基础知识的掌握程度以及编程能力。
以下是考试题目及参考答案。
一、选择题(每题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程序设计期末复习题一、填空题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程序设计期末考试复习题一、选择题(每题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语言中,数组的索引是从________开始的。
对外经济贸易大学远程教育学院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语言程序设计期末考试试题含答案一、选择题(每题 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 卷)适用专业: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程序设计教程期末复习题及答案习题 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类。