专升本C语言历年试题及答案

合集下载

专升本C语言历年考试题及答案解析

专升本C语言历年考试题及答案解析

专升本C语言历年考试题及答案解析Revised final draft November 26, 2020专升本C语言历年考试题及答案一、单项选择题1. C语言源程序文件经过C编译程序编译连接之后生成一个后缀为__C____的文件。

A、”.c”B、“.obj”C、“.exe”D、“.bas”2. 以下选项中不正确的整型常量是_C____。

A、 12LB、 -10C、 1,900D、 123U3. 表达式___C___的值是0。

A、3%5B、3/5.0C、3/5D、3<54. 表达式 !(x>0||y>0) 等价于__D___。

A、!x>0||!y>0B、!(x>0)||!(y>0)C、!x>0&&!y>0D、!(x>0)&&!(y>0)5. 若变量已正确定义并赋值,表达式__D____不符合C语言语法。

A、4&&3B、+aC、a=b=5D、int(3.14)6. 若变量已正确定义,执行语句scanf("%d%d%d ",&k1,&k2,&k3);时,___B___是正确的输入。

A、2030,40B、20 30 40C、20, 30 40D、20, 30,407. 执行语句printf(” __D____”, 2); 将得到出错信息。

A、%dB、%oC、%xD、%f8. 设变量定义为“int s[ ]="hello\nworld\n";”,则数组s中有__B____个元素。

A、12B、13C、14D、159. 设变量定义为“int a[2]={1,3}, *p=&a[0]+1;”,则*p的值是___B__。

A、2B、3C、4D、&a[0]+110. 若变量已正确定义并赋值,表达式 -k++ 等价于__A____。

c语言专升本试题及答案

c语言专升本试题及答案

c语言专升本试题及答案一、选择题(每题2分,共20分)1. C语言中,用于定义变量的关键字是()。

A. varB. letC. intD. define答案:C2. 下列哪个选项不是C语言中的运算符?()A. %B. &&C. ==D. ||答案:B3. 在C语言中,用于定义一个结构体的关键字是()。

A. structB. unionC. enumD. typedef答案:A4. 下列哪个选项是合法的C语言函数声明?()A. int fun(int a, int b);B. int fun();C. int fun(int a, b);D. int fun(int a, int b) { ... }答案:A5. C语言中,用于定义一个二维数组的语法是()。

A. int array[3][2];B. int array[3][];C. int array[][2];D. int array[2,3];答案:A二、填空题(每题2分,共20分)1. C语言中,用于表示逻辑“与”操作的运算符是____。

答案:&&2. C语言中,用于表示逻辑“或”操作的运算符是____。

答案:||3. C语言中,用于表示逻辑“非”操作的运算符是____。

答案:!4. 在C语言中,用于定义一个字符类型的数组的关键字是____。

答案:char5. C语言中,用于声明一个无返回值的函数的关键字是____。

答案:void三、简答题(每题10分,共20分)1. 请简述C语言中指针的概念。

答案:指针是C语言中的一种数据类型,它存储了另一个变量的内存地址。

通过指针,程序可以直接访问和操作内存中的数据。

2. 请简述C语言中函数的作用。

答案:函数是C语言中封装代码块的一种方式,它允许将一段代码和相关的数据封装在一起,以便于复用和模块化编程。

四、编程题(每题20分,共40分)1. 编写一个C语言程序,实现求两个整数的和。

山西专升本c语言试题及答案

山西专升本c语言试题及答案

山西专升本c语言试题及答案一、单项选择题(每题2分,共20分)1. 下列关于C语言的描述,错误的是()。

A. C语言是一种高级语言B. C语言可以直接被计算机执行C. C语言具有结构化的特点D. C语言支持指针的使用答案:B2. 在C语言中,下列哪个关键字用于定义一个函数?()A. voidB. intC. returnD. struct答案:B3. 下列关于数组的描述,正确的是()。

A. 数组必须在声明时初始化B. 数组的大小在编译时确定C. 数组的索引从1开始D. 数组可以在运行时改变大小答案:B4. 下列关于指针的描述,错误的是()。

A. 指针可以存储地址B. 指针可以指向函数C. 指针可以作为函数的参数D. 指针不能作为函数的返回值答案:D5. 在C语言中,下列哪个运算符用于执行算术运算?()A. %B. &&C. =D. <答案:A6. 下列关于C语言中循环的描述,正确的是()。

A. for循环不能嵌套使用B. while循环可以与do-while循环嵌套使用C. do-while循环至少执行一次D. break语句可以用于退出switch语句答案:C7. 下列关于C语言中文件操作的描述,错误的是()。

A. 文件操作需要包含头文件<stdio.h>B. 文件指针的类型是FILE*C. 文件的打开操作使用fopen函数D. 文件的关闭操作使用fclose函数答案:A8. 在C语言中,下列哪个函数用于将字符串转换为浮点数?()A. atoiB. atofC. itoaD. sprintf答案:B9. 下列关于C语言中结构体的描述,错误的是()。

