专升本c语言(1)
山西专升本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语言)

C语言知识复习资料第一章C语言基本知识【考点1】C程序用C语言编写的程序称为C语言源程序,源程序文件的后缀名为“.c”。
源程序经编译后生成后缀名为“.obj”的目标文件,再把目标文件与各种库函数连接起来,生成“.exe”可执行文件。
C语言有三种基本结构:顺序结构、选择结构、循环结构。
【考点2】main函数又称主函数,是C程序的入口。
main后面跟一对小括号和一对花括号,花括号括起来的部分称为main函数的函数体。
一个C程序从main函数开始执行,到main函数体执行完结束,而不论main函数在整个程序中的位置如何。
每一个程序有且仅有一个main函数,其他函数都是为main函数服务的。
【考点3】存储形式计算机在电脑中保存数据是采用二进制形式,由0或1构成的二进制称为位(bit),八个位构成一个字节(Byte),1个Byte=8个bit。
二进制、八进制、十六进制转化为十进制采用乘法,十进制转化为二进制、八进制、十六进制采用除法。
数据的存放位置就是它的地址。
【考点4】注释是对程序的说明,可出现在程序中任意合适的地方,注释从“/*”开始到最近一个“*/”结束,其间任何内容都不会被计算机执行,注释不可以嵌套。
【考点5】书写格式每条语句的后面必须有一个分号,分号是语句的一部分。
一行内可写多条语句,一个语句可写在多行上。
【考点6】标识符是标识名字的有效字符序列,可以理解为C程序中的单词。
标识符的命名规则是:(1)标识符只能由字母、数字和下划线组成,字母区分大小写。
(2)标识符的第一个字符必须是字母或下划线,不能为数字。
C语言标识符分如下3类(1)关键字。
它们在程序中有固定的含义,不能另作他用。
如int、for、switch等。
(2)预定义标识符。
预先定义并具有特定含义的标识符。
如define、include等。
(3)用户标识符。
用户根据需要定义的标识符,符合命名规则且不与关键字相同。
【考点7】常量与变量常量是指在程序运行过程中,其值不能改变的量。
专升本C语言考试大纲

专升本C语言考试大纲第一章 C语言概述(一)课程内容1 C语言的简史与特点2 一个简单的C程序3 程序的编辑,编译,链接和运行(二)考核知识点与考核要求1.程序设计,要求达到“识记”层次。
2.C语言的字符集,要求达到“领会”层次。
第二章数据类型,运算符与表达式(一)课程内容1 C数据类型2 常量与变量3运算符与表达式(二)考核知识点与考核要求1.C数据类型,要求达到“识记”层次。
2.常量与变量,要求达到“领会”层次。
3.运算符与表达式,要求达到“简单应用”层次。
第三章顺序程序设计(一)课程内容1 C语句的概述2 赋值语句3 数据输入输出的概念及在C语言中的实现4 字符数据的输入输出5 格式输入与输出(二)考核知识点与考核要求1.C语句的概述,要求达到“识记”层次。
2.赋值语句,要求达到“简单应用”层次。
3.格式输入与输出,要求达到“综合应用”层次。
第四章选择结构程序设计(一)课程内容1 if语句2 switch语句(二)考核知识点与考核要求if语句、switch语句,要求达到“综合应用”层次。
第五章循环控制(一)课程内容1 while语句2 do—while语句3 for语句4 循环的嵌套5 break语句和continue语句(二)考核知识点与考核要求1.while语句、do—while语句、for语句、break语句和continue语句,要求达到“综合应用”层次。
2. 循环的嵌套,要求达到“简单应用”层次。
第六章数组(一)课程内容1 一维数组2 多维数组3 字符数组(二)考核知识点与考核要求1一维数组的定义、元素的引用和初始化,要求达到“综合应用”层次。
2. 多维数组的定义、元素的引用和初始化,要求达到“简单应用”层次。
3字符数组的定义、元素的引用和初始化,要求达到“综合应用”层次。
4.字符数组的输入输出、字符串处理函数,要求达到“简单应用”层次。
第七章函数(一)课程内容1 概述2 函数定义的一般形式3 函数参数和函数值4 函数的调用5 函数的嵌套调用6 函数的递归调用7 数组作为函数参数8 局部变量和全局变量9 变量的存储类别(二)考核知识点与考核要求1.函数的定义和调用方法,要求达到“领会”层次。
专升本程序设计基础知识(C语言)

C语言知识复习资料第一章C语言基本知识【考点1】C程序用C语言编写的程序称为C语言源程序,源程序文件的后缀名为“.c”。
源程序经编译后生成后缀名为“.obj”的目标文件,再把目标文件与各种库函数连接起来,生成“.exe”可执行文件。
C语言有三种基本结构:顺序结构、选择结构、循环结构。
【考点2】main函数又称主函数,是C程序的入口。
main后面跟一对小括号和一对花括号,花括号括起来的部分称为main函数的函数体。
一个C程序从main函数开始执行,到main函数体执行完结束,而不论main函数在整个程序中的位置如何。
每一个程序有且仅有一个main函数,其他函数都是为main函数服务的。
【考点3】存储形式计算机在电脑中保存数据是采用二进制形式,由0或1构成的二进制称为位(bit),八个位构成一个字节(Byte),1个Byte=8个bit。
二进制、八进制、十六进制转化为十进制采用乘法,十进制转化为二进制、八进制、十六进制采用除法。
数据的存放位置就是它的地址。
【考点4】注释是对程序的说明,可出现在程序中任意合适的地方,注释从“/*”开始到最近一个“*/”结束,其间任何内容都不会被计算机执行,注释不可以嵌套。
【考点5】书写格式每条语句的后面必须有一个分号,分号是语句的一部分。
一行内可写多条语句,一个语句可写在多行上。
【考点6】标识符是标识名字的有效字符序列,可以理解为C程序中的单词。
标识符的命名规则是:(1)标识符只能由字母、数字和下划线组成,字母区分大小写。
(2)标识符的第一个字符必须是字母或下划线,不能为数字。
C语言标识符分如下3类(1)关键字。
它们在程序中有固定的含义,不能另作他用。
如int、for、switch等。
(2)预定义标识符。
预先定义并具有特定含义的标识符。
如define、include等。
(3)用户标识符。
用户根据需要定义的标识符,符合命名规则且不与关键字相同。
【考点7】常量与变量常量是指在程序运行过程中,其值不能改变的量。
专升本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语言历年考试题及答案1

