C语言综合测试(二)
- 格式:doc
- 大小:79.07 KB
- 文档页数:5
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语言二级考试题库及详解答案C语言二级考试题库及详解答案一、选择题1. 在C语言中,以下哪个选项是合法的标识符?A. 2variableB. variable2C. 3numberD. variable#答案:B2. C语言中,整型变量int所占的字节数是:A. 1字节B. 2字节C. 4字节D. 8字节答案:C(注:实际字节数可能因编译器和平台而异,但通常为4字节)3. 下列哪个不是C语言的控制语句?A. ifB. switchC. forD. goto答案:B(注:switch也是C语言的控制语句,此题有误)二、填空题1. 在C语言中,若要定义一个整型数组,可以使用以下语法:___________。
答案:int array_name[array_size];2. C语言中,用于计算两个数的乘积的运算符是:___________。
答案:*三、简答题1. 简述C语言中数组和指针的区别。
答案:数组是一种数据结构,用于存储相同类型的元素集合。
指针是一个变量,它存储了另一个变量的内存地址。
数组名可以作为指针使用,但数组本身不是指针。
数组的大小在定义时确定,而指针可以指向不同大小的内存块。
2. 解释C语言中的递归函数。
答案:递归函数是一种函数,它在执行过程中调用自己。
递归函数通常用于解决可以分解为相似子问题的问题。
递归函数必须有一个明确的终止条件,以避免无限递归。
四、编程题1. 编写一个C语言程序,实现求1到100的和。
答案:```c#include <stdio.h>int main() {int sum = 0, i;for(i = 1; i <= 100; i++) {sum += i;}printf("1到100的和是:%d\n", sum);return 0;}```2. 编写一个C语言函数,实现字符串反转。
答案:```cvoid reverseString(char *str) {int len = 0;while(str[len] != '\0') {len++;}for(int i = 0; i < len / 2; i++) {char temp = str[i];str[i] = str[len - 1 - i];str[len - 1 - i] = temp;}}```五、论述题1. 论述C语言中函数的作用和重要性。
计算机二级c语言试题题库及答案一、单项选择题(每题2分,共20分)1. 在C语言中,用于定义变量的关键字是()。
A. defineB. varC. intD. let答案:C2. 下列关于C语言函数的描述,不正确的是()。
A. 函数可以没有参数B. 函数可以返回值C. 函数必须有返回值D. 函数可以嵌套定义答案:C3. 以下哪个选项不是C语言中的运算符()。
A. %B. &&C. ++D. :答案:D4. 在C语言中,用于定义一个结构体的关键字是()。
A. structB. unionC. enumD. typedef答案:A5. C语言中,用于表示逻辑与的运算符是()。
A. &&B. ||C. !D. =答案:A二、填空题(每题2分,共20分)1. 在C语言中,定义一个整型数组的语句是:int array[10]; 其中array[0]的值默认为____。
答案:02. 如果一个函数的返回类型是int,那么在函数体中必须包含一条____语句。
答案:return3. 在C语言中,用于计算字符串长度的函数是____。
答案:strlen4. C语言中,用于将字符数组转换为字符串的字符是____。
答案:'\0'5. 当使用指针变量时,必须先对其进行____。
答案:初始化三、编程题(每题10分,共20分)1. 编写一个C语言函数,实现两个整数的交换。
```cvoid swap(int *a, int *b) {int temp = *a;*a = *b;*b = temp;}```2. 编写一个C语言程序,计算并输出100以内所有偶数的和。
```c#include <stdio.h>int main() {int sum = 0;for (int i = 1; i <= 100; i++) {if (i % 2 == 0) {sum += i;}}printf("Sum of even numbers from 1 to 100 is: %d\n", sum); return 0;}```四、简答题(每题10分,共40分)1. 简述C语言中指针和数组的关系。
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语言二级考试题加答案一、选择题(每题2分,共20分)1. 在C语言中,以下哪个选项是正确的标识符?A. 2variableB. variable2C. variable-2D. variable$2答案:B2. C语言中,哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A3. 若有定义:int a=5, b=10; 则表达式 a+=b 的值是多少?A. 15B. 10C. 5D. 无法确定答案:A4. 在C语言中,哪个函数用于计算并返回字符串的长度?A. strlen()B. strcpy()C. strcat()D. strcmp()答案:A5. 下列哪个选项不是C语言中的控制语句?A. ifB. switchC. forD. case答案:D6. 在C语言中,以下哪个选项是合法的数组声明?A. int array[];B. int array[10];C. int array[5][];D. int array[5][10];答案:B7. C语言中,哪个函数用于将字符串复制到另一个字符串?A. strcpy()B. strncpy()C. strcat()D. strcmp()答案:A8. 若有定义:int a=2, b=3; 则表达式 a++ + b 的值是多少?A. 5B. 4C. 6D. 无法确定答案:A9. 在C语言中,哪个关键字用于声明一个函数?A. functionB. defC. voidD. int答案:C10. 下列哪个选项不是C语言中的运算符?A. %B. &&C. ||D. &&答案:D二、填空题(每题2分,共20分)1. 在C语言中,用于声明一个字符型变量的关键字是 ________。
答案:char2. 若定义了指针变量 int *p; 则 ________ 是合法的指针赋值语句。
C 语言课程考试试卷课程名称:《C 语言程序设计》年级: 班级:姓名:_______________ 学号:_________________ 考试(考查) 闭卷选择题(每题2分,共计100分)1. 以下叙述正确的是( )A) 在C 程序中,main 函数必须位于程序的最前面 B) C 语言的每一行中只能写一条语句 C) C 语言本身没有输入输出语句D) 在对一个C 语言进行编译的过程中,可发现注释中的拼写错误 2. 不属于字符型常量的是__________。
A) 'B' B) 'C' C) '\n' D) P3. 判断 char 型变量ch 是否是大写字母的正确表达式是_________。
A) 'A'<=ch<='Z' B) (ch>=‘A')&(ch<='Z') C) (ch>='A')&&(ch<=‘Z') D) ('A'<=ch)AND('Z'>=ch)4. 若有说明: int a[10]; 则对 a 数组元素的正确引用是________。
A) a[10] B)a[3.5] C) a(5) D) a[10-10]5. 以下二维数组 a 的正确说明是________。
A) int a[1,1]; B) float a(3,4); C) double a[1][4]; D) float a(3)(4);6. 设有: int a=2,b=3,c=7,d=8,m=3,n=3; 执行 (m=a>b)&&(n=c>d) 后的 n 值为_________。
A) 0 B) 1 C ) 2 D) 37. 已知 int x=10,y=20,z=30; 以下语句执行后, x 、y 、z 的结果是。
c语言二级考试试题答案一、选择题(每题2分,共20分)1. 下列哪个选项是C语言中的合法标识符?A. 2variableB. variable2C. variable-2D. variable2!答案:B2. 在C语言中,用于定义一个整型变量的关键字是?A. intB. floatC. doubleD. char答案:A3. 下列哪个选项是C语言中的逻辑运算符?A. &&B. ||C. !D. A、B和C都是答案:D4. C语言中,用于计算两个整数的乘积的运算符是?A. /B. *C. %D. ^5. 下列哪个选项是C语言中正确的字符串定义方式?A. char str[10] = "Hello";B. char str = "Hello";C. char str[10] = 'Hello';D. char str = 'Hello';答案:A6. 在C语言中,哪个函数用于计算数组中元素的数量?A. sizeofB. countC. lengthD. size答案:A7. 下列哪个选项是C语言中的条件语句?A. ifB. whenC. switchD. case答案:A8. 在C语言中,哪个关键字用于定义一个函数?A. functionB. defC. voidD. int答案:C9. 下列哪个选项是C语言中用于循环的关键字?B. whileC. do-whileD. A、B和C都是答案:D10. 在C语言中,哪个函数用于输出字符串到控制台?A. printfB. scanfC. coutD. endl答案:A二、填空题(每题2分,共20分)1. C语言中,用于声明一个整型数组的语句是:int array[10];2. C语言中,用于声明一个字符数组的语句是:char array[10];3. C语言中,用于声明一个浮点型变量的语句是:float variable;4. C语言中,用于声明一个双精度浮点型变量的语句是:double variable;5. C语言中,用于声明一个字符型变量的语句是:char variable;6. C语言中,用于声明一个指针变量的语句是:int *pointer;7. C语言中,用于声明一个结构体的语句是:struct struct_name { ... };8. C语言中,用于声明一个联合体的语句是:union union_name { ... };9. C语言中,用于声明一个枚举类型的语句是:enum enum_name { ... };10. C语言中,用于声明一个函数的语句是:返回类型函数名(参数列表) { ... };三、编程题(每题10分,共60分)1. 编写一个C语言程序,计算并输出100以内所有奇数的和。
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. 给定以下代码片段,请填写缺失的部分以实现计算并打印两个整数的和。
**学院课程考试试卷课程名称:《C:使用C语言进入软件编程世界》(A)卷年级:班级:姓名:_______________ 学号:_________________ 考试(考查) 闭卷题号1-20 21-40 41-50 总分分数选择题(每题2分,共计100分)1.分析下面的C程序, 输出结果是()#include<stdio.h>void main(){int num=0;while(num<=2){num++;printf("%d ",num);}}A. 1 2 3B.0 1 2C. 2 3D. 1 22.阅读下面的C语言代码,输出结果是()int x, y = 1, z=0;if ( z < 0 )x = 3;else if ( y == 0 )x = 5;elsex = 7;printf("%d, %d", x, y);A.7, 0B.7, 1C.3, 3D.以上都不正确3.要将20赋值到数组Num的第三个元素,正确的方法是()A.Num[3]=20B.Num[2]=20C.Num[4]=20D.[3] Num=204.在C语言中,已知字母A的ASCII码是65,则执行语句:char ch='A'+3; 后ch的值为()A.不能确定B.68C. CD. D5.下面的C语言代码段的输出结果是()int j;for(j=1; j<10; j+=2)printf("%d ",j);A. 1 2 3 4 5 6 7 8 9B. 2 4 6 8C. 1 3 5 7 9D. 1 2 4 6 86.在C语言中,表达式:10!=9 的值是()A.trueB.非零值C.0D. 17.在C语言中,下列正确的字符型常量是()A."f"B.'9'C.#D.3658.在C语言中,下面()是逻辑运算符中优先级最高的。
A.!B.&&C.||D.|E.&9.以下述叙不正确的是()A.一个C源程序可以由一个或多个函数组成B.一个C源程序必须包含一个main函数C.C程序的基本组成单位是函数D.在C程序中注释说明只能位于一条语句的后面10.有定义语句:int b;char c[10];,则正确的输入语句是()A.scanf("%d%s",&b,&c);B.scanf("%d%s",&b,c);C.scanf("%d%s",b,c);D.scanf("%d%s",b,&c);11.在C语言中,对上面的程序,正确的判断是()main(){int a,b;scanf(“%d”,&x);scanf(“%d”,&y);if(x>y)x+=y;y++;elsey+=x;x++;printf(“%d,%d”,x,y);}A.若输入数据1和4,则输出2和6B.若输入数据4和1,则输出6和2C.若输入数据4和4,则输出5和9D.有语法错误,不能通过编译12.分析如下C语言代码片段,输出结果为()int i=2,j;i++;j=i;printf(“%d,%d”,i,j);A.2,3B.3,3C.3,2D.2,213.在C语言中, ()不是循环语句.A.while语句B.for语句C.switch语句D.do…while语句14.以上C语言代码的输出是()#include<stdio.h>void main(){int i=0;for(;i<5;i++)printf(“%d”, ++i);}A.012345B.135C.024D.语法错误15.在C语言中,下列代码的输出结果是()void main( ){printf ("%1.0f\n", sqrt(4));}A.0B. 2C. 4D.1616.若有以下定义,则不正确的赋值语句是()int a,b=1;float x;A.a=1,b=2;B.b++;C.a= b= 5;D.b= x;17.以下能对一维数组a进行正确初始化的语句是()A.int a[5]=(0,0,0,0,0)B.a[5]={}C.int a[5]={0};D.a={0,0,0,0,0};18.以下关于C语言函数中的return语句的说法,正确的是()A.return语句可以结束函数的运行B.在函数体中必须有return语句C.在无返回值的函数中不允许有return语句D.有返回值的函数中可以没有return语句19.以下C语言程序的执行结果是()void myFunction(int x){x++;printf("x=%d\n",x);}void main(){int a=5;myFunction (a);}A.x=5B.x=6C.x=1D.编译报错20.在C语言程序中,下列打印语句不正确的是()A.printf("d%",18);B.printf("%d",1.89);C. printf("%f",18);D. printf("%c",'m');21.在C语言程序中,有a、b两个整型变量,a的值为18,b的值为19,下列表达式的值不为1的是()A.b/aB.a++C.b%aD. a<b22.以下初始化数组正确的有()【选两项】。
A.int a[5]={1,2,3,4,5,6};B.int a[]={1,2,3,4,5,6};C.int a[5]={1,2,3};D.int a[5]=1;23.下列代码能够正确定义数组的是()A.int a[];B.int[] a;C.int a[5];D.int[5] a;24.在二维数组“int a[4][3]={1,2,0,4,0,6,7,8};”中,下列表达式不能得到0的是()【选两项】。
A.a[3][2]B.a[0][0]C.a[1][1]D.a[2][0]25.以下C语言程序的运行结果是()int m=50,n=30;if(m>n)printf("m大");printf("m=%d",m);elseprintf("n大");printf("n=%d",n);A.m大m=50B.n大n=30C.m大m=50 n大n=30D.语法错误不能运行26.以下正确声明point结构体数组的代码有()【选两项】。
struct point{int x;int y;};A.struct point[5];B.struct point ps[5];C.point ps[5];D.point[5] ps;27.在C语言中,以下scanf语句能够正常获取年龄的是()int age;A.scanf("%d");B.scanf("%d",age);C.scanf("请输入年龄%d",age)D.scanf("%d",&age);28.以下C语言程序的运行结果是()int count=1;int sum=0;while(count<5){if(count%2==0)continue;sum+=count;}printf("%d",sum);A. 1B. 4C. 5D.死循环29.b是reak语句的作用()A.结束本次循环,进行下一次循环B.break语句被执行且循环体中其后的其他语句都执行后,循环终止C.break语句被执行后,循环体中其后的语句都将不被执行,循环直接终止D.break语句和continue语句作用相同30.以下正确声明employee变量的代码有()【选两项】。
已定义结构体struct employee{char id[8];char name[20];int age;};A.struct employee;B.struct employee em;C.struct em;D.employee em;31.while循环语句的特点是()A. 先执行后判断B. 不管条件是否成立,循环体至少被执行一次C. while(表达式)后面不需要写分号,否则循环没有循环体D. 循环体中可以有break语句,但不可以有continue语句32.设变量a是整型,f是实型,i是双精度型,则表达式10+'a'+i*f值的数据类型为()A.intB.floatC.doubleD.不确定33.在C语言中, char型数据在内存中的存储形式是()A.补码B.反码C.原码D.ASCII码34.设变量n为f1oat类型,m为int类型,则以下能实现将n中的数值保留小数点后两位,第三位进行四舍五人运算的表达式是()A.n=(n*100+0.5)/100.0B.m=n*100+0.5 ,n= m/100.0C.n=n*100+0.5/100.0D.n=(n/100+0.5)*100.035.表达式18/4*sqrt(4.0)/8值的数据类型为()A.intB.floatC.doubleD.不确定36.设C语言中,-个int型数据在内存中占2个字节,则unsigned int型数据的取值范围为()A.0~255B.0~32767C.0~65535D.0~214748364737.设有说明: char w; int x; f1oat y; double z;则表达式w* x+z-y值的数据类型为()A.floatB.charC.intD.double38.若有以下定义,则能使值为3的表达式是()int k= 7,x =12;A.x%=(k%= 5)B.x%=(k-k%5)C.x%=k- k%5D.(x%=k)-(k%=5)39.设以下变量均为int类型,则值不等于7的表达式是()A. (x= y= 6, x+y,x+1)B.(x= y= 6,x+y,y+1)C. (x= 6,x+1,y= 6,x+y)D.(y=6,y+l,x = y,x+1)40.gets函数可以从终端输入一个()A.整型变量表达式值B.实型变量值C.字符串D.字符或字符型变量值41.在C语言中,下列( )是合法的标识符。
(选择两项)A.COUNTB. P234C. 4xD. short42.已有如下定义和输入语句 ,若要求a1,a2,c1,c2值分别为10,20,A和B,当从第一列开始输入数据时,正确的数据输入方式是()int a1,a2; char c1,c2;scanf("%d%c%d%c",&a1,&c1,&a2,&c2);A.10A 20B回车B.10 A 20 B回车C.10A20回车D.10A20 B回车43.已有程序段和输入数据的形式如下,程序中输入语句的正确形式应当为()main(){int a;float f;printf("\nInput number:");输入语句printf("\nf=%f,a= %d\n ,f,a);}Input number: 4.5 2回车A.scanf("%d,%f",&a,&f);B.scanf("%f,%d",&f,&a)C.scanf("%d%f",&a,&f);D.scanf("%f%d",&f,&a);44.阅读以下程序,当输入数据的形式为25,13,10<CR>正确的输出结果为()main(){int x,y,z ;scanf("%d%d%d",&x,&y,&z );printf("x+y+z=%d\n ",x+y+z);}A.x +y+z=48B.x +y+z=35C.x +z=35D.不确定值45.C语言中,while和do…while循环的主要区别是( )A.while的循环控制条件比do…while的循环控制条件严格B.do…while的循环体至少无条件执行一次C.do…while允许从外部转到循环体内D.do…while的循环体不能是复合语句46.以下能正确地定义整型变量a,b和c 并为其赋初值5的语句是()E.int a=b= c= 5;F.int a,b, c= 5;G.int a= 5,b=5,c=5;H.a= b= c=5;47.已知ch是字符型变量,下面不正确的赋值语句是()A.ch='a+b';B.ch='\0';C.ch='7'+'9';D.ch=5+9;48.若有以下定义,则正确的赋值语句是()int a,b;float x;A.a=1,b=2,B.b++;C.a= b= 5D.b= int(x);49.设x 、y均为f1oat型变量,则以下不合法的赋值语句是()A.++x;B.y=(x%2)/10;C.x*=y+8;D.x=y=0;50.x,y,z均为int型变量,则执行语句x=(y=(z=10)+5)-5;后,x 、y 和之的值是()A.x=10y=15z=10B.x=10y=10z=10 C.x=10y=10z=15 D.x=10y=5z=10。