A. 结构体可以包含其他结构体B. 结构体可以包含数组C. 结构体不能包含函数D. 结构体不能包含指针答案:D10. 在C语言中,下列哪个关键字用于定义一个全局变量?()A. staticB. externC. registerD. auto答案:B二、填空题(每空1分,共10分)1. 在C语言中,使用________关键字可以定义一个静态局部变量。

c语言专升本试题及答案

c语言专升本试题及答案

c语言专升本试题及答案第一部分:选择题(共10题,每题2分,共20分)1. C语言中,以下哪个符号表示“不相等”?A. !=B. ==C. >D. <>2. 在C语言中,以下关键字用于定义常量的是:A. constB. staticC. externD. register3. 执行下列代码后,x的值是多少?int x = 10;x += x - x * 3;A. -10B. 0C. 10D. 204. 下列代码中,哪个是合法的数组定义?A. int arr[10];B. float arr[10.5];C. char arr[];D. bool arr[5];5. 以下哪种循环结构是“前测试循环”?A. for循环B. while循环C. do-while循环D. 都不是6. 下列代码中,哪行会引起编译错误?A. int a = 10;B. char b = a;C. float c = 2.5;D. double d = 2.5;7. 在C语言中,以下哪个运算符具有最高优先级?A. 加法运算符(+)B. 乘法运算符(*)C. 括号运算符(())D. 逻辑与运算符(&&)8. 下列代码中,哪个是正确的函数调用?A. max(5, 10);B. max(int a, int b);C. int max(int a, int b) { return a > b ? a : b; }D. int max(a, b) { return a > b ? a : b; }9. 下列哪个关键字用于定义结构体?A. structB. typedefC. unionD. sizeof10. 下列哪个函数用于释放动态分配的内存?A. calloc()B. realloc()C. malloc()D. free()第二部分:填空题(共5题,每题4分,共20分)1. C语言中,用于输出到控制台的函数是________。

专升本C语言题及答案

专升本C语言题及答案

专升本C语言题及答案C语言精编100题一、单选题 1. 由C语言编写的代码程序( ) A.可直接执行 B. 是一个源程序 C. 经过编译即可执行D. 经过编译解释才能执行 2. 按照C语言规定的用户标识符命名规则,不能出现在标识符中的是( ) A. 大写字母 B. 中划线C. 数字字符D. 下划线 3. 下列选项中,不能用作标识符的是( ) A. _1234_ B. _1_2 C. int_2_ D. 2_int_ 4. 以下选项中合法的用户标识符是( ) A. long B. _2Test C.3Dmax D. A.dat 5. 以下不能定义为用户标识符的是( ) A.Main B. _0 C. _int D. sizeof 6. 下列定义变量的语句错误的是( ) A. int _int; B. double int_; C. char For; D.float US$; 7. 在C语言中,合法的实型常数是( ) A. 5E2.0 B.E-3 C. 2E0 D. 1.3E 8. 在C语言中,合法的实型常数是( )A. 1.2E0.5B. 3.14159EC. 5E-3D. E15 9. 以下选项中,不能作为合法常量的是( ) A. 1.234e04 B. 1.234e0.4 C.1.234e+4 D. 1.234e0 10. 以下不合法的数值常量是( ) A. 011B. le1C. 8.0E0.5D. 0xabcd 11. 在C语言中,非法的字符常量是( ) A.‘\t’ B.‘\17’ C. “\n“ D.‘\xaa’ 12. 以下不合法的字符常量是( ) A.‘\018’ B.‘\“’ C.‘\\’ D.‘\xcc’ 13. 下列运算符中优先级最高的运算符是( )( ) A. = B. = C. % D.A. ==B. /C. =D. = 14. 以下程序的输出结果是( )main() { int a=3,b=4; printf(“%d\n“,a=b); } A. 3 B.4 C. 1 D. 0 15. 在C语言中,以下非法的表达式是( ) A.0=x=100 B. i=j==0 C. (char)(65+3) D. x+1=x+1 16. 在C语言中,以下非法的赋值语句是( ) A. j++; B. ++(i+1); C.x=j0; D. k=i==j; 17. 表达式3.6-5/2+1.2+5%2的值是( ) A.4.3 B. 4.8 C. 3.3 D. 3.8 18. 设有语句:inta=3;则执行了语句a+=a-=a*a;变量a的值是( ) A. 3 B. 0 C. 9 D. -12 19. 设有语句:int x=10;则执行了语句x+=x-=x-x;变量x的值是( ) A. 10 B. 20 C. 40 D. 30 20.以下程序的输出结果是( )( )( )( )( ) ⑴ main() { inti=10,j=1; printf(“%d,%d\n“,i--,++j);} A. 9,2 B. 10,2C. 9,1D. 10,1 ⑵ main() { int a=12,b=12; printf(“%d %d\n“ ,--a,++b);} A. 10 10 B. 12 12 C. 11 10 D.11 13 ⑶ main() { int x=023; printf(“%d\n“,--x);} A. 17 B.18 C. 23 D. 24 ⑷ main() { int x=10,y=10;printf(“%d %d\n“,x--,--y);} A. 10 10 B. 9 9 C. 910 D. 10 9 ⑸ main() { int i=010,j=10; printf(“%d,%d\n“,++i,j--);} A. 11,10 B. 9,10 C. 010,9 D.10,9 21. 以下程序的输出结果是( ) main() { int x=100,y=200;printf(“%d\n“,(x,y)); } A. 200 B. 100 C. 100 200 D)200 100 22. 以下程序的输出结果是( ) main() { intx=10,y=3,z; printf(“%d\n“,z=(x%y,x/y));} A. 1 B. 0C. 4D. 3 23. int k=0;,以下选项的四个表达式中与其他三个表达式的值不相同的是( ) A. k++ B. k+=1 C. ++k D. k+1 24. 以下程序的输出结果是( ) main() { int x,y,z; x=y=1;z=x++,y++,++y; printf(“%d,%d,%d\n“,x,y,z); } A. 2,3,3 B.2,3,2 C. 2,3,1 D. 2,2,1 25. 设x、y、t均为int型变量,则执行语句:x=y=3;t=++x||++y;后,y的值为( ) A. 1 B. 2 C.3 D.4 26. 设int x=-1;执行表达式++x||++x||++x||++x,x的值是( ) A. 0 B. 1 C. 2 D. 4 27. 以下程序的输出结果是(1) main(){ int k=11; printf(“k=%d,k=%o,k=%x\n“,k,k,k);}() A. k=11,k=12,k=11 B. k=11,k=13,k=13 C.k=11,k=013,k=0xb D. k=11,k=13,k=b (2) main(){ int k=17;printf(“%d,%o,%x\n“,k,k,k); }() A. 17,021,0x11 B.17,17,17 C. 17,0x11,021 D. 17,21,11 28. 运行时从键盘上输入9876543210CR(CR表示回车),则该程序的输出结果是()main() { int a;float b,c; scanf(“%2d%3f%4f\n“,a,b,c); printf(“a=%d,b=%f,c=%f\n“,a,b,c);} A.a=98,b=765,c=4321 B. a=10,b=432,c=8765 C.a=98,b=765.000000,c=4321.000000 D. a=98,b=765.0,c=4321.029. 设变量均已正确定义,若要通过scanf(“%d%c%d%c“,a1,c1,a2,c2);语句为变量 a1和a2赋数值10和20,为变量c1和c2赋字符X和Y。