专升本C语言历年考试题及答案1专升本C语言历年考试题及答案一、单项选择题1.___D___是合法的用户自定义标识符。
A、b-bB、float。
C。
D、_isw2.若变量已正确定义并赋值,表达式___B___不符合C语言语法。
A、a*b/c。
B、3.14%2.C、2.b。
D、a/b/c3.___C__是不正确的字符常量。
A、'n'。
B、'1'。
C、"a"。
D、'101'4.在C程序中,用___B__表示逻辑值“真”。
A、1.B、非的数C、非1的数D、大于的数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&3.B、1b) 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.设变量界说为“inta,b;”,履行以下语句时,输入_D____,则a和b的值都是10.scanf("a=%d。
b=%d",&a。
&b);A、10 10.B、10.10.C、a=10.b=10.D、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、0.B、1.C、6.D、无法确定10.在C程序中,若对函数类型未加说明,则函数的隐含类型为__A___。
A、intB、double。
C、void。
D、char11.表达式strlen(”hello”)的值是___B____。
天津专升本C语言考试单选填空汇总试题

C语言单选填空练习一、单选题1.(1) 由 C 语言编写的代码程序 ( )A.可直接执行B.是一个源程序C. 经过编译即可执行D. 经过编译解释才能执行(2)C 语言源程序的扩展名为 ( )A. .objB. .cC. .exeD. .cpp2. (1)按照 C 语言规定的用户标识符命名规则,不能出现在标识符中的是( )A.大写字母B. 中划线C.数字字符D. 下划线(2)下列选项中,不能用作标识符的是( )A. _1234_B. _1_2C. int_2_D. 2_int_(3)以下选项中合法的用户标识符是 ( )A. longB. _2TestC. 3DmaxD. A.dat(4)以下不能定义为用户标识符的是 ( )A. MainB. _0C. _intD. sizeof(5)下列定义变量的语句错误的是 ( )A. int _int;B. double int_;C. char For;D. float US$;(6) 以下选项中不合法的标识符是()A. printB. FORC. &aD. _00(7) 以下不合法的用户标识符是()A. j2_KEY B. DoubleC. 4dD. _8_(8) 以下 C 语言用户标识符,不合法的是()A. _1B. AaBcC. a_bD. a-b3.(1) 在 C 语言中,整型数据分为 ( )A.二进制、八进制、十进制B.二进制、十进制、十六进制C. 八进制、十进制、十六进制D. 二进制、八进制、十进制、十六进制(2)C 源程序不能表示的进制为 ( )A.八进制B.二进制C. 十六进制D. 十进制4.(1) 在 C 语言中 , 合法的实型常数是 ( )A. 5E2.0B. E-3C. .2E0D. 1.3E(2)在 C 语言中 , 合法的实型常数是 ( )B. 3.14159EC. 5E-3D. E15(3)以下选项中 , 不能作为合法常量的是 ( )A. 1.234e04C. 1.234e+4D. 1.234e0(4)以下不合法的数值常量是 ( )A. 011B. le1D. 0xabcd(5)以下选项中,能用作数据常量的是( )A. o115B. 0118D. 115(6)以下选项中,合法的一组 C 语言数值常量是 ( )A. 028B. 12.C. .177D. 0x8A.5e-3OXa234e1.510,000-0xf 4.5e0Oabc 3.e55.(1) 在 C 语言中 , 非法的字符常量是 ( )A. ‘ \t’B. ‘\17 ’C. "\n"D. ‘ \xaa ’(2) 以下不合法的字符常量是 ( )A. ‘ \018 ’C.‘ ’ ’(3) 以下选项不属于字符常量的是 ( )A. 'C'C. '\xCC'(4) 以下选项中,非法的字符常量是A. ‘ \101 ’C. ‘ \xff ’6. 在 C 语言中,以下关于运算符叙述错误的是A. 在 C 语言中,逗号运算符的优先级最低B. 在 C 语言中,赋值运算符自右向左运算C. 在 C 语言中, +、 - 、 * 、 / 、 %是算术运算符,可用于整型和实型数的运算D. 在 C 语言中, ++、 -- 运算符可以改变变量的值7. 下列运算符中优先级最高的运算符是( )( ) A.<= B.= A.== B./ 8. (1) 以下程序的输出结果是 ( )main(){ int a=3,b=4; printf("%d\n",a<=b); }A. 3C. 1 C. %C. =B. 4 D. 0D. && D. >=(2) 在 C 语言中,表达式 10!=9 的值为 ( )A. 0B. FalseC. 1D. True9. 在 C 语言中,以下非法的表达式是 ( ) A. 0<=x<=100 C. (char)(65+3)B. i=j==0D. x+1=x+110. 在 C 语言中,以下非法的赋值语句是( ) A. j++;C. x=j>0;B. ++(i+1);D. k=i==j;11. (1) 表达式 3.6-5/2+1.2+5%2 的值是 ( )A. 4.3B. 4.8C. 3.3D. 3.8(2) 若有定义语句: int x=12,y=8,z;, 在其后执行语句 z=0.9+x/y; ,则 z 的值为 ( ) A. 1.9 B. 1 C. 2 D. 2.412. (1) 设有语句 :int a=3;则执行了语句 a+=a-=a*a; 变量 a 的值是 ( ) A. 3 B. 0 C. 9 D. -12(2) 设有语句 :int x=10; 则执行了语句 x+=x-=x-x; 变量 x 的值是 ( ) A. 10 B. 20 C. 40 D. 30(3) 设有语句 :int a=0; 则执行语句 a+=(a=8); 变量 a 的值是 ( )A. 0B. 8C. 16D. 2413. 以下程序的输出结果是 ( )( )( )( )( )⑴ main( ){ int i=10,j=1;printf("%d,%d\n",i--, ++j);} A. 9,2 B. 10,2 C. 9,1 D. 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( )B. "C" D. '\072' B. ‘\65 ’ D. ‘ \019 ’ ( )B. ‘\" ’ D. ‘ \xcc{ int x=023; printf("%d\n",--x);}A. 17B. 18C. 23D. 24⑷ main(){ int x=10,y=10;printf("%d %d\n",x--, --y);}A. 10 10B.99C.910D.109⑸ main(){ int i=010, j=10;printf("%d,%d\n",++i , j--);}A. 11,10B. 9,10C. 010,9D. 10,914.以下程序的输出结果是 ( )main(){ int x=100,y=200;printf("%d\n",(x,y)); }A. 200 C. 100 200B. 100 D. 200 10015.以下程序的输出结果是 ( )main(){ int x=10,y=3,z;printf("%d\n",z=(x%y,x/y)); }A. 1B. 0C. 4D. 316.设 x、y、 t 均为 int 型变量,则执行语句 :x=y=3;t=++x||++y;后, y 的值为 ( )A. 1B. 2C. 3D. 417.设 int x=-1;执行表达式 ++x||++x||++x||++x,x的值是( )A. 0B. 1C. 2D. 418.以下程序的输出结果是(1) main () { int k=11; printf("k=%d,k=%o,k=%x\n",k,k,k);}()A. k=11,k=12,k=11B. k=11,k=13,k=13C. k=11,k=013,k=0xbD. k=11,k=13,k=b(2) main () { int k=17; printf("%d,%o,%x\n",k,k,k); }()A. 17,021,0x11B. 17,17,17C. 17,0x11,021D. 17,21,1119.(1) 设变量均已正确定义,若要通过scanf("%d%c%d%c",&a1,&c1,&a2,&c2); 语句为变量a1 和 a2 赋数值 10 和 20,为变量 c1 和 c2 赋字符 X 和 Y。
C语言程序设计1(专升本)期末考试试题及参考答案

