c语言试卷第二套
- 格式:pdf
- 大小:175.05 KB
- 文档页数:10
c语言二级考试题及答案### C语言二级考试题及答案#### 单项选择题1. 题目:以下哪个选项是C语言中合法的变量名?- A. 2variable- B. variable-name- C. $variable- D. variable_name答案:B2. 题目:C语言中,以下哪个选项是正确的字符串字面量? - A. "Hello, World!"- B. 'Hello, World!'- C. "Hello World"- D. 'Hello World'答案:A3. 题目:在C语言中,以下哪个选项是正确的整型常量? - A. 0x1A- B. 1.2E3- C. 0123- D. 0b1010答案:A#### 填空题1. 题目:在C语言中,以下代码段的输出结果是____。
```cint a = 5;printf("%d", a++);```答案:52. 题目:以下代码段中,变量`b`的值是____。
```cint a = 10, b;b = a % 3;```答案:13. 题目:以下代码段中,变量`c`的值是____。
```cfloat a = 2.5, b = 4.5;int c = a + b;```答案:7#### 编程题1. 题目:编写一个C语言程序,计算并输出以下数列的前10项之和:1, 1/2, 1/3, 1/4, ...```c#include <stdio.h>int main() {double sum = 0.0;for (int i = 1; i <= 10; i++) {sum += 1.0 / i;}printf("Sum of the first 10 terms: %f\n", sum); return 0;}```2. 题目:编写一个C语言程序,实现两个整数的交换。
《高级程序设计基础(C语言)》考试题二一、选择题(共20题,每题2分)1.C语言中规定函数的返回值的类型是由( )。
A.retrurn语句中的表达式类型所决定B.调用该函数时的主调用函数类型所决定C.调用该函数时系统临时决定D.在定义该函数时所指定的函数类型所决定2.对于C语言的函数,下列叙述中正确的是()。
A.函数的定义不能嵌套,但函数调用可以嵌套B.函数的定义可以嵌套,但函数调用不能嵌套C.函数的定义和调用都不能嵌套D.函数的定义和调用都可以嵌套3.若定义:int a=511,*b=&a;, 则printf("%d\n",*b);的输出结果为A) 无确定值B) a的地址C) 512 D) 5114.以下选项中,对指针变量p不正确的操作是()。
A.int a[6],*p; p=&a; B.int a[6],*p; p=a;C.int a[6]; int *p=a=1000; D.int a[6]; int *p1,*p2=a; *p1=*p2;5.下面程序段的运行结果是()。
char str[]=”abc”,*p=str;printf(“%d\n”,*(p+3));A.67;B.0;C.字符‘c’的地址;D.字符‘c’;6.下面语句中能正确进行字符串赋值操作的是()。
A.char str[5]={“abcde”};B.char str[5]={…a‟,‟b‟,‟c‟,‟d‟,‟e‟} C.char *str; str=”abcde”;D.char *str; scanf(“%s”,str);7.下面程序段的运行结果是()。
char s[6]; s=”abcd”; printf(“\”%s\”\n”,s);A.”abcd”;B.”\”abcd”;C.”\”abcd\””;D.编译出错;8.以下程序的输出结果是( )main(){ int i, a[10];for(i=9;i>=0;i--) a[i]=10-i;printf("%d%d%d",a[2],a[5],a[8]);}A) 258 B) 741 C) 852 D) 3699.在定义int a[10];之后,对a的引用正确的是( )。
全国计算机二级《C语言》考试题库与答案全国计算机二级《C语言》考试题库与答案在学习、工作中,我们都离不开试题,借助试题可以检验考试者是否已经具备获得某种资格的基本能力。
什么样的试题才能有效帮助到我们呢?以下是店铺为大家收集的全国计算机二级《C语言》考试题库与答案,欢迎大家分享。
全国计算机二级《C语言》考试题库与答案篇1(1)下列关于栈叙述正确的是( )。
A.栈顶元素最先能被删除B.栈顶元素最后才能被删除C.栈底元素永远不能被删除D.栈底元素最先被删除(2)下列叙述中正确的是( )。
A.在栈中,栈中元素随栈底指针与栈顶指针的变化而动态变化B.在栈中,栈顶指针不变,栈中元素随栈底指针的变化而动态变化C.在栈中,栈底指针不变,栈中元素随栈顶指针的变化而动态变化D.以上说法都不正确某二叉树共有7个结点,其中叶子结点只有l个,则该二叉树的深度为(假设根结点在第1层)( )。
A.3B.4C.6D.7软件按功能可以分为应用软件、系统软件和支撑软件(或工具软件)。
下面属于应用软件的是( ):A.学生成绩管理系统B.c语言编译程序C.UNIX操作系统D.数据库管理系统(5)结构化程序所要求的基本结构不包括( )。
A.顺序结构B.GOT0跳转C.选择(分支)结构D.重复(循环)结构(6)下面描述中错误的是( )。
A.系统总体结构图支持软件系统的详细设计B.软件设计是将软件需求转换为软件表示的过程C.数据结构与数据库设计是软件设计的任务之一D.PAD图是软件详细设计的表示工具(7)负责数据库中查询操作的数据库语言是( )。
A.数据定义语言B.数据管理语言C.数据操纵语言D.数据控制语言一个教师可讲授多门课程,一门课程可由多个教师讲授。
则实体教师和课程间的联系是( )。
A.1:1联系B.1:m联系C.m:1联系D.m:n联系(9)已知大写字母A的ASCIl码值是65,小写字母a的ASCIl码值是97。
以下不能将变量C中的大写字母转换为对应小写字母的语句是( )。
c语言二级试题及答案一、选择题1. 在C语言中,以下哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A2. 下列哪个是正确的C语言变量声明?A. int var = 10;B. var = 10;C. int var = 10.5;D. var = 10.5;答案:A3. 在C语言中,以下哪个函数用于将字符串复制到另一个字符串?A. strcpy()B. strcat()C. strlen()D. strcmp()答案:A二、填空题1. 在C语言中,使用________函数可以计算一个字符串的长度。
答案:strlen2. 定义一个指针变量,指向一个整型变量,应使用关键字________。
答案:int *3. C语言中,用于文件操作的库函数位于________头文件中。
答案:stdio.h三、简答题1. 简述C语言中数组和指针的区别。
答案:数组是一种数据结构,可以存储一系列相同类型的元素,而指针是一个变量,它存储了另一个变量的内存地址。
数组名可以作为地址常量使用,但数组本身不能被赋值或移动;指针可以被赋值、移动和作为参数传递给函数。
2. 解释C语言中递归函数的概念及其使用场景。
答案:递归函数是指在函数内部调用自身的函数。
递归常用于解决可以分解为相似子问题的问题,如树的遍历、排序算法(如快速排序、归并排序)等。
递归函数必须有一个明确的终止条件,以避免无限递归。
四、编程题1. 编写一个C语言程序,实现求一个整数数组中的最大值和最小值,并打印出来。
```c#include <stdio.h>void findMinMax(int arr[], int size, int *max, int *min) {*max = arr[0];*min = arr[0];for (int i = 1; i < size; i++) {if (arr[i] > *max) *max = arr[i];if (arr[i] < *min) *min = arr[i];}}int main() {int numbers[] = {34, 78, 12, 56, 90, 23};int max, min;findMinMax(numbers, sizeof(numbers) / sizeof(numbers[0]), &max, &min);printf("最大值: %d\n", max);printf("最小值: %d\n", min);return 0;}```答案:上述程序定义了一个`findMinMax`函数,用于找出数组中的最大值和最小值,并通过`main`函数调用并打印结果。
c二级考试试题和答案及分析1. 以下哪个选项是C语言中的关键字?A. intB. floatC. doubleD. string答案:A分析:在C语言中,`int` 是一个关键字,用于声明整型变量。
而`float` 和 `double` 用于声明浮点型变量,`string` 不是C语言的关键字,它是C++中的关键字。
2. 以下哪个函数用于计算两个数的和?A. max(a, b)B. min(a, b)C. sum(a, b)D. average(a, b)答案:C分析:在C语言中,并没有内置的 `sum` 函数,但是可以通过自定义函数来实现两个数的求和。
通常,自定义的求和函数可以命名为`sum`,其函数原型可以是 `int sum(int a, int b)`。
3. 在C语言中,以下哪个语句用于声明一个整型数组?A. int array[5];B. int [5] array;C. int array[];D. int array = 5;答案:A分析:在C语言中,声明一个整型数组的正确方式是指定数组类型、数组名和数组大小。
因此,`int array[5];` 是正确的声明方式,它声明了一个包含5个整型元素的数组。
4. 以下哪个选项是C语言中的条件语句?A. ifB. switchC. whileD. for答案:A分析:在C语言中,`if` 是条件语句,用于根据条件的真假来执行不同的代码块。
而 `switch` 是多分支选择语句,`while` 和 `for` 是循环语句。
5. 在C语言中,以下哪个函数用于输出字符串?A. printf("%s", str);B. scanf("%s", str);C. puts(str);D. gets(str);答案:C分析:`puts(str)` 是C语言中用于输出字符串的函数,它会在输出的字符串后自动添加一个换行符。
c二级考试试题和答案及分析1. 题目:以下哪个选项是C语言中合法的变量名?A. 2variableB. variable2C. variable-nameD. variable$name答案:B分析:在C语言中,变量名必须以字母或下划线开头,后面可以跟字母、数字或下划线。
因此,选项B "variable2" 是合法的变量名,而其他选项因包含非法字符或不符合命名规则而不正确。
2. 题目:以下哪个选项是C语言中正确的整型常量表示?A. 0x1AB. 0X1AC. 0x1aD. 0X1a答案:A分析:C语言中的整型常量可以用十六进制形式表示,十六进制常量以"0x"或"0X"开头,后面跟着十六进制数字。
因此,选项A "0x1A" 和选项B "0X1A" 都是正确的,但选项C "0x1a" 和选项D "0X1a" 也是正确的,因为十六进制常量不区分大小写。
3. 题目:以下哪个选项是C语言中正确的字符串字面量?A. "Hello, World!"B. 'Hello, World!'C. "Hello, World!\"D. "Hello, World!\"答案:A分析:在C语言中,字符串字面量是用双引号括起来的字符序列。
选项A "Hello, World!" 是正确的字符串字面量。
选项B 使用了单引号,表示单个字符而不是字符串。
选项C 和选项D 中的反斜杠没有被正确转义,因此它们不是有效的字符串字面量。
4. 题目:以下哪个选项是C语言中正确的函数声明?A. int add(int a, int b);B. int add(a, b);C. add(int a, int b);D. int add();答案:A分析:在C语言中,函数声明需要指定返回类型和参数类型。
C语言试题及答案(6)我爱学习2009-09-13 10:05:46 阅读3030 评论1 字号:大中小C语言程序设计技能测试考试说明1、在D盘或E盘根目录下创建文件夹以存放程序文件。
2、1-4题的程序名称分别为:q1.c、q2.c、q3.c、q4.c 。
上传源程序代码到教师指定机器。
3、第1-3题,任意选择两道题,第4题必做。
C语言程序设计技能测试题(第1套)一、利用循环打印出以下图案(行数由键盘输入)。
(30分)**********二、输入一个正整数,按照逆序显示输出各位数字。
例如:输入2389,则输出为9832。
(30分)三、求s=1!+2!+3!+4!+5!并输出结果。
(30分)四、学生记录由学号、姓名、成绩组成(学号、成绩都为整数),使用结构体数组,将下列学生的数据按成绩(由大到小)排序后显示到屏幕上。
(学生数据可以直接在程序中定义,或者从键盘录入)(40分)1 Li 902 wang 953 zhao 804 liu 855 chen 946 yang 79C语言程序设计技能测试考试说明1、在D盘或E盘根目录下创建文件夹以存放程序文件。
2、1-4题的程序名称分别为:q1.c、q2.c、q3.c、q4.c 。
上传源程序代码到教师指定机器。
3、第1-3题,任意选择两道题,第4题必做。
C语言程序设计技能测试题(第2套)一、从键盘输入一个正整数,输出各位数字的和。
(30分)例如:输入2389,输出为22。
(因为2+3+8+9=22)。
二、输出101-200之间的所有素数。
(30分)三、有一个已经排好序的数组a[30]={7,10,13,16,20,24,26,46,68,69,99}。
从键盘录入一个整数,要求按原来的排序规律将它插入数组中,并显示插入后的数组的内容。
(30分)四、学生记录由学号、姓名、成绩组成(学号、成绩都为整数),将下列学生数据中不及格的学生信息显示出来。
(学生数据可以直接在程序中定义,或者从键盘录入)(40分)2 wang 953 zhao 434 liu 855 chen 946 yang 51C语言程序设计技能测试考试说明1、在D盘或E盘根目录下创建文件夹以存放程序文件。
国家二级计算机考试c语言试题及答案国家二级计算机考试C语言试题及答案一、选择题(本大题共10小题,每小题2分,共20分。
每小题只有一个正确答案。
)1. 在C语言中,以下哪个关键字用于定义一个函数?A. intB. voidC. returnD. function答案:A2. 下列哪个选项是合法的C语言变量名?A. 2variableB. variable2C. variable2!D. _variable2答案:D3. C语言中,用于表示逻辑“与”的运算符是?A. &&B. ||C. !D. =答案:A4. 在C语言中,哪个函数用于将字符串复制到另一个字符串?A. strcpyB. strcatC. strcmpD. strlen答案:A5. 下列哪个选项是正确的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 */答案:A6. 在C语言中,以下哪个选项是正确的数组声明?A. int arr[5] = {1, 2, 3};B. int arr[] = {1, 2, 3};C. int arr[5] = {1, 2};D. int arr = {1, 2, 3};答案:A7. C语言中,用于计算两个整数相加的函数是?A. strcatB. strcmpC. strcpyD. sum答案:D(注:sum不是C语言标准库函数,此处假设为自定义函数)8. 下列哪个选项是C语言中的合法常量?A. 0x1AB. 1.23e5C. 123.45D. All of the above答案:D9. C语言中,用于定义一个结构体的关键字是?A. structB. unionC. enumD. typedef答案:A10. 在C语言中,哪个关键字用于声明一个指针?A. intB. charC. floatD. *答案:D二、填空题(本大题共5小题,每小题2分,共10分。
c语言二级考试题及答案一、单项选择题(本大题共40小题,每小题2分,共80分)1. 在C语言中,下列哪个选项是正确的整型常量?A. 0.5B. 0x12C. 0x12.0D. 0x12L答案:B2. C语言中,下列哪个选项是正确的字符串字面量?A. "hello"B. 'hello'C. "hello'"D. 'hello"答案:A3. 在C语言中,下列哪个选项是合法的标识符?A. 2variableB. variable2C. _variableD. variable-2答案:C4. 下列哪个选项是C语言中的关键字?A. intB. integerC. realD. double答案:A5. 在C语言中,下列哪个选项是正确的二进制常量表示?A. 0x1BB. 0b1101C. 0B1101D. 0x1101答案:B6. C语言中,下列哪个选项是正确的浮点型常量表示?A. 3.14B. 3.14e2C. 3.14E-2D. 3.14f答案:C7. 在C语言中,下列哪个选项是正确的字符常量表示?A. 'a'B. "a"C. 'ab'D. '0x61'答案:A8. 下列哪个选项是C语言中合法的数组声明?A. int a[5] = {1, 2, 3, 4, 5};B. int a[] = {1, 2, 3, 4, 5};C. int a[5] = {1, 2, 3};D. int a = {1, 2, 3, 4, 5};答案:A9. 在C语言中,下列哪个选项是正确的函数声明?A. int add(int a, int b);B. int add();C. int add(int, int);D. int add(int a, b);答案:A10. 下列哪个选项是C语言中合法的指针声明?A. int *p;B. int *p[];C. int *p[5];D. int (*p)();答案:A11. 在C语言中,下列哪个选项是正确的结构体声明?A. struct Point { int x, y; };B. struct { int x, y; } Point;C. struct Point { int x; int y; };D. struct { int x; int y; };答案:C12. 下列哪个选项是C语言中合法的枚举声明?A. enum {RED, GREEN, BLUE} color;B. enum color {RED, GREEN, BLUE};C. enum {RED, GREEN, BLUE};D. enum color {0, 1, 2};答案:B13. 在C语言中,下列哪个选项是正确的宏定义?A. #define PI 3.14159B. #define PI = 3.14159C. #define PI(3.14159)D. #define PI 3.14159;答案:A14. 下列哪个选项是C语言中合法的文件包含指令?A. #include <stdio.h>B. #include "stdio.h"C. #include <stdio.h>D. #include "stdio.h"答案:A15. 在C语言中,下列哪个选项是正确的条件语句?A. if (a > b) { ... }B. if a > b { ... }C. if (a > b) then { ... }D. if a > b then { ... }答案:A16. 下列哪个选项是C语言中合法的循环语句?A. for (i = 0; i < n; i++) { ... }B. for i = 0; i < n; i++ { ... }C. for (i = 0; i < n; i++) { ... }D. for i = 0 to n { ... }答案:A17. 在C语言中,下列哪个选项是正确的switch语句?A. switch (a) { case 1: ...; case 2: ...; }B. switch (a) { case 1: ...; case 2: ...; default: ...; }C. switch (a) { case 1: ...; case 2: ...; break; }D. switch (a) { case 1: ...; case 2: ...; default: ...; }答案:D18. 下列哪个选项是C语言中合法的goto语句?A. goto label;B. goto 10;C. label: ...D. goto;答案:C19. 在C语言中,下列哪个选项是正确的函数调用?A. printf("%d", 10);B. scanf("%d", &a);C. printf("%d", a);D. scanf("%d", a);答案:B20. 下列哪个选项是C语言中合法的函数定义?A. int add(int a, int b) { return a + b; }B. int add(int a, b) { return a + b; }C. int add(int a, int b) { return a + b; }D. int add(a, b) { return a + b; }答案:A21. 在C语言中,下列哪个选项是正确的递归函数调用?A. int factorial(int n) { return n * factorial(n - 1); }B. int factorial(int n) { if (n == 0) return 1; else return n * factorial(n - 1); }C. int factorial(int n) { return n * factorial(n + 1); }D. int factorial(int n) { if (n == 1) return 1; else return n * factorial(n - 1); }答案:B22. 下列哪个选项是C语言中合法的数组初始化?A. int a[5] = {1, 2, 3, 4, 5};B. int a[5] = {1, 2, 3, 4};C. int a[5] = {1, 2, 3};D. int a[5] = {1, 2, 3, 4, 5, 6};答案:A23. 在C语言中,下列哪个选项是正确的字符串复制?A. strcpy(a, b);B. strcopy(a, b);C. copy(a, b);D. strcp(a, b);24. 下列哪个选项是C语言中合法的内存分配?A. int *p = (int *)malloc(sizeof(int) * 10);B. int *p = malloc(10 * sizeof(int));C. int *p = (int *)malloc(10);D. int *p = malloc(sizeof(int) * 10);答案:A25. 在C语言中,下列哪个选项是正确的内存释放?A. free(p);B. delete p;C. deallocate p;D. dispose p;答案:A26. 下列哪个选项是C语言中合法的指针运算?B. p--;C. p += 2;D. p = 2;答案:A27. 在C语言中,下列哪个选项是正确的结构体赋值?A. Point p1 = {1, 2};B. Point p1 = p2;C. Point p1 = {1, 2};D. Point p1 = {1, 2, 3};答案:B28. 下列哪个选项是C语言中合法的枚举值使用?A. color = RED;B. color = 0;C. color = "RED";D. color = 1;答案:A29. 在C语言中,下列哪个选项是正确的宏替换?A. #define SQUARE(x) x * xB. #define SQUARE(x) (x) * (x)C. #define SQUARE(x) x * xD. #define SQUARE(x) (x) * (x)答案:D30. 下列哪个选项是C语言中合法的文件操作?A. FILE *fp = fopen("file.txt", "r");B. FILE *fp = open("file.txt", "r");C. FILE *fp = fopen("file.txt", "w");D. FILE *fp = open("file.txt", "w");答案:A31. 在C语言中,下列哪个选项是正确的文件读取?A. fscanf(fp, "%d", &a);B. scanf(fp, "%d", &a);C. fscanf(fp, "%d", a);D. scanf(fp, "%d", a);答案:A32. 下列哪个选项是C语言中合法的文件写入?A. fprintf(fp, "%d", a);B. printf(fp, "%d", a);C. fprintf(fp, "%d", &a);D. printf(fp, "%d", &a);答案:A33. 在C语言中,下列哪个选项是正确的文件关闭?A. close(fp);B. fclose(fp);C. fclose(fp);D. close(fp);答案:B34. 下列哪个选项是C语言中合法的错误处理?A. if (fp == NULL) { perror("Error opening file"); exit(1); }B. if (fp == NULL) { printf("Error opening file"); exit(1); }C. if (fp == NULL) { perror("Error opening file"); return 1; }D. if (fp == NULL) { printf("Error opening file"); return 1; }答案:A35. 在C语言中,下列哪个选项是正确的位运算?A. a & b;B. a && b;D. a || b;答案:A36. 下列哪个选项是C语言中合法的逻辑运算?A. a && b;B. a || b;C. a & b;D. a | b;答案:A37. 在C语言中,下列哪个选项是正确的自增运算?A. a++;B. ++a;C. a += 1;D. a = a + 1;38. 下列哪个选项是C语言中合法的自减运算?A. a--;B. --a;C. a -= 1;D. a = a - 1;答案:A39. 在C语言中,下列哪个选项是正确的类型转换?A. (int)a;B. int(a);C. (int)(a);D. int a;答案:C40. 下列哪个选项是C语言中合法的sizeof运算?A. sizeof(a);B. sizeof int;C. sizeof(int);D. sizeof "string";答案:C二、程序填空题(本大题共2小题,每小题10分,共20分)1. 给定以下代码片段,请填写缺失的部分以实现计算并打印两个整数的和。
2007 年(春)笔试试卷参考答案及解析第一部分计算机基础知识(1)B)【解析】摩尔定律是指IC 上可容纳的晶体管数目,约每隔18 个月便会增加一倍,性能也将提升一倍。
摩尔定律是由英特尔(Intel)名誉董事长戈登·\u25705X尔(Gordon Moore)经过长期观察发现得之。
(2)C)【解析】光纤一般在校园网和企业网中使用,因为速度快。
(3)B)【解析】二进制数(1010)=十进制(10),十六进制数(B2)16=十进制(178),所以188 用八进制表示为(274)8。
(4)D)【解析】GB2312 中,一个汉字字符由两个字符构成,特征是高位大于127(即十六进制的7F),低位不计。
看看字符串:第一个字符:BO,明显大于7F,所以这是一个汉字的高位,与下一个字符组成一个汉字。
那么这里就去掉了两个字符:BOA1 第三个字符:57,很明显,小于7F,这是一个西文字符。
第四个字符:69,同上,第五个字符:6E,同上,第六个字符:D6,这里又遇到一个大于7F 的,又是一个汉字的高位,同第一个字符处理。
第八个字符依次类推,必须从第一个字符开始,一个字符一个字符的计算。
那就是4 个汉字和3 个西文字符。
(5)D)【解析】现在使用最多的CPU 有Intel 和AMD。
(6)A)【解析】PC 在加电启动过程中会运行P OST 程序、引导系统、系统自举程序等。
若在启动过程中,用户按某一热键(通常是Del 键)则可以启动CMOS 设置程序。
这些程序运行的顺序是POST 程序→CMOS 设置程序→系统自举程序→引导程序。
(7)B)【解析】1394 卡的全称是IEEE1394 Interface Card,它是IEEE 标准化组织制定的一项具有视频数据传输速度的串行接口标准。
它支持外接设备热插拔,同时可为外设提供电源,省去了外设自带的电源、支持同步数据传输。
IEEE1394 接口最初由苹果公司开发,据说早期是为了取代并不普及的SCSI 接口而设计的,英文取名为FIREWIRE。
国家二级(C语言)笔试模拟试卷2(题后含答案及解析)题型有:1. 选择题 2. 填空题选择题(1-10、21-40每题2分,11-20每题1分,共70分)下列各题A、B、C、D四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上。
1.在E-R图中,用来表示实体之间联系的图形是( )。
A.矩形B.椭圆形C.菱形D.平行四边形正确答案:C解析:在E-R图中,矩形表示实体集,椭圆形表示属性,菱形表示实体之间的联系。
2.下面选项中不属于面向对象程序设计特征的是( )。
A.继承性B.多态性C.类比性D.封装性正确答案:C解析:对象是由数据和容许的操作组成的封装体,与客观实体有直接的对应关系。
对象之间通过传递消息互相联系,以模拟现实世界中不同事物彼此之间的联系。
面向对象技术的三个重要特性是封装性、继承性和多态性。
3.下列叙述中正确的是( )。
A.线性表是线性结构B.栈与队列是非线性结构C.线性链表是非线性结构D.二叉树是线性结构正确答案:A解析:根据数据结构中各数据元素之间关系的复杂程度,一般将数据结构分为两大类型:线性结构与非线性结构。
线性表、栈与队列、线性链表都是线性结构,而二叉树是非线性结构。
4.在关系数据库中,用来表示实体之间联系的是( )。
A.树结构B.网结构C.线性表D.二维表正确答案:D解析:在关系数据库中,用二维表来表示实体之间的联系。
5.在一棵二叉树上第5层的结点数最多是( )。
A.8B.16C.32D.15正确答案:B解析:根据二叉树的性质:二叉树第i(i≥1)层上至多有2i-1个结点。
第5层的结点数最多是25-1=16。
6.数据处理的最小单位是( )。
A.数据B.数据元素C.数据项D.数据结构正确答案:C解析:数据处理的最小单位是数据项;由若干数据项组成数据元素;而数据是指能够被计算机识别、存储和加工处理的信息载体;数据结构是指数据之间的相互关系和数据运算。
故正确答案为选项C)。
第1套上机操作题一、程序填空题【微答案】(1) 0 (2) i++或++i或i+=1或i=i+1 (3)2.0*i【微分析】填空1:循环变量1从开始参加运算,但是在每次循环的开始i都进行自加1操作,故i应赋初值为0。
填空2:循环变量i自增1运算。
填空3:根据公式确定表达式通项。
注意x为double类型,故应将i变为double类型再进行运算。
二、程序修改题【微答案】(1)void fun ( char *s , char *t )(2)t[2*d]='\0';或t[d+i]='\0';或t[2*d]=0;或t[d+i]=0;【微分析】(1)从调用函数来看,函数传递的是数组,所以函数的形参应为指针。
(2) 循环结束后回文字符的个数为2*d个,因为数组下标是从0开始的,所以最后一个字符的下标为2*d-1,在最后一个字符的后面加上结束符'\0',因此为t[2*d]='\0';。
三、程序设计题【微答案】void fun(char *s, char t[]){int i,j=0,n;n=strlen(s);for(i=0;i<n;i++)if(i%2!=0&&s[i]%2!=0){t[j]=s[i]; /*将下标为奇数同时ASCII码值为奇数的字符放入数组t中*/ j++;}t[j]='\0'; /*最后加上结束标识符*/}【微分析】本题要求除了下标为奇数同时ASCII码值也为奇数的字符之外,其余的所有字符都删除。
即要留下下标为奇数同时ASCII码值也为奇数的字符。
所以if的条件语句中应使用if(i%2!=0&&s[i]%2!=0)。
第2套上机操作题一、程序填空题【微答案】(1)t=i (2) i (3) '\0'或0【微分析】本题中第一个for循环的作用是得到字符串的长度,第二个for循环的作用是对下标为奇数的字符按ASCII码大小排序,最后将排好序的字符取出。
c语言二级考试试题与答案doc一、选择题(每题2分,共20分)1. 在C语言中,以下哪个关键字用于声明一个函数?A. intB. voidC. returnD. function答案:B2. 若有定义int a=5;,则表达式a++的值是多少?A. 4B. 5C. 6D. 0答案:B3. C语言中,用于表示逻辑“与”操作的运算符是什么?A. &&B. ||C. !D. &答案:A4. 下列哪个选项不是C语言的标准输入输出库函数?A. printf()B. scanf()C. coutD. getchar()答案:C5. 在C语言中,哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A6. 若有定义float x=3.14;,则表达式sizeof(x)的值是多少?A. 2B. 4C. 8D. 10答案:B7. C语言中,哪个关键字用于声明一个指针变量?A. *B. &C. %D. #答案:A8. 下列哪个选项是正确的C语言数组声明?A. int a[];B. int b[5];C. int c[5]={0};D. All of the above答案:D9. 在C语言中,哪个关键字用于声明一个无限循环?A. forB. whileC. do...whileD. switch答案:B10. 下列哪个选项是C语言中的合法标识符?A. 2variableB. variable2C. _variableD. All of the above答案:D二、填空题(每题2分,共20分)1. 在C语言中,定义一个整型变量并初始化为10,可以使用语句:________。
答案:int a = 10;2. 若有定义int a=5;,则执行语句a=a+1;后,变量a的值是________。
答案:63. 在C语言中,使用________运算符可以实现逻辑“或”操作。
2665944699【第一套】一、单项选择1.下列数据中,为字符串常量的是(d)。
A、'A'B、How do you do.C、$abcD、"house"2.以下所列的C语言常量中,错误的是(b )。
A、0xFFB、1.2e0.5C、2LD、'\72'3.以下程序的输出结果是(d)。
main(){float x=3.6;int i;i=(int)x;printf("x=%f,i=%d\n",x,i );}A、x=3.600000,i=4B、x=3 i=3.600000C、x=3,i=3D、x=3.600000,i=3 4.若k是整型,则以下程序段的执行结果是:(b )k=-3;if(k<=0) printf("####")else printf("&&&&");A、####B、有语法错误,无结果C、&&&&D、####&&&&5.若x=2,y=3则x||y的结果是( c)。
A、3B、0C、1D、26.针对下列程序段回答问题(b ).for(t=1;t<=100;t++){scanf("%d",&x);if(x<0) continue;printf("%3d",t);}A、x>=0时什么也不输出B、最多允许输出100个非负整数C、printf函数永远也不执行D、当x<0时整个循环结束7.以下程序的执行结果是(b )。
main(){ int num = 0;while( num <= 2 ) { num++; printf( "%d,",n um ); } }A、0,1,2B、1,2,3,C、1,2,3,4,D、1,2,8.选择正确的输入语句(d )。