专升本考试c语言试题及答案

专升本考试c语言试题及答案

专升本考试c语言试题及答案一、选择题(每题2分,共20分)1. 下列关于C语言的描述中,不正确的是()。

A. C语言是一种高级编程语言B. C语言可以直接被计算机执行C. C语言具有结构化编程的特性D. C语言可以用于系统软件开发答案:B2. C语言中,用于定义变量的关键字是()。

A. varB. defineC. intD. let答案:C3. 下列选项中,不是C语言标准库函数的是()。

A. printfB. scanfC. strcpyD. strcat答案:D4. 在C语言中,以下哪个选项是正确的字符串定义方式?A. char str[] = "Hello";B. char str[6] = "Hello";C. char str[] = 'Hello';D. char str[6] = {'H', 'e', 'l', 'l', 'o', '\0'}; 答案:A5. 下列关于C语言数组的描述中,正确的是()。

A. 数组下标从0开始B. 数组可以是多维的C. 数组的大小在定义时可以改变D. 数组可以存储不同类型的数据答案:B6. C语言中,用于实现循环结构的关键字是()。

A. forB. whileC. repeatD. do答案:A7. 下列选项中,表示逻辑与运算符的是()。

A. &&B. ||C. !D. =答案:A8. 在C语言中,用于定义函数的关键字是()。

A. functionB. defC. intD. void答案:D9. 下列关于C语言指针的描述中,正确的是()。

A. 指针可以存储变量的地址B. 指针可以存储变量的值C. 指针不能存储数组的地址D. 指针不能存储函数的地址答案:A10. 在C语言中,用于实现条件选择的关键字是()。

往年专升本c语言试题及答案

往年专升本c语言试题及答案

往年专升本c语言试题及答案一、单项选择题1. C语言中,用于定义一个结构体类型的关键字是:A. structB. unionC. enumD. typedef答案:A2. 下列哪个选项不是C语言中合法的变量名?A. _123B. intC. sumD. $amount答案:B3. 在C语言中,用于定义一个函数的关键字是:A. functionB. defC. voidD. int答案:D4. 在C语言中,一个整数除以一个浮点数的结果是:A. 整数B. 浮点数C. 字符串D. 错误答案:B5. 下列哪个选项是C语言中的逻辑运算符?A. %B. &&C. &&D. ==答案:B二、填空题1. C语言中,用于定义一个整型变量的关键字是________。

答案:int2. 一个C语言程序的执行从________函数开始。

答案:main3. 在C语言中,________运算符用于计算两个整数的和。