C语言程序设计1(专升本)期末考试试题及参考答案C语言程序设计复习题1(专升本)一、选择题1.用C语言编写的代码程序()。
A)可立即执行B)是一个源程序C)经过编译即可执行D)经过编译解释才能执行2.在C语言中,下列属于构造类型的是()A)整型B)字符型C)实型D)数组类型3.C语言中,运算对象必须是整型数的运算符是()。
A)% B)\ C)% 和\ D)**4.下列常数中,合法的C 常量是()。
A)-0. B) '105' C)'AB' D)"35"5.设整型变量a值为9,则下列表达式中使b的值不为4的表达式()。
A)b=a/2 B)b=a%2 C)b=8-(3,a-5) D)b=a>5?4:26.下列符号中,可以作为变量名的是()。
A)+c B)*X C)_DAY D)next day7.有以下程序main(){ char a,b,c,d;scanf("%c,%c,%d,%d",&a, &b, &c, &d);printf("%c,%c,%c,%c\n",a, b, c, d);}若运行时从键盘上输入:6,5,65,66。
则输出结果是()。
A)6,5,A,B B)6,5,65,66 C)6,5,6,5 D)6,5,6,68.以下叙述中错误的是()。
A)C语句必须以分号结束B)复合语句在语法上被看作一条语句C)空语句出现在任何位置都不会影响程序运行D)赋值表达式末尾加分号就构成赋值语句9. 以下叙述中正确的是()。
A)调用printf函数时,必须要有输出项B)使用putchar函数时,必须在之前包含头文件stdio.hC)在C语言中,整数可以以十二进制、八进制或十六进制的形式输出D)调用getchar函数读入字符时,可以从键盘上输入字符所对应的ASCII码10能正确表示逻辑关系“a≥=10或a≤0”的C语言表达式是()。
2022年普通专升本《C语言程序设计Ⅰ》计算机科学与技术专业考试大纲

