专升本C语言历年考试题及答案10
专升本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语言专升本试题及答案一、选择题(每题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语言试题及答案一、单项选择题(每题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语言专升本试题及答案第一部分:选择题(共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语言历年考试题及答案10
专升本C语言历年考试题及答案10一、单项选择题(1~30题每小题1分,3—45题每小题2分,共60分)1.以下合法的用户自左义标识符是(D)。
A、b-b float2.若变量已正确定义并賦值,A、a*b/c; B. %23.下列不正确的字符常量是A、*、C、D、Jsw 以下不符合C语言语法的表达式是(B)oC、2, b(C)D、a/b/cD、C、F(B)C、非1的数把X、y泄义成float类型变量,并赋同一初值是(C) A、float x z y=;C、float x=z y=x=;若变量已正确泄义,A、2&3 B.若变量已正确泄义,A、k=(a>b)l:0;C、k=a<=b; 设变量定义为"int a, IO!'4.在C语言中,表示逻辑值“真”用B、非0的数A、1 D、大于0的数5.6.7.8.9.10.B、float x, y=2*;D、float x=y=;值不为2的表达式是(C)1?1 C、a==2D、1A3和语句“if(a>b)k=0; else k=l;” 等价的是(C)B、k=a>b;D、a<=b 0 : 1;执行下列语句时,若a和b的值都是20,则应输入(D)scanf(,,a=%d/ b=%d"/&a/ &b):A、10 10B、10, 10下列程序的输出结果是(D) fun(inta, int b, int c){ C =a*b; }void main(){ int c;fun(2,3/C); printf("%dn”:c);}A. 0C、a=10 b=10D、a=10, b=10B、1C、在c程序中,若对函数类型未加说明,B、doubleC、voidAx int表达式strlen(〃hello")的值是(B)A. 4 B、56 D、无法确定则函数的隐含类型为(A)D、charB、C、6D、712.设变量左义为“int a[4]/\则不符合C语言语法的表达式是(D)A、*aB、a[0]C、aD、a++13.设变量定义为“int x, *p=&x/\则&相当于(A)A^ p B、*p C、x D、水&x14.若变量已正确左义,不能使指针p成为空指针的是(A)A、p二EOF B. p=0 C. D、p=NULL15.对于以下的变量泄义,不符合C语言语法的表达式是(D)struct node {int len;char *pk;} x = {2, l,right,,}/ *p = &xA、p->pkB、* C> *p->pk D、*16.有如下程序int runc(int a,int b){return(a+b);}mainO{int x=2,y=5/z=8,r;r=func(func(x,y),z);printf("%\d\n",rj;}该程序的输出的结果是(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-l)+fib(n-2));else return(2);}mainO{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", 19^Mary7; 18,"Adam 16J;根据上述定义,能输出字母M的语句是(D)A)prinft("%c\n",class[3].mane);B)pfintf("%c\n〃,class[3]?name⑴);C)prinft(zz%c\n,,,class[2].name[l]);D)printf(z/%A c\n,,/class[2].name[O]);20.以下所列的C语言常量中,错误的是(B)A)OxFF B) 0?5C2LD)*72〃21.有以下程序段int k=0while(k=l)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) 2143 B) 1212 C) 1234 D) 2112void fun(int *x, int *y){ printf("%d %d", *x, *y); *x=3; *y=4;} main(){int x=l z 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 11 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=l;a/=SQR (k+m)/SQR( k+m); printf("d\n",a);}27.有以下程序main(){int m=3z n二4,x;x=-m++;x=x+8/++n;printf(”%d\n 蔦x);}程序运行后的输岀结果是:(D)A)3 B)5 C)-l D)-228.以下叙述中正确的是:(A)A)构成C程序的基本单位是函数B)可以在一个函数中左义另一个函数C)main()函数必须放在其它函数之前D)所有被调用的函数一定要在调用函数之询进行定义29.以下选项中非法的表达式是:(D )A) 0<=x<100 B) i=j==OC) (char)(65+3) D) x+l=x+l30.下列条件i吾句中,功能与英他语句不同的是:(D)A)if(a) printff”%d\n':x); else printf(l,%d\n"/y);B)if(a==O) printf(”%d\n”,y); else printf(”%d\n舄x);C)if (a!=0) printf(”%d\n”,x); else printf(吆d\n蔦y);D)if(a==O) printf(,,%d\n,l,x); else printf(”%d\n笃y);31.以下不能定义为用户标识符的是:(D )A) scanf B) Void C) _3com_ D) int32.C语言中用于结构化程序设计的三种基本结构是:(A)A)顺序结构、选择结构、循环结构B) if. switch, breakC) for% while、do-while D) if^ for、continue33.若有说明语句:inta,b,c,*d=&c:,则能正确从键盘读入三个整数分别赋给变量a、b、c 的语句是:(A )A) scanf(,,%d%d%d,,/&a/&b/d); B) scanf(l,%d%d%d l,/&a,&b,&d);C) scanf(,,%d%d%d,,/a,b z d); D) scanf(,,%d%d%d"/a/b/*d);34.若有定义:intaa[8];。
专升本C语言历年试题
专升本C语言历年试题一、选择题(每题1分,共5分)1.下列哪个选项是C语言的基本数据类型?A.floatB.IntegerC.DoubleD.String2.在C语言中,哪个关键字用于定义整型变量?A.IntB.FloatC.DoubleD.Char3.下面哪个选项是C语言中的逻辑运算符?A.++B.--C.&&D.||4.在C语言中,哪个函数用于动态分配内存?A.malloc()B.calloc()C.realloc()D.free()5.下面哪个选项用于在C语言中进行标准输入输出操作?A.stdio.hB.conio.hC.stdlib.hD.math.h二、判断题(每题1分,共5分)1.C语言是一种高级编程语言。
()2.在C语言中,数组下标从1开始。
()3.C语言支持面向对象编程。
()4.在C语言中,函数可以返回多个值。
()5.C语言中的switch语句可以用于多个条件的判断。
()三、填空题(每题1分,共5分)1.C语言中的基本数据类型包括____、____、____、____。
2.在C语言中,____用于定义整型变量,____用于定义浮点型变量。
3.C语言中的____语句用于循环执行代码块,____语句用于条件判断。
4.在C语言中,____用于动态分配内存,____用于释放内存。
5.C语言中的____用于标准输入,____用于标准输出。
四、简答题(每题2分,共10分)1.请简述C语言的特点。
2.请解释C语言中的变量和常量的区别。
3.请简述C语言中的数组和字符串的区别。
4.请解释C语言中的函数原型的作用。
5.请简述C语言中的指针的概念及其作用。
五、应用题(每题2分,共10分)1.编写一个C程序,输出1到100的所有偶数。
2.编写一个C程序,计算并输出一个整数的阶乘。
3.编写一个C程序,实现两个整数的交换。
4.编写一个C程序,输出一个字符串的长度。
5.编写一个C程序,实现一个简单的计算器,可以进行加、减、乘、除运算。
专升本考试《C语言程序设计》试卷
专升本考试《C语言程序设计》试卷一、选择题1.C语言中,sizeof运算符返回的是什么类型的值?A. intB. floatC. doubleD. size_t正确答案:D. size_t解析:sizeof运算符返回的是size_t类型的值,用于表示内存中对象的大小。
2.下列哪个选项是C语言的关键字?A. declareB. assignC. typedefD. define正确答案:C. typedef解析:typedef是C语言的关键字,用于定义自定义类型。
3.在C语言中,scanf函数的返回值是什么?A. 读取到的字符的个数B. 读取到的整数C. 读取到的字符串D. 读取失败的标志正确答案:A. 读取到的字符的个数解析:scanf函数返回成功读取到的字符的个数。
4.下面哪个选项是C语言中的逻辑与运算符?A. &&B. ||C. !D. &正确答案:A. &&解析:C语言中,逻辑与运算符用&&表示。
5.在C语言中,以下哪个选项是正确的注释符号?A. //B. ||C. ##D. //正确答案:A. //解析:在C语言中,//用于表示单行注释。
二、填空题1.标准库函数strlen用于计算给定字符串的长度。
2.for循环的语法结构为:for (初始表达式; 条件表达式; 增量表达式) {循环体}3.C语言中,用于输出到标准输出设备的关键字是printf。
4.在C语言中,用于定义常量的关键字是const。
5.scanf函数中,格式化控制符%d用于读取整数。
三、编程题1.编写一个C程序,实现输入两个整数,输出它们的和。
```c #include <stdio.h>int main() { int a, b; printf(。
考题解答10年专升本C语言
2010年专升本C语言试题解答一、单项选择题(每题2分,共60分)1、在C语言中,服点常量的表示方式错误的是()。
A. 12.565B. 0.0C. 1.2521e2D. 5.3^82、下列程序的执行结果是()。
#include <stdio.h>void main(){float b=189.22;printf(“%2d”,(int)b);}A. 189.22B. 189C. 18D. 89_3、如果要对a,b,c三个变量赋予同一个初值5,如下语句错误的是()。
A. int a,b,c;a=b=c=5;B. int a=5,b=5,c=5;C. int a=5;b=5;c=5;D. int a=5,b=a,c=b;4、设所有变量均为int类型,运行表达式a=((a=4*6,a-3),a+22)后a的值为()。
A. 46B. 43C. 0D. 205、下列不能正确地得到a,b的最大值的语句是()。
A. if(a>b)max=a;else max=b;B. a>b?max=b:max=a;C. a>b?max=a:max=b;D. a<b?max=b:max=a;6、已知float x=6.5; int a=8; float y=3.5; 则表达式x+a%3*(int)(x+y)%2/4最后的值是多少?A. 10B. 6.5C. 31.5D. 07、关于算法的描述,错误的是()。
A. 具有0个或多个输入输出B. 每一个步骤毒必须是确定的C. 可以是有限的,也可以是无限不停止的D. 输出可以是屏幕显示,也可以是打印机打印8、设a,b的值分别为3和5,则如下程序执行后,a和b的值分别为()。
if( (a=b)>0) b=a++; else a=++b;A. 6,5B. 5,6C. 5,5D. 3,69、设a,b是int类型,在键盘上输入a,b的值,正确语句是()。
专升本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语言试题及答案一、选择题(每题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语言在线试题及答案一、选择题(每题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语言历年试题及答案一、选择题(每题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语言真题及答案一、选择题1.下列标识符中,不符合C语言命名规范的是() A. _intnum B. num1 C. NUM_2 D. 123num答案:D解析:标识符由字母、数字和下划线组成,且不能以数字开头。
2.下面哪些是C语言的关键字? A. for B. var C. if D. new答案:A、C解析:for和if是C语言的关键字,而var和new 不是C语言关键字。
3.在C语言中,以下哪个标识符是合法的? A. 6num *****************%答案:B解析:只有标识符中含有字母、数字和下划线是合法的,不能包含其他特殊字符。
4.下列哪个不是C语言的数据类型? A. char B. stringC. intD. float答案:B解析:C语言中没有string类型,可以使用字符数组来表示字符串。
5.C语言中,以下哪个运算符优先级最高? A. = B. +=C. ++D. /答案:C解析:自增运算符(++)的优先级最高。
二、填空题1.C语言中,字符型变量所占用的字节数是\\\_。
答案:1解析:字符型变量用一个字节来存储。
2.C语言中,声明一个整型变量x并赋初值12,正确的语句是\\\_。
答案:int x = 12;解析:在声明变量时,可以同时为变量赋初值。
3.C语言中,下面哪个不是合法的标识符?答案:_num%解析:标识符只能由字母、数字和下划线组成,不能包含其他特殊字符。
4.C语言中,取变量地址的运算符是\\\_。
答案:&解析:取地址运算符用于获取变量在内存中的地址。
5.C语言中,以下代码的输出结果是\\\_。
```c int a = 5; printf(。
专升本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语言历年考试题及答案江西财经大学2005年专升本选拔考试《C语言程序设计》试卷(考试时间120分钟,总分100分)一、用C语言描述下列命题(共16分,每小题2分)1、a、b和c均为整型变量,a和b中有一个大于c。
2、数学公式:a acb24 2-+-b的C语言表达式(注:sqrt( )为开方函数)。
3、写出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图。
&& && & && & & &三、程序阅读题(共20分,每小题4分)1、# include <stdio.h>void 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;else if (a==b) y=5;else y=x+y;printf("x=%d,y=%d\n",x,y);}假设输入为: 2 -3<CR>, 则程序运行后的输出结果为:3、void main() {int a[3][3]={2,4,6,8,10,12,14,16,18};int sum=0, i, j;for ( i=0; i<3; i++)for ( j=0; j<3; j++ )if (i==j) sum+=a[i][j];printf(“sum=%d\n”,sum) ;}请叙述上面程序的功能,并写出程序的运行结果。
专升本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语言历年试题及答案文库一、选择题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语言专升本真题及答案解析一、选择题(每题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. 使用________运算符可以对两个变量进行位运算。
专升本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____。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
专升本C语言历年考试题及答案一、单项选择题(1~30题每小题1分,31~45题每小题2分,共60分)1. 以下合法的用户自定义标识符是(D)。
A、b-bB、floatC、<fr>D、_isw2. 若变量已正确定义并赋值,以下不符合C语言语法的表达式是(B)。
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. 把x、y定义成float类型变量,并赋同一初值3.14是(C)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. 若变量已正确定义,值不为2的表达式是(C)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;”,执行下列语句时,若a和b的值都是10,则应输入(D)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];”,则不符合C语言语法的表达式是(D)A、*aB、a[0]C、aD、a++13. 设变量定义为“int x, *p=&x;”,则&*p相当于(A)A、pB、*pC、xD、*&x14. 若变量已正确定义,不能使指针p成为空指针的是(A)A、p=EOFB、p=0C、p=’’D、p=NULL15. 对于以下的变量定义,不符合C语言语法的表达式是(D)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”, 19“Mary”, 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. 有以下程序main(){ int m=3,n=4,x;x=-m++;x=x+8/++n;printf("%d\n",x);}程序运行后的输出结果是:(D)A)3 B)5 C)-1 D)-228. 以下叙述中正确的是:(A)A) 构成C程序的基本单位是函数B) 可以在一个函数中定义另一个函数C) main()函数必须放在其它函数之前D) 所有被调用的函数一定要在调用函数之前进行定义29. 以下选项中非法的表达式是:( D )A)0<=x<100 B)i=j==0C)(char)(65+3) D)x+1=x+130. 下列条件语句中,功能与其他语句不同的是:(D)A) if(a) printf("%d\n",x); else printf("%d\n",y);B) if(a==0) printf("%d\n",y); else printf("%d\n",x);C) if (a!=0) printf("%d\n",x); else printf("%d\n",y);D) if(a==0) printf("%d\n",x); else printf("%d\n",y);31. 以下不能定义为用户标识符的是:( D )A)scanf B)Void C)_3com_ D)int32. C语言中用于结构化程序设计的三种基本结构是:(A)A) 顺序结构、选择结构、循环结构B) if、switch、breakC) for、while、do-while D) if、for、continue33. 若有说明语句:int a,b,c,*d=&c;,则能正确从键盘读入三个整数分别赋给变量a、b、c的语句是:( A )A) scanf("%d%d%d",&a,&b,d); B) scanf("%d%d%d",&a,&b,&d);C) scanf("%d%d%d",a,b,d); D) scanf("%d%d%d",a,b,*d);34. 若有定义:int aa[ 8];。
则以下表达式中不能代表数组元aa[1]的地址的是:( C )A) &aa[0]+1 B) &aa[1] C) &aa[0]++ D) aa+135. 有以下程序main(){char str[][10]={"China","Beijing"},*p=str;printf("%s\n",p+10);}程序运行后的输出结果是:(B)A) China B)Bejing C)ng D)ing36. 以下程序的输出结果是:(A )main(){ int a=0,i;for(i=1;i<5;i++){ switch(i){ case 0:case 3:a+=2;case 1:case 2:a+=3;default:a+=5;}}printf("%d\n",a);}A)31 B) 13 C) 10 D) 2037.有以下程序#include <string.h>main(int argc ,char *argv[ ]){ int i,len=0;for(i=1;i<argc;i+=2) len+=strlen(argv[i]);printf(“5d\n”,len);}经编译链接后生成的可执行文件是ex.exe,若运行时输入以下带参数的命令行ex abcd efg h3 k44执行后输出结果是:( D )A)14 B)12 C)8 D)638. 下列选项中正确的语句组是:( D )A) char s[8]; s={"Beijing"}; B)char *s; s={"Beijing"};C)char s[8]; s="Beijing"; D)char *s; s="Beijing";39. 有以下程序main(){ int a[3][3],*p,i;p=&a[0][0];for(i=0;i<9;i++) p[i]=i+1;printf("%d \n",a[1][2]);}程序运行后的输出结果是:( B )A)3 B)6 C)9 D)240. 以下符合C语言语法的实型常量是:( C )A) 1.2E0.5 B) 3.14.159E C) .5E-3 D) E1541.以下程序段中与语句k=a>b?(b>c?1:0):0;功能等价的是:( A )A)if((a>b)&&(b>c)) k=1; B) if((a>b)||(b>c)) k=1;else k=0; else k=0;C)if(a<=b) k=0; D)if(a>b) k=1;else if(b<=c) k=1; else if(b>c) k=1;else k=0;42.若程序中定义了以下函数double myadd(double a,double b){ return (a+b);}并将其放在调用语句之后,则在调用之前应该对该函数进行说明,以下选项中错误的说明是:( A )A)double myadd(double a,b); B)double myadd(double,double);C)double myadd(double b,double a); D)double myadd(double x,double y);43. 若fp已正确定义并指向某个文件,当未遇到该文件结束标志时函数feof(fp)的值为:( A )A)0 B)1 C)-1 D)一个非0值44. 下列关于C语言数据文件的叙述中正确的是:( D )A)文件由ASCII码字符序列组成,C语言只能读写文本文件B)文件由二进制数据序列组成,C语言只能读写二进制文件C)文件由记录序列组成,可按数据存放形式分为二进制文件和文本文件D)文件由数据流形式组成,可按数据的存放形式分为二进制文件和文本文件45. 有以下程序main(){int aa[4][4]={{1,2,3,4},{5,6,7,8},{3,9,10,2},{4,2,9,6}};int i,s=0;for(i=0;i<4;i++) s+=aa[i][1];printf("%d\n",s);}程序运行后的输出结果是:( B )A) 11 B) 19 C) 13 D) 20二、填空题(每题2分,共30分)1. 表示“x≥y≥z”的C表达式是___ x>=y && y>=z ____。