答案:+4. 用于定义一个字符型变量的关键字是________。

答案:char5. C语言中,________运算符用于判断两个表达式是否相等。

答案:==三、编程题1. 编写一个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("The sum of even numbers within 100 is: %d\n", sum);return 0;}```2. 编写一个C语言程序,实现输入一个字符串,然后输出其逆序字符串。

```c#include <stdio.h>#include <string.h>int main() {char str[100];scanf("%s", str);int len = strlen(str);for (int i = len - 1; i >= 0; i--) {printf("%c", str[i]);}printf("\n");return 0;}```四、简答题1. 请简述C语言中数组和指针的关系。

专升本c语言程序设计试题及答案

专升本c语言程序设计试题及答案

专升本c语言程序设计试题及答案一、选择题(每题2分,共20分)1. C语言中,以下哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A2. 下列关于C语言函数的描述,哪个是正确的?A. 函数可以没有返回值B. 函数不能有多个返回值C. 函数必须有返回值D. 函数不能有参数答案:A3. 在C语言中,以下哪个运算符用于计算两个整数的和?A. %B. +C. ==D. &&答案:B4. C语言中,以下哪个关键字用于定义一个指针?A. intB. floatC. charD. *答案:D5. 在C语言中,以下哪个选项是正确的注释方式?A. // 这是注释B. /* 这是注释 */C. // 这是注释/* 这是注释 */D. // 这是注释/* 这是注释 */答案:B6. 下列关于C语言数组的描述,哪个是错误的?A. 数组可以是多维的B. 数组下标从0开始C. 数组的大小在编译时确定D. 数组可以动态分配答案:D7. 在C语言中,以下哪个选项是正确的文件操作函数?A. fopenB. fcloseC. fprintfD. All of the above答案:D8. C语言中,以下哪个选项是正确的字符串定义方式?A. char str[] = "Hello";B. char str[5] = "Hello";C. char str[] = {'H', 'e', 'l', 'l', 'o'};D. All of the above答案:D9. 在C语言中,以下哪个选项是正确的条件语句?A. if (condition)B. switch (condition)C. case (condition)D. All of the above答案:A10. 下列关于C语言循环的描述,哪个是正确的?A. for循环可以嵌套B. while循环不能嵌套C. do-while循环至少执行一次D. All of the above答案:C二、填空题(每题2分,共20分)1. 在C语言中,定义一个整型变量的正确语法是:___________。

专升本c语言试题及答案

专升本c语言试题及答案

专升本c语言试题及答案一、选择题(每题2分,共20分)1. 下列关于C语言的描述,不正确的是()。

A. C语言是一种高级语言B. C语言可以直接在计算机上运行C. C语言具有结构化的特点D. C语言具有丰富的库函数答案:B2. C语言中,以下数据类型不是基本数据类型的是()。

A. intB. floatC. charD. struct答案:D3. 下列选项中,哪个是C语言中的合法标识符()。

A. 2bB. intC. _varD. float答案:C4. 在C语言中,以下哪个选项不是运算符()。

A. %B. &&C. :D. =答案:C5. C语言中,用于定义数组的关键字是()。

A. structB. unionC. enumD. array答案:D6. 在C语言中,以下哪个函数用于将字符串复制到另一个字符串()。

A. strcat()B. strcpy()C. strcmp()D. strlen()答案:B7. 下列关于C语言函数的描述,正确的是()。

A. 函数必须有返回值B. 函数可以有多个返回值C. 函数可以没有参数D. 函数的返回值类型必须与参数类型一致答案:C8. 在C语言中,以下哪个选项是正确的文件操作函数()。

A. fopen()B. fclose()C. fgetc()D. All of the above答案:D9. 下列关于C语言指针的描述,不正确的是()。

A. 指针可以存储变量的地址B. 指针可以作为函数的参数C. 指针可以作为函数的返回值D. 指针可以存储函数的地址答案:D10. 在C语言中,以下哪个选项是正确的字符串定义方式()。

A. char str[] = "Hello";B. char str[] = {'H', 'e', 'l', 'l', 'o'};C. char str[] = "Hello", "World";D. All of the above答案:D二、填空题(每题2分,共20分)1. 在C语言中,表示逻辑与的运算符是____。

专转本c语言历年考试题及答案

专转本c语言历年考试题及答案

专转本c语言历年考试题及答案一、选择题1. 在C语言中,下列哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A2. 下列哪个选项是正确的C语言变量声明?A. int a;B. int 2b;C. int a =;D. int a = 0.0;答案:A3. 在C语言中,下列哪个函数用于计算两个整数的和?A. printf()B. scanf()C. strcat()D. strcat()答案:A二、填空题1. 在C语言中,一个整型变量占用的内存空间通常是______个字节。

答案:42. 若有定义 `int a = 10;`,则表达式 `a++` 的值是______。

答案:113. 在C语言中,用于定义一个指针的关键字是______。

答案:int*三、简答题1. 请简述C语言中数组和指针的关系。