2022年普通专升本《C语言程序设计Ⅰ》(计算机科学与技术专业)考试大纲本考试的目的是选拔部分高职高专毕业生升入普通本科高校继续进行相关专业本科阶段学习,考查考生是否了解程序设计语言的基本概念,具备解决实际问题的编程思路、掌握简单的程序设计方法,具有进一步学习后续专业课程的能力。
一、考试科目名称:《C语言程序设计Ⅰ》(计算机科学与技术专业)二、考试方式:笔试、闭卷三、考试时间:90分钟四、试卷结构:总分100分1.填空题(共20分)考核C语言的基本概念和语法(共10个空,每个2分,共20分)2.选择题(共20分)考核C语言的基本概念和语法(共10个题,每个2分,共20分)3.计算题(共10分)考核内存中数据的存储原理(共2题,每个5分,共10分)计算题1.二进制转换(二进制和八、十、十六进制互转)计算题2.原码、反码和补码概念4.编程题(共50分)考核对C语言概念和语法的应用能力,即编程能力(共4题)。
编程题1.考核知识点:选择结构,考核几种选择结构的语句表示、if语句的嵌套、条件表达式,10分。
编程题2.考核知识点:循环结构,考核三种循环语句的表示、循环的嵌套,10分。
编程题3.考核知识点:数组,考核一维数组和二维数组及字符数组的使用,15分。
编程题4.考核知识点:函数,考核函数的定义和调用的方法,15分。
五、考试的基本要求考查学生对C语言的主要特点、常用算法及其他相关基础知识的了解,对C语言中顺序程序设计、选择程序设计、循环程序设计、数组、函数、指针等的掌握情况,注重考核学生综合运用C语言编写程序的能力。
六、考试范围(一)C语言的基本概念1.了解C语言的发展及特点2.掌握程序的基本结构与书写格式3.理解头文件、数据说明、函数的开始和结束标志4.熟悉C语言程序开发过程及编程环境(二)数据类型、运算符和表达式1.掌握C语言中三种基本数据类型(int、float、char)2.掌握常量及变量的定义方法3.掌握运算符的种类、运算优先级、结合性4.掌握表达式类型(赋值表达式、算术表达式、逗号表达式)及求值规则5.掌握不同类型数据间的转换与运算6. 掌握数据在内存中的存储原理(二进制转换、补码和原码)(三)顺序结构1. 了解基本语句(表达式语句、空语句、复合语句)2. 掌握字符数据的输入/输出函数3. 掌握标准的输入/输出函数(四)选择结构1. 掌握关系运算符与关系表达式、逻辑运算符与表达式2. 掌握if语句的三种形式及其执行过程、if语句的嵌套、条件运算符3. 掌握switch-case语句:switch-case语句的构成、执行过程、break的使用(五)循环结构1. 掌握三种循环结构(while、do while和for语句)2. 掌握跳转语句:break,continue3. 掌握循环嵌套:循环嵌套的语句形式、执行过程、嵌套的原则(六)数组1.掌握一维、二维数组定义、初始化和引用;了解多维数组的定义2.掌握字符数组的使用,了解字符串常用函数(七)函数1.理解函数的基本概念及分类2.掌握函数的定义方法、函数的类型和返回值3.掌握形式参数与实际参数的区别,参数值的传递4.掌握函数的一般调用,了解函数的嵌套调用、递归调用5.了解变量的作用域和生存期(八)指针1.理解指针的概念,掌握指针的定义方法、指针变量的定义方法和初始化2.理解指针变量的运算和引用3. 理解指针与数组、指针与字符串、指针与字符串、指针与函数七、参考教材谭浩强主编,《C程序设计教程》,清华大学出版社,2018年版。
C语言专升本1单项选择题(3月10日终版)

计算机程序设计基础(C语言)单项选择练习题一、基本概念1. C语言程序是由构成的。
A)一些可执行语言 B)main函数C)函数 D)包含文件中的第一个函数2. 是构成C语言程序的基本单位。
A)函数 B)过程 C)子程序 D)子例程3.C语言可执行程序从开始执行。
A) 程序中第一条可执行语句 B) 程序中第一个函数C) 程序中的main函数 D) 包含文件中的第一个函数4.C语言程序从main()函数开始执行,所以这个函数要写在____。
A) 程序文件的开始 B) 程序文件的最后C) 它所调用的函数的前面 D) 程序文件的任何位置5. 以下说法中正确的是。
A)C语言程序总是从第一个定义的函数开始执行B)在C语言程序中,要调用的函数必须在main( )函数中定义C)C语言程序总是从main( )函数开始执行D)C语言程序中的main( )函数必须放在程序的开始部分6. 下列方法中错误的是。
A)主函数可以分为两个部分:主函数说明部分和主函数体。
B)主函数可以调用任何非主函数的其它函数。
C)任何非主函数可以调用其它任何非主函数。
D)程序可以从任何非主函数开始执行。
7.下列关于C语言的说法错误的是。
A) C程序的工作过程是编辑、编译、连接、运行B) 标识符的命名由英文字母、数字和下划线组成,与字母的大小写无关C) C程序的三种基本结构是顺序、选择、循环D) 一个C程序总是从main函数开始执行的8. 系统默认的C语言源程序扩展名为.C,需经过之后,生成.exe文件,才能运行。A) 编辑、编译 B )编辑、连接 C) 编译、连接 D) 编辑、改错9.下列说法中正确的是。
A)由于C源程序是高级语言程序,因此一定要在TC软件中输入。
B)由于C源程序是由字符流组成的,因此可以作为文本文件在任何文本编辑的软件中输入。
C)由于C程序是高级语言程序,因此输入后即可执行。
D)由于C程序是高级语言程序,因此它是由命令组成的。
《C语言程序设计》专升本考试大纲.

《C语言程序设计》专升本考试大纲一、总要求本课程地位:本课程是计算机专业的核心课程之一。
本课程性质:本课程是计算机专业的专业基础课程本课程了解、熟悉、掌握的主要内容:了解C语言的主要特征、常用算法描述以及其它相关基础知识;掌握C语言中顺序程序设计、选择程序设计、循环程序设计、指针、结构体共用、函数、文件操作等。
二、内容第一章 C语言概论⏹了解C语言的主要特征,掌握C语言程序的基本结构⏹掌握高级语言程序的上机实现过程第二章数据类型、运算符与表达式⏹掌握C语言中的数据类型及其常量的表示方法;⏹理解各类数值型数据间的混合运算规则⏹掌握基本运算符的功能,表达式的概念第三章顺序程序设计⏹掌握用传统流程图进行算法描述;⏹掌握结构化程序设计的三种基本结构⏹掌握getchar()、putchar()、printf()、 scanf()函数的使用⏹掌握顺序结构程序的设计方法第四章选择结构程序设计⏹掌握关系运算符和逻辑运算符的功能及用法⏹掌握基本条件和复合条件语句的使用⏹掌握switch语句的使用⏹掌握选择结构程序的设计方法第五章循环结构程序设计⏹掌握循环概念及循环的构成要素⏹掌握while语句用法⏹掌握do-while语句的用法⏹掌握for语句的用法⏹掌握break、continue语句⏹掌握多重循环的概念及其程序描述方法⏹掌握循环结构程序设计的基本方法第六章数组⏹掌握数组的基本概念。
⏹掌握一维、二维数组的定义和使用。
⏹掌握字符数组的使用,了解基本的字符和字符串处理库函数的功能和使用⏹能利用数组进行程序设计第七章函数⏹掌握函数定义的一般形式⏹理解形参和实参的概念⏹掌握函数的调用方法⏹了解函数的嵌套调用和递归调用。
⏹了解数组作函数参数的使用⏹了解局部变量和全局变量的概念⏹了解变量的存储类别和作用域,库函数的分类和调用⏹了解内部函数和外部函数的概念第八章编译预处理⏹掌握宏定义的概念和使用⏹了解文件包含处理⏹了解条件编译第九章指针⏹掌握指针的基本概念及其使用规则⏹掌握用指针实现对数组和函数的访问方法⏹掌握指针的运算⏹了解多级指针的概念及带参数命令行源程序的编制方法⏹掌握指针与数组、指针与函数的关系第十章结构体和共用体⏹掌握结构体类型的定义方法⏹了解枚举类型的定义和使用⏹掌握结构体类型变量的定义初始化和引用⏹了解指向结构体类型数据的指针的使用⏹掌握结构体数据类型的使用(以链表为例)⏹掌握共同体的概念⏹掌握位运算符的功能及使用方法第十一章文件⏹了解文件的基本概念⏹掌握文件打开和关闭的方法⏹了解文件读写和定位函数的功能三、试卷结构1、试卷内容比例第一章 C语言概论5% 第二章数据类型、运算符与表达式5% 第三章顺序程序设计5% 第四章选择结构程序设计10%第五章循环结构程序设计10% 第六章数组15% 第七章函数15% 第八章编译预处理5% 第九章指针15% 第十章结构体和共用体10% 第十一章文件5% 总计100%2、试卷题型比例选择题20% 程序阅读题12% 程序改错题14% 程序填空题 20% 编程题34% 总计100% 3、试题难易程度比例基础题15% 基本知识题35% 中等难度题40% 综合较难题10% 总计100%四、说明1、教材及主要参考书《C程序设计》,何钦铭主编高等教育出版社《C程序设计》,谭浩强编著,清华大学出版社2、考试时间:150分钟3、总分:1504、适用专业:计算机科学与技术专业。
专升本-计算机应用基础模拟C语言试题-01

一、单项选择题(共25小题,每题2分,共50分)以下每小题列出的四个备选答案中只有一个符合题目要求,请将正确答案填入“单项选择题答题表”对应的格中,未填入答题表,错选或多选均不得分。
1.以下叙述不正确...的是A. 一个C源程序可由一个或多个函数组成B. 一个C源程序必须包含一个main函数C. C程序的基本组成单位是函数D. 在C程序中,注释说明只能位于一条语句的后面2.在C语言中,假设所有变量均为整型,则表达式(a=3,b=7,a++,a+b)的值是A.1O B.11 C.4 D. 133.在C程序中,有语句“int k=7,x=12;”,则下列表达式的值为3的是A. x%=k-k%5B. x%=(k-k%5)C. x%=(k%=5)D. (x%=k)-(k%=5)4.在C语言中,非法..的字符常量是A. '\t'B. '\17'C. "\n"D. '\xaa'5.若有条件表达式(exp)?a++:b--,则以下表达式中能完全等价于表达式(exp)的是A. (exp==0)B. (exp!=0)C. (exp==1)D. (exp!=1)6.在C语言中,有语句“int a,b; scanf("a=%d b=%d",&a,&b);”,下列输入方法能使a的值为2、b的值为3的是A. a=2 b=3B. a=2,b=3C. 2,3D. 2 37.若有定义:float x=1.5;int a=1,b=3,c=2;则正确的switch语句是A. switch(x)B. switch((int)x);{ case 1.0: printf("*\n"); { case 1.0:printf("*\n");case 2.0: printf("**\n"); case 2.0: printf("**\n");} }C. switch(a+b)D. switch(a+b){ case 1: printf("*\n"); { case 1: printf("*\n");case 2+1: printf("**\n"); } case c: printf("**\n");} }8.以下程序段的输出结果是int a[]={1,2,3,4,5,6},*p;p=a;*(p+3)+=2;printf("%d,%d\n",*p,*(p+3));A. 0,5B. 1,5C. 0,6D. 1,69.C语言中函数返回值的类型由( )决定的。
2022年专升本C语言程序设计复习资料及习题(1)

2022年专升本C语言程序设计复习资料及习题(1)单元一程序设计宏观认识单元总结提升本单元中,核心内容有C语言程序框架结构、程序的构成和程序开发过程。
通过本单元的学习,我们应该知道:1.C语言程序最基本的程序框架由两部分构成,分别是:(1) 编译预处理(2) 函数组2.C程序最大的特点就是所有的程序都是用函数来装配的,函数是构成C语言程序的基本单位,函数包括主函数、库函数和自定义函数。
函数的一般结构形式为:函数返回值类型函数名(形式参数) //函数首部{ 说明语句; //函数体可执行语句;}3.标识符是用来标识程序中的某个对象名字的字符序列。
C语言把标识符分为三类,即关键字、预定义标识符、用户自定义标识符。
对于用户自定义标识符的命名C语言规定:(1) 所有的用户标识符必须先定义后使用;(2) 用户标识符由字母(A~Z,a~z)、数字(0~9)、下划线“_”组成,并且首字符不能是数字;(3) 区分大小写;(4)不能用关键字作为用户自定义标识符,通常不使用预定义标识符作为用户自定义标识符。
4.理论上讲,程序开发过程分为四个步骤,分别为:(1) 编辑源程序(2) 编译源程序,生成目标程序(3) 连接目标程序及其相关模块,生成可执行文件(4) 运行可执行文件5.简单描述使用VC++6.0开发应用程序的步骤:如图所示:总之,通过本单元的学习,应该掌握C语言程序框架结构和程序开发过程,还要对C语言程序设计的知识脉络有一定的了解。
单元练习一.选择题1.构成C语言程序的基本单位是( )。
A.框架B.预处理C.函数D.语句2.在程序开发过程中,把文本文件格式源程序转化为二进制格式的目标程序的过程称之为( )。
A.编辑B.编译C.连接D.运行3.关于主函数,下列说法不正确的是( )。
A.一个完整的C语言应用程序有唯一的主函数B.主函数的名称只能是mainC.主函数可以被其他自定义函数调用D.C语言程序的运行从主函数开始,以主函数为核心展开4.关于标识符,下列说法不正确的是( )。
黄冈师范专升本c语言