答案:在C语言中,数组名可以被用作指向数组第一个元素的指针。

数组的每个元素可以通过指针访问,指针可以递增或递减来遍历数组。

2. 解释C语言中的递归函数是如何工作的。

答案:递归函数是一种调用自身的函数。

它必须有一个终止条件,否则会无限递归下去。

递归函数通过将问题分解成更小的子问题来解决问题,每个子问题都是原始问题的简化版本。

四、编程题1. 编写一个C语言程序,计算并输出1到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 between 1 and 100is: %d\n", sum);return 0;} ```。

往年专升本c语言试题及答案

往年专升本c语言试题及答案

往年专升本c语言试题及答案一、选择题(每题2分,共20分)1. C语言中,用于定义变量的关键字是:A. defineB. varC. letD. int答案:D2. 下列哪个是合法的C语言常量?A. 1.2EB. .5e2C. 0xGHID. 1e.2答案:B3. 在C语言中,哪个运算符用于计算两个数的乘积?A. *B. /C. +D. -答案:A4. 以下哪个是C语言中的合法标识符?A. 2variableB. variable2C. variable#2D. variable$2答案:B5. C语言中,哪个关键字用于声明一个函数?A. functionB. methodC. procedureD. void答案:D6. 在C语言中,哪个语句用于结束一个循环?A. continueB. breakC. exitD. return答案:B7. 下列哪个是C语言中数组的正确声明方式?A. int array[]B. int [10] arrayC. int array[10]D. int 10 array答案:C8. 以下哪个是C语言中的字符串字面量?A. "Hello World"B. 'Hello World'C. "Hello" + "World"D. "Hello", "World"答案:A9. 在C语言中,哪个函数用于计算两个数的和?A. sum()B. add()C. plus()D. None of the above答案:D10. C语言中,哪个关键字用于定义一个结构体?A. structB. unionC. classD. type答案:A二、填空题(每题2分,共20分)1. 在C语言中,一个基本的数据类型是________。

答案:int2. 一个C语言程序的执行是从________函数开始的。

专升本c语言在线试题及答案

专升本c语言在线试题及答案

专升本c语言在线试题及答案一、选择题(每题2分,共20分)1. C语言中,以下哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A2. 在C语言中,以下哪个选项是正确的字符串定义?A. char str[] = "Hello";B. char str[] = 'Hello';C. char str = "Hello";D. char str[] = {"Hello"};答案:A3. 下列关于C语言函数的描述,错误的是?A. 函数可以没有返回值B. 函数可以有多个返回值C. 函数可以有默认参数D. 函数可以是递归的答案:C4. 在C语言中,以下哪个运算符用于取地址?A. *B. &C. %D. #答案:B5. 下列关于C语言数组的描述,正确的是?A. 数组可以是多维的B. 数组的大小在编译时确定C. 数组可以动态分配D. 数组的索引从1开始答案:B6. 在C语言中,以下哪个关键字用于定义一个枚举类型?A. enumB. unionC. structD. typedef答案:A7. 下列关于C语言指针的描述,错误的是?A. 指针可以指向任何类型的数据B. 指针可以被赋值为NULLC. 指针可以被赋值为0D. 指针不能被赋值为负数答案:D8. 在C语言中,以下哪个选项是正确的宏定义?A. #define PI 3.14B. #define PI = 3.14C. #define PI 3.14D. #define PI 3.14答案:A9. 下列关于C语言文件操作的描述,错误的是?A. 文件操作需要包含头文件stdio.hB. 文件指针是FILE类型的C. 文件操作函数需要以"fopen"开始D. 文件操作完成后需要调用"fclose"关闭文件答案:C10. 在C语言中,以下哪个关键字用于声明一个变量?A. intB. floatC. charD. all of the above答案:D二、填空题(每题2分,共10分)1. 在C语言中,使用________关键字可以定义一个函数。

专升本C语言历年试题及答案

专升本C语言历年试题及答案

专升本C语言历年试题及答案一、选择题(每题2分,共20分)1. 下面哪个选项是C语言中的关键字?A. intB. integerC. floatD. double答案:A2. C语言中,用于定义数组的关键字是?A. listB. arrayC. vectorD. set答案:B3. 在C语言中,哪个函数用于计算数组的长度?A. length()B. size()C. sizeof()D. count()答案:C4. 下列哪个选项是C语言中的逻辑运算符?A. &&B. ||C. ==D. =5. C语言中,用于实现循环结构的关键字是?A. loopB. repeatC. whileD. do答案:C6. 在C语言中,以下哪个选项不是标准输入输出函数?A. printf()B. scanf()C. cout()D. getchar()答案:C7. 下列哪个选项是C语言中定义函数的关键字?A. functionB. defC. voidD. int答案:C8. 在C语言中,以下哪个选项不是合法的变量名?A. _nameB. name123C. 123nameD. name$答案:C9. C语言中,用于定义指针的关键字是?B. refC. pointerD. *答案:D10. 下列哪个选项不是C语言中的预处理指令?A. #includeB. #defineC. #importD. #pragma答案:C二、填空题(每题2分,共20分)1. 在C语言中,定义一个整型变量的正确语法是:________。

答案:int variable_name;2. 如果要将一个变量的值赋给另一个变量,应该使用运算符________。

答案:=3. 在C语言中,表示逻辑与的运算符是________。

答案:&&4. 用于计算两个整数相加的函数是________。

答案:add()5. C语言中,用于定义一个函数的关键字是________。

专升本C语言历年考试题和答案解析

专升本C语言历年考试题和答案解析

专升本C语言历年考试题及答案一、单项选择题1. C语言源程序文件经过C编译程序编译连接之后生成一个后缀为__C____的文件。

A、”.c”B、“.obj”C、“.exe”D、“.bas”2. 以下选项中不正确的整型常量是_C____。

A、 12LB、 -10C、 1,900D、 123U3. 表达式___C___的值是0。

A、3%5B、3/5.0C、3/5D、3<54. 表达式 !(x>0||y>0) 等价于__D___。

A、!x>0||!y>0B、!(x>0)||!(y>0)C、!x>0&&!y>0D、!(x>0)&&!(y>0)5. 若变量已正确定义并赋值,表达式__D____不符合C语言语法。

A、4&&3B、+aC、a=b=5D、int(3.14)6. 若变量已正确定义,执行语句scanf("%d%d%d ",&k1,&k2,&k3);时,___B___是正确的输入。

A、2030,40B、20 30 40C、20, 30 40D、20, 30,407. 执行语句printf(” __D____”, 2); 将得到出错信息。

A、%dB、%oC、%xD、%f8. 设变量定义为“int s[ ]="hello\nworld\n";”,则数组s中有__B____个元素。

A、12B、13C、14D、159. 设变量定义为“int a[2]={1,3}, *p=&a[0]+1;”,则*p的值是___B__。

A、2B、3C、4D、&a[0]+110. 若变量已正确定义并赋值,表达式 -k++ 等价于__A____。

A、-(k++)B、(-k)++C、-(k+1)D、-(++k)11. 在C 语言程序中,在函数内部定义的变量称为__D____。

专升本C语言历年考试题及答案

专升本C语言历年考试题及答案

专升本C语言历年考试题及答案XXX2005年专升本选拔考试《C语言程序设计》试卷(考试时间120分钟,总分100分)一、用C语言描述下列命题(共16分,每小题2分)1、a、b和c均为整型变量,a和b中有一个大于c。

2b b4ac的C语言表达式(注:sqrt( )为开方函数)。

2、数学公式:2a3、写出100内的自然数x,能被3或7整除的表达式。

4、写出判断字符变量ch是阿拉伯数字字符的表达式。

5、写出满足x<60或90≤x≤100的C语言表达式。

6、写出平面上的点(x,y)落在单位圆内的表达式。

7、数组p[10]的各元素用于保存指向char型的指针,写出该数组的定义。

8、有名为max的函数,其功能是对两个int型参数x、y 进行计算,返回其中的较大者,写出该函数的说明部分。

二、根据要求画出流程图或N-S图(共10分,每小题5分)1、用流程图或N-S图表示以下算法。

输入x的值,按以下函数计较y的值,并输出y的值。

2、画出打印以下图案的算法流程图或N-S图。

3、步伐浏览题(共20分,每题4分)1、# includevoid main( ) {int i,sum=0;for(i=1;i<=30;i++)if(i%3!=0) continue;else sum=sum+i;printf(“sum=%d\n”,sum);请叙述上面程序的功能,并写出程序的运行结果。