黄冈师范专升本c语言1.输入3个整数,按从小到大的顺序输出。
方法一:常规方式#include <stdio.h>int main(){int a,b,c,temp;printf("请输入三个整数:");scanf("%d%d%d",&a,&b,&c);if(a>b){temp=a;a=b;b=temp;}if(a>c){temp=a;a=c;c=temp;}if(b>c){temp=b;b=c;c=temp;}printf("%d %d %d",a,b,c);}方法二:条件运算符int main()int a,b,c,max,min;printf("请输入三个整数:");scanf("%d%d%d",&a,&b,&c);max=(a>b?a:b)>c?(a>b?a:b):c;min=(a<b?a:b)<c?(a<b?a:b):c;printf("%d %d %d",min,(a+b+c)-max-min,max); }方法三:指针函数调用int arr[3];int *fun(int *a,int *b,int *c){int t;if(*a>*b){t=*a;*a=*b;*b=t;}if(*a>*c){t=*a;*a=*c;*c=t;}if(*b>*c){t=*b;*b=*c;*c=t;}arr[0]=*a;arr[1]=*b;arr[2]=*c;return arr;int main(){int a,b,c;printf("请输入三个整数:\n"); scanf("%d%d%d",&a,&b,&c);fun(&a,&b,&c);printf("%d %d %d",arr[0],arr[1],arr[2]); }void fun(int *a,int *b,int *c){int t;if(*a>*b){// 3 2 1t=*a;// t=3*a=*b;// a=2*b=t;// b=3}if(*a>*c){t=*a;// t=2*a=*c;// a=1*c=t;// c=2}if(*b>*c){t=*b;// t=3*b=*c;// b=2*c=t;// c=3}printf("%d %d %d",*a,*b,*c);}int main(){int a,b,c;printf("请输入三个整数:\n"); scanf("%d%d%d",&a,&b,&c);fun(&a,&b,&c);}2.请将以下语句改写成switch语句。
专升本计算机综合-C语言篇

专升本计算机综合-C语⾔篇C 语⾔教程参考于视频:;⽤于C⼊门、期末备考。
练习⽹站:。
C语⾔教程推荐:第⼀章⼊门C 语⾔是⼀种通⽤的、⾯向过程式的计算机程序设计语⾔。
1972 年,为了移植与开发 UNIX 操作系统,丹尼斯·⾥奇在贝尔电话实验室设计开发了 C 语⾔。
当前最新的 C 语⾔标准为 C18 ,在它之前的 C 语⾔标准有 C17、C11...C99 等。
编译器安装,初学建议使⽤。
注意:如果是C程序,⽂件后缀保存为.c;如果是C++程序,⽂件后缀保存为.cpp笔者使⽤的VS2017编译器。
安装好之后,编译/执⾏ C 程序:#include <stdio.h>int main(){/* 我的第⼀个C程序 */printf("Hello, World! \n");return 0;}/* #include 包含 <stdio.h> .h head 头⽂件 stdio */// standard i input o out输出// 这个⽂件可能会包含⼀个标准输⼊输出的头⽂件#include <stdio.h>int main(){/* 我的第⼀个C程序注释:不被编译器识别 */// 注释printf("Hello, World! \n");// print 打印 f format 格式化// printf 格式化输出return 0;}C 程序主要包括以下部分:预处理器指令include <stdio.h>函数int main(){}变量语句 & 表达式printf("Hello world! \n");注释// 单⾏注释/* 单⾏注释 *//*多⾏注释多⾏注释多⾏注释*/VS注释与取消注释快捷键这个是VS最常⽤的,⼀定要记住。
注释:先Ctrl+ K,然后Ctrl+ C取消注释:先Ctrl+ K,然后Ctrl + U在VS中使⽤scanf(),会报错。
山西专升本c语言试题及答案

山西专升本c语言试题及答案一、选择题(每题2分,共20分)1. C语言中,用于定义一个结构体类型的关键字是()。
A. structB. unionC. enumD. typedef答案:A2. 下列关于C语言中数组的描述,正确的是()。
A. 数组必须在定义时初始化B. 数组的大小可以是变量C. 数组的下标从0开始D. 数组的下标从1开始答案:C3. 在C语言中,用来定义一个函数的关键字是()。
A. defineB. functionC. intD. void答案:C4. 下列关于C语言中指针的描述,错误的是()。
A. 指针可以存储变量的地址B. 指针可以存储函数的地址C. 指针可以存储数组的元素D. 指针不能存储数组的地址5. C语言中,用于定义一个变量的关键字是()。
A. varB. letC. intD. float答案:C6. 在C语言中,用于表示逻辑“与”操作的运算符是()。
A. &&B. ||C. &D. |答案:A7. 下列关于C语言中循环的描述,错误的是()。
A. for循环可以嵌套使用B. while循环可以嵌套使用C. do-while循环不能嵌套使用D. for循环、while循环和do-while循环都可以嵌套使用答案:C8. C语言中,用于定义一个枚举类型的关键字是()。
A. enumB. typedefC. structD. union答案:A9. 在C语言中,用于表示逻辑“或”操作的运算符是()。
B. ||C. &D. |答案:B10. C语言中,用于定义一个联合体类型的关键字是()。
A. structB. unionC. enumD. typedef答案:B二、填空题(每题2分,共20分)1. C语言中,用于定义一个变量的关键字是____。
答案:int2. 在C语言中,用于定义一个函数的关键字是____。
答案:int3. C语言中,用于定义一个结构体类型的关键字是____。
福建专升本C语言复习指导

第一章 C 语言概述(1)C 程序是由函数构成的。
这使得程序容易实现模块化。
(2) C 语言本身没有输入输出语句。
输入和输出的操作是由库函数scanf 和printf 等函数来完成的。
(3)C 语言不能嵌套定义函数,但可以嵌套调用函数,也可以递归调用。
第三章1. C 的数据类型2.变量命名的规定:C语言规定标识符只能由字母、数字和下划线三种字符组成,且第一个字符必须为字母或下划线。
52+10+1=63数据类型 构造类型 枚举类型 e n u m数组类型结构类型 s t r u c t联合类型 u n i o n单精度实型双精度实型 d o u b l e指针类型 实型(浮点型)基本类型 整型 i n t 字符型 c h a r09年选1考题不能用关键字作为标识符关键字归纳(32个)考题07年1常量类型:const (1个)数据类型名:int ,float,double,char,void (5个)数据类型的修饰符:unsigned,signed,short,long (4个)用户定义的数据类型:struct,union,enum,typedef (4个)变量的存储类型名:auto,static,register,extern (4个)控制结构语句标识:if-else,switch-case-default-break,while-do-for-continue,g oto,retrun(12个)求类型大小运算符:sizeof (1个)其余:volatile (1个)3.运算符、优先级、结合性1)最高级别(1)小括号()(2)下标运算符([])(3)分量运算符(.->)2)单目(1)!,++,--,-,注意++,--的位置(2)强制类型转换运算符((类型)):转化后变量本身类型没有变化,如08选2(3)指针运算符(*和&),注意:[]符号(4)求字节数运算符(sizeof)struct ,union的大小3)双目(1)算术运算符(+ - * / %),/为求商运算,若两个数都为整型,则值取整型,否则取浮点型,%运算数只能为整形。
专升本 C语言课件 C01(01) 概述