2、void main( ) {int a,b,x=1,y=1;scanf("%d%d",&a,&b);if (a>0)x=x+y;if (a<b)x=2*y;elseif (a==b)y=5;elsey=x+y;printf("x=%d,y=%d\n",x,y);假设输入为: 2-3,则程序运行后的输出结果为:3、void main() {int a[3][3]={2,4,6,8,10,12,14,16,18};int sum=0.i。

专升本c语言历年试题及答案文库

专升本c语言历年试题及答案文库

专升本c语言历年试题及答案文库专升本C语言历年试题及答案文库一、选择题1. 下列关于C语言的描述中,错误的是()。

A. C语言是一种高级编程语言B. C语言可以直接被计算机执行C. C语言具有结构化的特点D. C语言具有丰富的库函数答案:B2. 在C语言中,用于定义字符型变量的关键字是()。

A. intB. charC. floatD. double答案:B二、填空题1. C语言中,用于定义字符串的字符数组的声明方式是:char str[20] = "Hello"; 其中数组的长度是()。

答案:202. 在C语言中,使用()关键字可以定义一个函数。

答案:void 或者 int 或者其他类型三、简答题1. 简述C语言中指针的概念。

答案:指针是一种变量,它存储了另一个变量的内存地址。

通过指针,程序可以间接访问和修改变量的值。

2. 解释C语言中的数组和指针的关系。

答案:在C语言中,数组名可以被当作指向数组第一个元素的指针。

因此,数组和指针密切相关,指针可以用来遍历数组。

四、编程题1. 编写一个C语言程序,实现求两个整数的和。

答案:```c#include <stdio.h>int main() {int num1, num2, sum;printf("Enter two numbers: ");scanf("%d %d", &num1, &num2);sum = num1 + num2;printf("The sum is: %d\n", sum);return 0;}```2. 编写一个C语言程序,实现字符串的反转。

答案:```c#include <stdio.h>#include <string.h>int main() {char str[100], reversed[100];printf("Enter a string: ");gets(str);for (int i = 0; str[i] != '\0'; i++) {reversed[i] = str[strlen(str) - 1 - i];}reversed[strlen(str)] = '\0';printf("Reversed string: %s\n", reversed);return 0;}```五、论述题1. 论述C语言在现代编程语言中的地位和作用。

c语言专升本真题及答案解析

c语言专升本真题及答案解析

c语言专升本真题及答案解析一、选择题(每题2分,共20分)1. 下列哪个选项是C语言的关键字?A. defineB. typedefC. myvarD. alloftheabove2. C语言中,哪个运算符用于计算两个整数的乘积?A. +B. -C. *D. /3. 在C语言中,以下哪个语句用于定义一个整型变量?A. int var;B. var int;C. define int var;D. int = var;4. 下列哪个选项是C语言中合法的数组声明?A. int numbers[];B. int numbers[10] = {0};C. int numbers = 10;D. Both A and B5. C语言中,哪个函数用于计算两个数的和?A. sum()B. add()C. calculate()D. There is no built-in function for this.6. 在C语言中,哪个关键字用于定义一个函数?A. functionB. defC. methodD. void7. 下列哪个选项表示C语言中的逻辑与操作?A. &&B. ||C. !D. &8. C语言中,哪个语句用于结束一个循环?A. endB. breakC. continueD. stop9. 在C语言中,哪个关键字用于声明一个指针变量?A. pointerB. refC. *D. ptr10. 下列哪个选项是C语言中正确的字符串字面量?A. "Hello World"B. 'Hello World'C. "Hello\nWorld"D. Both A and C二、填空题(每题2分,共20分)11. 在C语言中,使用________关键字可以定义一个结构体。

12. 一个C语言程序的执行从________函数开始。

13. 使用________运算符可以对两个变量进行位运算。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

专升本C语言历年考试题及答案一、单项选择题1. ___D___是合法的用户自定义标识符。

A、 b-bB、floatC、<fr>D、 _isw2. 若变量已正确定义并赋值,表达式___B___不符合C语言语法。

A、a*b/c;B、3.14%2C、2, bD、a/b/c3. ___C__是不正确的字符常量。

A、'n'B、'1'C、"a"D、'101'4. 在 C 程序中,用___B__表示逻辑值“真”。

A、1B、非 0 的数C、非 1 的数D、大于 0 的数5. __C____把x、y定义成float类型变量,并赋同一初值3.14。

A、float x, y=3.14;B、float x, y=2*3.14;C、float x=3.14, y=x=3.14;D、float x=y=3.14;6. 若变量已正确定义,表达式___C___的值不是2。

A、2&3B、1<<1C、a==2D、1^37. 若变量已正确定义,语句“if(a>b) k=0; else k=1;”和__C____等价。

A、k=(a>b)?1:0;B、k=a>b;C、k=a<=b;D、a<=b ? 0 : 1;8. 设变量定义为“int a, b;”,执行下列语句时,输入_D____,则a和b的值都是10。

scanf("a=%d, b=%d",&a, &b);A、10 10B、10, 10C、a=10 b=10D、a=10, b=109. 下列程序的输出结果是__D___。

fun(int a, int b, int c){ c =a*b; }void main( ){ int c;fun(2,3,c);printf(”%dn”,c); }A、0B、1C、6D、无法确定10. 在C程序中,若对函数类型未加说明,则函数的隐含类型为__A___。

A、intB、doubleC、voidD、char11. 表达式 strlen(”hello”) 的值是___B____。

A、 4B、 5C、 6D、 712. 设变量定义为“int a[4];”,则表达式__D____不符合C语言语法。

A、*aB、a[0]C、aD、a++13. 设变量定义为“int x, *p=&x;”,则&*p相当于__A___。

A、pB、*pC、xD、*&x14. 若变量已正确定义,_A___不能使指针p成为空指针。

A、p=EOFB、p=0C、p=’’D、p=NULL15. 对于以下的变量定义,表达式__D____不符合C语言语法。

struct node {int len;char *pk;} x = {2, "right"}, *p = &x;A、p->pkB、*p.pkC、*p->pkD、*x.pk16. 有如下程序int runc(int a,int b){ return(a+b);}main0{ int x=2,y=5,z=8,r;r=func(func(x,y),z);printf(“%\d\n”,r);}(D)A) 12 B) 13 C) 14 D) 1517. 对于基类型相同的两个指针变量之间,不能进行的运算是 (C)A) < B) = C) + D) -18. 有如下程序long fib(int n){ if(n>2) return(fib(n-1)+fib(n-2));else return(2);}main0{ printf(“%d\n”,fib(3));(B)A} 2 B} 4 C} 6 D} 819. 有如下定义struct person{char name[9]; int age;};strict person class[10]={“Johu”, 17,Paul”, 19Mary”, 18,Adam 16,};M的语句是 (D)A) prinft(“%c\n”,class[3].mane);B) pfintf(“%c\n”,class[3].name[1]);C) prinft(“%c\n”,class[2].name[1]);D) printf(“%^c\n”,class[2].name[0]);20. 以下所列的C语言常量中,错误的是 (B)A) 0xFF B) 1.2e0.5 C) 2L D) ‘\72’21. 有以下程序段int k=0while(k=1)k++;while 循环执行的次数是 (A)A) 无限次 B) 有语法错,不能执行C) 一次也不执行 D) 执行1次22. 以下程序的输出结果是 (C)A) 0 B) 29 C) 31 D) 无定值fun(int x, int y, int z){ z=x*x+y*y; }main(){ int a=31;fun(5,2,a);printf(“%d”,a); }23. 下列程序段的输出结果是 (A)A) 2 1 4 3 B) 1 2 1 2 C) 1 2 3 4 D) 2 1 1 2void fun(int *x, int *y){ printf(“%d %d”, *x, *y); *x=3; *y=4;}main(){ int x=1,y=2;fun(&y,&x);printf(“%d %d”,x, y); }24. 当调用函数时,实参是一个数组名,则向函数传送的是 (B)A) 数组的长度 B) 数组的首地址C) 数组每一个元素的地址 D) 数组每个元素中的值25. 以下程序的输出结果是 (A)A) 1 B) 2 C) 3 D) 4long fun( int n){ long s;if(n= =1 || n= =2) s=2;else s=n-fun(n-1);return s; }main(){ printf(“%ld\n”, fun(3)); }26. 以下程序的输出结果是 (B)A) 16 B) 2 C) 9 D) 1#define SQR(X) X*Xmain(){ int a=16, k=2, m=1;a/=SQR(k+m)/SQR(k+m);printf(“d\n”,a); }27. 以下函数返回a所指数组中最小的值所在的下标值fun(int *a, int n){ int i,j=0,p;p=j;for(i=j;i<N;I++)if(a[i]<A[P])__________;return(p); }(D)A) i=p B) a[p]=a[i] C) p=j D) p=i二、填空题1. 表示“x≥y≥z”的C表达式是___ x>=y && y>=z ____。