一 概述 1.1 C语言 1.2 C程序结构 1.3关键字与标识符 1.4 进制基础 (1)二进制概述 (2)二进制转为十进制 (3)十进制转为二进制 余法
十进制转换为二进制采用除2取
如将34转为二进制 34 17 8 4 2 1 除2 除2 除2 除2 除2 除2 ...................余0 ...................余1 ...................余0 ...................余0 ...................余0 ...................余1
C程序设计
一 概述
一 概述 1.1 C语言 C语言属于高级语言。 用C语言写的程序叫源程序。 它是编译执行的。
一 概述 1.1 C语言 1.2 C程序结构
下面是一个C程序: f1() { printf(“a”); } f2() { printf(“b”); f1(); } main() { f2(); printf(“c”); }
下面是一个C程序: f1() { printf(“a”); } f2() { printf(“b”); f1(); } main() { f2(); printf(“c”); }
一 概述 1.1 C语言 1.2 C程序结构 C语句对大小写敏感 C程序的注释:/* */
一 概述 1.1 C语言 1.2 C程序结构 C语句对大小写敏感 C程序的注释:/* */ 1.3关键字与标识符 关键字(保留字)32个,不能用 于定义常量名、变量名(包括数组 名)、函数名、自定义的数据类型 名(统称为标识符)。
将二进制从右到左每3位组成一 组,每一组分别转为1位八进制。 如11010101 分组:11,010,101 八进制:325 八进制转为二进制:1位变为3 位 如:72 111010
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2008年专升本考试C语言模拟试题(2009-07-04 22:35:50)转载分类:考试标签:c语言一.单项选择题1. 以下定义语句中正确的是(C)A)char a='A'b='B'; B)float a=b=10.0;C)int a=10,*b=&a; D)float *a,b=&a;2. 下列运算符中,优先级最高的是(A) 。
A. ->B. ++C. &&D. =3. 表达式!(x>0&&y>0)等价于(A) 。
A. ! (x>0) || ! (y>0)B. !x>0 || !y>0C. !x>0 && !y>0D. !(x>0) && ! (y>0)4. 有以下程序main(){ int a=666,b=888;printf("%d\n",a,b);}程序运行后的输出结果是(B)A)错误信息B)666 C)888 D)666,8885. 有以下程序main(){ int i;for(i=0;i<3;i++)switch(i){case 0:printf("%d",i);case 2:printf("%d",i);default:printf("%d",i);}}程序运行后的输出结果是(C)A)022111 B)021021 C)000122 D)0126. 若x和y代表整型数,以下表达式中不能正确表示数学关系|x-y|<10的是(C)A)abs(x-y)<10B)x-y>-10&& x-y<10C)!(x-y)<-10||!(y-x)>10D)(x-y)*(x-y)<1007. 数组定义为,int a[11][11]; 则数组a 的元素个数为:(D)A. 12B. 144C. 100D. 1218. 对于以下的变量定义,不正确的表达式是:(D)。
struct node {int j , k ;}x,*p=&x;A. p->k=2;B. (*p).k=2;C. x . k=2D. x->k=29. 不正确的赋值或赋初值的方式是(B)。
A. char str[ ]=”string”;B. char str[10]; str=”string”;C. char *p=”string”;D. char *p; p=”string”;10. 设程序中不再定义新的变量,写出在函数main中可以使用的所有变量为:(B)#include <stdio.h>int z;int p(int x){ static int y;return (x+y);}void main( ){ int a,b;printf(“%dn”, p(a));………}A. a,bB. a,b,zC. a,b,y,zD. a,b,x,y,z11.有以下程序main(){ int i=0,x=0;for (;;){if(i==3||i==5) continue;if (i==6) break;i++;s+=i;};printf("%d\n",s);}程序运行后的输出结果是(D)A)10 B)13 C)21 D)程序进入死循环12.有以下程序main(){ char a,b,c,d;scanf("%c,%c,%d,%d",&a,&b,&c,&d);printf("c,%c,%c,%c\n",a,b,c,d);}若运行时从键盘上输入:6,5,65,66<回车>。
则输出结果是(A)A)6,5,A,BB)6,5,65,66C)6,5,6,5D)6,5,6,613.s12和s2已正确定义并分别指向两个字符串。
若要求:当s1所指串大于s2所指串时,执行语句S;则以下选项中正确的是(D)A)if(s1>s2)S;B)if(strcmp(s1,s2))S;C)if(strcmp(s2,s1)>0)S;D)if(strcmp(s1,s2)>0)S;14.有以下定义和语句int a[3][2]={1,2,3,4,5,6,},*p[3];p[0]=a[1];则*p[0]+1)所代表的数组元素是(C)A)a[0][1] B)a[1][0]C)a[1][1] D)a[1][2]15.程序中对fun函数有如下说明void *fun();此说明的含义是:(C)A)fun了数无返回值B)fun函数的返回值可以是任意的数据类型C)fun函数的返回值是无值型的指针类型D)指针fun指向一个函数,该函数无返回值16.有以下程序void fun(int *a,int i,int j){ int t;if(i<J){ t=a;a=a[j];a[j]=t;i++; j--;fun(a,i,j);}}main(){ int x[]={2,6,18},i;fun(x,0,3);for(i=0;i<4;i++) printf("%2d",x);printf("\n");}程序运行后的输出结果是(C)A)1 2 6 8 B) 8 6 2 1C) 8 1 6 2 D)8 6 1 217.有以下说明和定义语句struct student{ int age; char num[8];};struct student stu[3]={{20,"200401"},{21,"200402"},{10\9,"200403"}};struct student *p=stu;以下选项中引用结构体变量成员的表达式错误的是(D)A) (p++)->num B)p->numC)(*p).num D)stu[3].age18.已定义ch为字符型变量,以下赋值语句中错误的是(A)A)ch='\'; B)ch=62+3;C)ch=NULL; D)ch='\xaa';19.以下选项中不能正确把cl定义成结构体变量的是(B)A)typedef structB)struct color cl{ int red; { int red;int green; int green;int blue; int blue;} COLOR; };COLOR cl;C)struct colorD)struct{ int red; { int red;int green; int green;int blue; int blue;} cl; } cl;20.有以下程序fun(int a, int b){ if(a>b) return(a);else return(b);}main(){ int x=3, y=8, z=6, r;r=fun(fun(x,y), 2*z);printf("%d\n", r);}程序运行后的输出结果是(D)A)3 B)6 C)8 D)1221.有以下程序段main(){ int a=5,*b,**c;c=&b; b=&a;……}程序在执行了c=&b;b=&a;语句后,表达式:**c的值是(C)A)变量a的地址B)变量b中的值C)变量a中的值D)变量b的地址22. 设有int x=11; 则表达式(x++ * 1/3) 的值是(A)A) 3 B) 4 C) 11 D) 1223. 下列程序的输出结果是(C)A) 3 B) 3.2 C) 0 D) 3.07main(){ double d=3.2; int x,y;x=1.2; y=(x+3.8)/5.0;printf("%d \n", d*y);}24. 下列变量定义中合法的是(A)A) short _a=1-.le-1;B) double b=1+5e2.5;C) long do=0xfdaL;D) float 2_and=1-e-3;25. 以下循环体的执行次数是(C)A) 3 B) 2 C) 1 D) 0main(){ int i,j;for(i=0,j=1; i<=j+1; i+=2, j--)printf("%d \n",i);}26. 以下叙述正确的是(D)A) do-while语句构成的循环不能用其它语句构成的循环来代替。
B) do-while语句构成的循环只能用break语句退出。
C) 用do-while语句构成的循环,在while后的表达式为非零时结束循环。
D) 用do-while语句构成的循环,在while后的表达式为零时结束循环。
27. 下列程序执行后的输出结果是(A)A) G B) H C) I D) Jmain(){ int x='f'; printf("%c \n",'A'+(x-'a'+1)); }28. 下列程序执行后的输出结果是(A)A) 6 B) 7 C) 8 D) 9void func(int *a,int b[]){ b[0]=*a+6; }main(){ int a,b[5];a=0; b[0]=3;func(&a,b); printf("%d \n,b[0]);}29. 下列程序的运行结果是(B)A) a=%2,b=%5 B) a=2,b=5C) a=d, b=d D) a=%d,b=%d#includemain(){ int a=2,c=5;printf("a=%d,b=%d\n",a,c); }30. 设有数组定义: char array [ ]="China"; 则数组array所占的空间为(C)A) 4个字节B) 5个字节C) 6个字节 D) 7个字节31. 下列程序的输出结果是(B)A) 5 B) 6 C) 7 D) 8struct abc{ int a, b, c; };main(){ struct abc s[2]={{1,2,3},{4,5,6}}; int t;t=s[0],a+s[1],b;printf("%d \n",t);}32. 若有以下调用语句,则不正确的fun函数的首部是(C)A) void fun(int m, int x[])B) void fun(int s, int h[41])C) void fun(int p, int *s)D) void fun(int n, int a)main(){ …int a[50],n;…fun(n, &a[9]);…}33. 设已有定义: char *st="how are you"; 下列程序段中正确的是(A)A) char a[11], *p; strcpy(p=a+1,&st[4]);B) char a[11]; strcpy(++a, st);C) char a[11]; strcpy(a, st);D) char a[], *p; strcpy(p=&a[1],st+2);34. 下列程序执行后的输出结果是(A)A) you&ne B) you C) me D) errmai(){ char arr[2][4];strcpy(arr,"you"); strcpy(arr[1],"me");arr[0][3]='&';printf("%s \n",arr);}35. 下列程序执行后的输出结果是(B)A) 6 B) 8 C) 10 D) 12#define MA(x) x*(x-1)main(){ int a=1,b=2; printf("%d \n",MA(1+a+b));}36. 变量a所占内存字节数是(C)A) 4 B) 5 C) 6 D) 8union U{ char st[4];int i;long l;};struct A{ int c;union U u;}a;二、填空题1. 表达式1<0<5的值是 1 。