2. 下列程序段的输出是__1____。

printf("%on", 010<<1^1);3. 下列程序段的输出是__6,90____。

int k;float s;for (k=0, s=0; k < 7; k ++)s += k/2;printf("%d, %fn", k, s);4. 下列程序段的输出是__5,25_____。

#define f(a, b, x) a*x+bprintf("%d, %dn", f(3,2,1), f(6, 5, f(3, 2, 1)));5. 下列程序段的输出是_*#*#____。

main(){ int k;for(k=1; k<5; k++) {if(k % 2) printf("*");else continue;printf("#");}}6. 下列程序段的输出是__5 8___。

# include <stdio.h>int f(int x){ static y=1;y++;x += y;return x;}void main(){ int k;k=f(3);printf("%d %dn", k, f(k));}7. 下列程序段的输出是___5__。

int *p, *q, k = 5 , j = 6 ;q = &k ; p = q ; q = &j ;printf("%d", *p);8. 函数void f(char s[ ], char t[ ]) { int k=0;while (s[k]=t[k]) k++;}等价于void f(char *s, char *t){ while (_*s++=*t++____);}9. 下列程序段的输出是_ ne,s ____。

char *a[2]={"one", "two"}, **p=a;printf("%s,", *(p++)+1);printf("%cn", **p-1);10. 下列程序编译后生成 t.exe, 运行 t input output zoo oil 的输出结果是__zoo___。

void main(int argc, char * argv[ ]){ int k;char *p=argv[1];for(k=2; k<argc; k++)if(strcmp(argv[k], p)>0) p=argv[k];printf("%sn", p);}11. 下列程序调用swap函数交换a和b的值,并输出交换后的a和b的值。

程序的输出结果是:After swap 5, 3。

void main( ){ int a=3, b=5;swap( &a, &b ) ;printf("After swap %d, %d", a, b);}swap( int *p, int *q ){ int t;t=*p; ;*p=*q ;*q=t ;}专升本C语言历年考试题及答案一、单项选择题1.?? C语言源程序文件经过C编译程序编译连接之后生成一个后缀为__C____的文件。

??? A、”.c”????? B、“.obj”?????? C、“.exe”????? D、“.bas”2.?? 以下选项中不正确的整型常量是_C____。

??? A、 12L??????? B、 -10???????? C、 1,900????? D、 123U3.?? 表达式___C___的值是0。

相关文档
最新文档