c语言复习资料(1)

合集下载

C语言程序设计期末复习题及答案(1)

C语言程序设计期末复习题及答案(1)
4. 设int i = 5;则语句while (i > = 1) i - -;执行后i的值为_0______。
5. n为整型,表达式n=1,n+2,n*5 的值是__5_______。
6. 已知:float x=8.53; 整形变量i=(int)x;则i=__8_____。
7. 已知:int x=5;语句y=x++*x++;执行完成后x=___7__,y=_25____。
int i, k, num;
gets(str1); gets(str2);
i=strlen(str1);
k=strlen(str2);
num=______? ____: ____;
printf("%d\n", num);
}
2. 下面程序是计算字符串中实际字符的个数,即实现和字符串处理函数strlen相同的功能,补充空白处的程序。
for (j=0;j<n-1-i;j++)
if (a[j]>a[j+1])
{c=a[j];a[j]=a[j+1];a[j+1]=c;}
}
2. 本题20分.总体程序完整性3分,结构体定义正确3分,结构体数组定义以及初始化正确6分,指针定义正确3分,输出判断正确3分,输出姓名地址2分。以下代码为参考代码,答案不唯一。
(B)在指针操作中,运算符“&”是取指针指向的对象的值。
(C)在指针操作中,运算符“*”的操作对象是一个地址。
(D)语句int *ip;定义了指针变量只能存放整型变量的地址。
14.判断字符串str1是否大于字符串str2,应当使用___d________。
(A)if (str1>str2)

C语言复习提纲

C语言复习提纲

C语言复习提纲一、基本概念及语法1.C语言的起源和发展历程2.C语言的优点和特点3.C语言的数据类型和变量4.C语言的运算符和表达式5.C语言的程序结构和语句流6.C语言的函数和库函数二、数据类型和变量1.基本数据类型:整型、浮点型、字符型等2.变量的声明和赋值3.变量的作用域和存储类别4.常量的定义和使用5.数据类型转换和类型限定符三、控制流程和循环结构1. 分支结构:if语句、switch语句2. 循环结构:for循环、while循环、do-while循环3. 循环控制语句:break语句、continue语句四、数组和指针2.一维数组和多维数组3.指针的基本概念和运算4.指针和数组的关系5.指针与函数的关系五、函数和递归1.函数的定义和调用2.函数的参数和返回值3.函数的递归调用4.函数的存储类别与作用域5.常见库函数的使用六、字符串和字符处理1.字符串的定义和使用2.字符串的输入输出3.字符串的操作:拼接、复制、比较、查找等4.字符串的处理函数七、结构体和共用体1.结构体的定义和使用2.结构体数组和指针4.结构体与指针的关系八、文件操作1.文件的打开和关闭2.文件的读写操作3.文件的复制、删除和重命名4.文件的定位和截断九、动态内存管理1.动态内存分配和释放2.动态分配数组和结构体3.内存泄露和内存溢出的处理十、预处理器1.预处理器的作用和功能2.宏定义的使用和注意事项3.条件编译和头文件的使用以上为C语言复习提纲,内容涉及C语言的基本概念、语法、数据类型和变量、控制流程和循环结构、数组和指针、函数和递归、字符串和字符处理、结构体和共用体、文件操作、动态内存管理以及预处理器等方面的知识点,帮助学生系统地复习C语言的基础知识。

十分感谢您的提问,希望以上信息对您有所帮助。

C语言复习资料,有答案

C语言复习资料,有答案

一、填空题1.C语言所提供的基本数据类型包括:单精度、双精度、整型、字符型。

2.若定义int m=8,y=3;则执行y*=y+=m-=y;后y的值是64。

3.Ox10相当于八进制数20 。

4.%m.n表示数据输出的总宽度占M列,其中小数部分占N 列。

5.C语言提供的3种逻辑运算符是非、或者、与。

6.当m=3,n=4,a=5,b=1,c=2时,执行完d=(m=a!=b)&&(n=b>c)后,n的值为1,m 的值为1,d的值为0。

7. 在数组定义格式中,放括号中的元素个数是量。

8. 判断字符串a和b是否相等,应当使用strcmp函数。

9. 在C语言中不能被调用的函数是函数。

10、目前,有两种重要的程序设计方法,分别是面向对象和面向过程。

12、面向对象程序设计的三个特征:多态、继承和封装。

13、在一个C源程序中,注释部分两侧的分界符为___ * */ __ 。

14、do----while 语句至少执行____1____次循环体。

15、在C语言中,一个double型数据在内存中所占的字节数为__8___。

16、若s是unsigned int型变量且已赋初值,则表达式s%2+(s+1)%2的值是__1_______17、表达式3>4的值是___0________18、若x和n均是int型变量,且x和n的初值均为5,则计算表达式x+=n++后,x的值为11,n的值为6。

19、若x=0,y=0,z=0,则计算表达式x++||y++&&z++后,x的值为1,y的值为1,z的值为1。

二、单项选择题1、下列各高级语言中,(B)是面向对象的程序语言。

A)Basic B)C C)C++ D)Pascal2、一个C程序的执行是从( A )。

A) 本程序的main函数开始,到main函数结束B) 本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C) 本程序的main函数开始,到本程序文件的最后一个函数结束D) 本程序文件的第一个函数开始,到本程序main函数结束3、C语言规定,不同类型的数据占用存储空间的长度是不同的。

C语言)二级考复习资料(1)

C语言)二级考复习资料(1)

1. 下述循环的循环次数是()int k=2;while(k=0)printf("%d",k);k--;printf("\n");A、无限次B、0次C、1次D、2次2. 在下列选项中,没有构成死循环的程序段是()A、int i=100;B、for(;;)while(1){i=i%100+1;if(i>100)break;}C、int k=1000;D、int s=36;do {++k;} while(k>=10000);while(s);--s;3. 若有以下定义和语句,且0<=i<10,则对数组元素的错误引用是()int a[]={0,1,2,3,4,5,6,7,8,9},*p,i;p=a;A、*(a+i)B、a[p-a]C、p+iD、*(&a[i])4. 下面能正确将字符串"Boy"进行完整赋值操作的语句是()A、char s[3]={'B','o','y'};B、char s[ ]="Boy";C、char s[3]={"Boy"};D、char s[3];s[0]='B';s[1]='o';s[2]='y';5. 以下程序段的输出结果是()char arr[ ]="ABCD";char*ptr;for(ptr=arr;ptr<arr+4;ptr++)printf("%s\n",ptr);A、ABCDB、AC、DD、ABCDBCDCDD6. C语言的auto型变量是()A、存储在动态存储区中。

B、存储在静态存储区中。

C、存储在计算机CPU的寄存器中。

D、存储在外存储器中。

7. 测试文件是否结束函数的函数名是()A、feofB、EOFC、eofD、FEOF8. 下面程序段的输出结果是()int a[][4]={1,2,3,4,5,6,7,8,9,10,11,12},(*p)[4];p=a;printf(“%d\n”,*(*(p)+2));A、1B、5C、3D、79. C语言规定:在一个源程序中,main函数的位置是()A、必须在最开始B、必须在系统调用的函数的后面C、可以任意D、必须在最后10. 一个C程序的执行是从()A、本程序的main函数开始,到main函数结束B、本程序的第一个函数开始,到本程序文件的最后一个函数结束C、本程序的main函数开始,到本程序文件的最后一个函数结束D、本程序文件的第一个函数开始,到本程序main函数结束11. 下面的四个选项中,均是不合法的用户标识符的选项是()A、AB、floatC、b-aD、_123P_0 la0 goto tempdo _A int INT12. 下面四个选项中,均是合法转义字符的选项是()A、’\’B、’\’C、’\018’D、’\\0’‘\\’‘\017’‘\f’‘\101’‘\n’‘\”’‘xab’‘x1f’13. sizeof(float)是()A、一个双精度型的表达式B、一个整型表达式C、一种函数调用D、一个不合法的表达式16. 若二维数组a有m列,则在a[i][j]前的元素个数为()A、j*m+iB、i*m+jC、i*m+j-1D、i*m+j+117. 对两个数组a和b进行如下初始化char a[ ]=”ABCDEF”;char b[ ]={‘A’,’B’,’C’,’D’,’E’,’F’};则以下叙述正确的是()A、a与b 数组完全相同B、a 与b 长度相同C、a 和b中都存放字符串D、a数组比b 数组长度长18. C语言中有关全局变量的说法,正确的是()A、在使用到它的所有文件中均需定义B、在函数体外定义一次C、在main函数中定义E、在main函数外定义19. 若有数组名作为函数调用时的实参,则传递给该函数形参的是()A、数组的首地址B、数组的第一个元素的值C、数组中全部元素的值D、数组元素的个数20. 下面程序段的输出结果是()int a[][3]={1,2,3,4,5,6,7,8,9,10,11,12},(*p)[3];p=a;printf(“%d\n”,*(*(p+1)+2));A、3B、4C、6D、721. 不属于C语言程序基本结构的是( )A)顺序结构B)选择结构C)函数结构D)循环结构22. 若有定义及赋值:int a[6][6],*p;p=*a;则下列各式中能表示元素a[1][0]行地址的表达式是。

C语言最重要的知识点复习资料

C语言最重要的知识点复习资料

C语言最重要的知识点复习资料1)程序结构是三种:顺序结构,循环结构(三个循环结构),选择结构(if和switch)2)读程序都要从main()入口,然后从最上面顺序往下读(碰到循环做循环,碰到选择做选择)。

3)计算机的数据在电脑中保存是以二进制的形式.数据存放的位置就是他的地址.4)bit是位是指为0或者1。

byte是指字节,一个字节=八个位.5)一定必须忘记二进制如何划为十进制及十进制如何划为二进制。

必须忘记八进制,十六进制的则表示形式。

概念常考至的:1、编译预处理不是c语言的一部分,不占运行时间,不要加分号。

c语言编译的程序称为源程序,它以ascii数值存放在文本文件中。

2、每个c语言程序中main函数是有且只有一个。

3、在函数中不可以再定义函数。

4、算法的就是一定必须存有输入的,他可以没输出。

5、break可以用作循环结构和switch语句。

6、逗号运算符的级别最高。

第一章1)合法的用户标识符考查:合法的建议就是由字母,数字,下划线共同组成。

存有其它元素就弄错了。

并且第一个必须为字母或则就是下划线。

第一个为数字就弄错了。

关键字不可以作为用户标识符号。

maindefinescanfprintf都不是关键字。

迷惑你的地方if是可以做为用户标识符。

因为if中的第一个字母大写了,所以不是关键字。

2)实型数据的合法形式:2.333e-1就是合法的,且数据就是2.333×10-1。

考试口诀:e前e后必有数,e后必为整数。

.3)字符数据的合法形式::'1'是字符占一个字节,\是字符串占两个字节(含有一个结束符号)。

'0'的ascii数值则表示为48,'a'的ascii数值就是97,'a'的ascii数值就是65。

通常考试则表示单个字符错误的形式:'65'\字符就是可以展开算术运算的,忘记:'0'-0=48大写字母和小写字母转换的方法:'a'+32='a'相互之间一般是相差32。

全国计算机二级考试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语言复习提纲:第一章 C语言程序设计概述一、Visual C++6.0开发环境1、了解Visual C++6.0的安装过程;2、了解Visual C++6.0的工作界面,菜单和工具栏的使用;▲二、掌握C语言程序运行的过程1、编辑:是指把按照C语法规则编写的程序代码通过编辑器(Visual C++ 6.0,Turbo C 3.0)输入计算机,并存盘。

在存盘时,C源文件的扩展名为 .c2、编译:将C语言源程序编译成目标程序,即对源程序进行编译,并将源程序转换为扩展名为.obj的二进制目标代码(即把已经编辑好的源程序翻译成二进制目标代码的过程)。

3、连接:将用户程序生成的目标代码文件(.obj)和系统提供的库文件(.lib)中的某些代码连接在一起,生成一个可执行文件(.exe)。

4、执行:执行生成的可执行代码,并输出结果。

5、调试:是将编制的程序投入实际运行前,用手工或编译程序等方法进行测试,修正语法错误和逻辑错误的过程。

▲三、结构化程序设计的基本概念1、概念以模块化设计为中心,将待开发的软件系统划分为若干个相互独立的模块,将原来较为复杂的问题化简为一系列简单模块的设计,任何模块都可以使用一些基本的结构来实现,任何复杂的程序,都可以使用这些基本结构按一定的顺序组合起来,这些基本结构的特点都是只有一个入口、一个出口,这样的程序设计方法称为结构化程序设计。

2、基本思想结构化程序设计的基本思想是采用"自顶向下,逐步细化、模块化设计、结构化编码"的程序设计方法和"单入口单出口"的控制结构。

3、三种基本结构⑴顺序结构⑵选择结构⑶循环结构4、三种基本结构的特点⑴只有一个入口⑵只有一个出口⑶每一个基本结构中的每一部分都有机会执行到⑷结构内不存在“死循环”5、设计原则⑴自顶向下⑶逐步细化⑶模块化设计⑷结构化编码▲四、C程序的基本组成:C程序是由若干个函数构成的,至少有一个主函数main(),main()的位置可以任意,其他各函数在程序中的前后位置也是可以任意的。

C语言复习题库(1)

C语言复习题库(1)

一、填空题(每空 1 分,共20 分)1.程序的三种基本结构为(顺序)、(选择)和(循环)。

2.在C 语言中,用(;)表示语句的结束。

3.语句printf("%%d%d",123);将输出:(“%d123 )。

4.逻辑运算的结果值是(0 )或( 1 )。

5.数组 int a[3][4];共定义了(12 )个数组元素。

6.在 C 语言中,正确的标识符是由(数字、字母、下划线)组成的,且由(字母和下划线)开头的。

7.一个算法应具有的特点有:(有穷性)、(确定性)、有零个或多个输入、有一个或多个输出、有效性。

8.在程序执行过程中,其值不发生改变的量称为(常量),其值可变的量称为(变量)。

9.若有定义:int m=5,y=2;则执行表达式y+=y-=m*=y 后的y 值是(-16 )。

10.在三种正规循环中,当条件表达式的值为(0 )时,就结束循环。

11.C 语言中函数的参数分为(形式参数)和(实际参数)。

12.当函数的数据类型省略时,默认的数据类型为(int 型或者整数型)型。

13.按变量地址访问变量的方法叫(直接访问),通过存放变量地址的变量去访问变量的方法叫(间接访问)。

14.若有定义:int [3][4]={{1,2},{0},{4,6,8,10}};则初始化后,a[1][2]得到的初值是(0 ),a[2][1]得到的初值是( 6 )。

15.文件包含的一般形式为(#include <文件名> )。

16.宏定义中宏名一般用大写字母表示,容易做到(一改全改)。

17.结构体是一种(构造)数据类型用途是把(不同类型)的数据组合成一个整体。

18.位运算的运算对象只能是(整型)或(字符型)数据,而不可以是其他类型的数据。

19.(文件)是存储在外部介质上数据的集合,是操作系统数据管理的单位。

20.设有“int x=2,y”说明,则逗号表达式“y=x+5,x+y”的值是(9 )。

c语言大学实用教程c语言复习资料.doc

c语言大学实用教程c语言复习资料.doc

第一章数据类型与表达式一.知识点1. c语言的特点:①语言简洁、紧凑,使用方便、灵活;②运算符丰富;③数据结构丰富;④具有结构化控制语句;⑤语法限制不太严格,程序设计自由度大;⑥可以进行位操作,能实现汇编语言的大部分功能,能直接对硬件进行操作;⑦生成的目标代码质量高,程序执行效率高;⑧程序的移植性好。

2. C程序的组成:⑴C程序是甫函数构成的;⑵一个函数包括函数的首部(即函数的第一行)和函数体(即花括号部分);⑶函数体一般包括声明部分和执行部分;⑷一个C程序总是从main函数开始执行,从main函数结束;⑸C程序书写格式自市,一行内可以写几个语句,一个语句可以分写在多行上;⑹每个语句和数据定义的最后必须有一个分号;⑺C语言本身没有输入输出语句,是通过函数实现输入输出的;⑻可以用广……*/对C程序的任何部分作注释。

3. C语言程序的运行:源程序文件的扩展名为・c,目标程序文件的扩展名为.obj,可执行程序文件的扩展名为.exe。

4. C的数据类型:基本、构造、指针和空类型,char、int、short、long、unsigned> float> double> enum> struct> union> typedefo5. 常量与变量的概念,注意符号常量的定义与使用;6. 整型、实型、字符型常量的表示,注意整型常量的十进制、八进制、十六进制的书写。

7. 变量的定义,C的标识符包括关键字、预定义标识符、用户定义标识符;用户定义标识符的可用字符为字母、数字、下划线,第一个字符为字母或下划线。

8. 常见数据类型的取值范围,int为・32768〜+32767, unsigned int 为0~65535。

9. 转义字符:\n、\t、\b、\r、\f、\\、\\ \\ \ddd、\xhh10. 不同数值型数据的混合运算,低级类型转换为高级类型运算11・C的运算符:注意结合方向和运算的优先级12. 算术运算符:+、・、*、/、%、++、一,注意自加、减运算符分前缀和后缀两种方式。

c语言期末复习试卷

c语言期末复习试卷

复习题(一)1。

用高级语言编写的源程序必须通过___________程序翻译成二进制程序才能执行,这个二进制程序称为____________程序。

【答案】编译目标2。

下列符号串中,属于C语言合法标识符的是()①else ②a-2 ③_00 ④00【答案】③3.下列说法中,正确的是()①主函数名是由程序设计人员按照“标识符”的规则选取的②分号和回车符号都可以作为一个语句的结束符号③在程序清单的任何地方都可以插入一个或多个空格符号④程序的执行,总是从源程序清单的第1行开始【答案】③4.-12345E-3代表的十进制实数是________________________.【答案】—12.3455.设字符型变量ch中存放字符“A”,则执行“ch+++2”后,ch中的字符是________。

【答案】B6.设字符型变量ch1中存放的字符是“A",字符型变量ch2中存放的字符是“B”,则执行“!(ch1=’B')&&(ch2='C')”的运算后,变量ch2中的字符是_____________.【答案】B6-1.设整型变量m,n,a,b,c,d均为1,执行“(m=a〉b)&&(n=a>b)”后m,n 的值是()①0,0 ②0,l ③1,0 ④1 ,l【答案】②。

7.设整型变量x1和x2的值均为10,则表达式“x1/=x2-4”的值是_______________. 【答案】l8.在C语言中,如果某个关系表达式成立(真),则该关系表达式的值是____;如果某个逻辑表达式为假,则该逻辑表达式的值是_________.【答案】1 09.设有整型变量x,如果表达式“!x”值为0,则x的值为_________;如果表达式“!x"值为1,则x的值为___________。

【答案】非010.下列表达式中,不属于逗号表达式的是()①a=b,c ②a,b=c ③a=(b,c) ④a,(b=c)【答案】③11.在三种选择结构中,能用2个条件,控制从3个操作中选择一个操作执行的选择结构是______选择结构【答案】多分支12.在三种循环结构中,先执行循环操作内容(即循环体),后判断控制循环条件的循环结构是______循环结构。

c语言复习题一

c语言复习题一

c语⾔复习题⼀复习题⼀⼀、选择题1.以下程序的输出结果是( B )。

#include “stdio.h ”main( ){ printf(“%d\n ”,‘A ’);}A.不确定值B.65C. 97D.A2. 以下程序的输出结果是( C )main( ){ char c1=‘7’,c2=‘0’;printf(“%c,%c,%d\n ”,c1,c2,c1-c2);}A.输出出错信息B.7,0,5C.7,0,7D.6,0,73. 以下变量说明正确的是( C )A.Int a,b;B.int x,float y;C. int a,x;D.int a,x4.若int a, b; scanf("%d%d", &a, &b); 不可以⽤( A )作为输⼊的分隔符。

A.,B. 空格C. 回车D. TAB 键5.设x=2.5, a=7, y=4.7 则表达式x+a%3*(int)(x+y)%2/4的值为( B )A. 0B. 2.5C.不确定D.36. 以下变量x.、y 、z 均为double 类型且已正确赋值,不能正确表⽰数学式⼦zy *x 的C 语⾔表达式是( A ) A. x/y*z B. x*(1/(y*z)) C. x/y*1/z D. x/y/z7. 下⾯(A )是正确的变量名。

A. xyB. 2xyC. x+yD.for8. 设有变量说明:int x=5,y=3;那么表达式y=x>y?(x=1):(y=-1);运算后,x 和y 的值分别是( B )相当与if 语句,问号前⾯成⽴是则执⾏冒号前不成⽴是执⾏冒号后A. 1和-1B. 1和1C. 5和1D. 1和39.以下合法的数组定义是( D )A.int a[]=“string ”;B.int a[5]={0,1,2,3,4,5};C.char a=“string”;D.int a[]={0,1,2,3,4,5};10.设有如下定义char s1[30]=“12345”;printf(“%d\n”,strlen(s1)记数函数直到出现\0是停⽌记数;则输出结果是( B )A.4B. 5C. 9D. 1011.以下程序段中内循环体总的执⾏次数是( A )for(i=5;i>=1;i--)for(j=0;j<4;j++){…}A.20B.24C.25D.3012.语句b=3+a--;表达式的功能,可以由下⾯的(C)的两个语句来实现。

C语言复习资料 (1)

C语言复习资料 (1)

C语言复习资料一、C语言基础知识1. C语言的主要特点有哪些?(多选) ACDEA.简洁、紧凑,使用方便、灵活,易于学习和应用。

B.C语言是面向结构化程序设计的语言。

C.C语言允许直接对位、字节和地址进行操作。

D.数据类型丰富。

E.C语言生成的目标代码质量高。

2. C语言程序由什么组成?(单选) CA. 子程序B. 主程序和子程序C. 函数D. 过程3. 源程序要正确地运行,必须要有什么函数?(单选) CA. printf函数B. 自定义的函数C. main函数D. 不需要函数4. 指出下面合法的标识符:(多选) C D E GA. 3abB. intC. ABCD. a_3E. sum.aF. #abcG. _stu2H. abc f5. 指出下面哪些是合法的用户定义的标识符?(多选) D GA. P-SB. putcharC. doubleD. _908E. *parF. sheep!G. windH. x y6. C语言的基本类型哪些:(多选)A BE GA. 整型B. 枚举型C. 数组型D. 指针型E. 字符型F. 构造型G. 实形H. 空类型7. 这段程序中的常量有:(多选) A C D EF#define PI 3.14void main(){int sum;sum = 10 + 15;printf("sum=%d\n",sum);printf("result is 25\n");}这段程序中常量有:A. 10B. sumC. 15D. 25E. mainF. PI8. C语言中整形常量按进制划分,有以下几种:(多选)A B CA. 十六进制常量B. 十进制常量C. 八进制常量D. 二进制常量9. 75的十六进制写法为_0x4B__,八进制写法为_0113__。

0x75的八进制写法为_0165__,十进制写法为_117__。

075的十进制写法为__61_,十六进制写法为__0X3D_。

C语言复习题 (1)

C语言复习题 (1)

A. a/b/c*e*3
B. 3*a*e/b/c
C. 3*a*e/b*c
D. a*e/c/b*3
10. 在 C 语言中,要求运算数必须是整型的运算符是( )。
A. /
B. ++
C. !=
D. %
11. 若 x、i、j 和 k 都是 int 型变量,则执行下面表达式后 x 的值为( )。
x=(i=4,j=16,k=32)
scanf(“%d%d”,&a1,&a2);
scanf(“%c%c”,&c1,&c2);
A. 1020AB<回车>
B. 10 20<回车>AB<回车>
C. 10 20 AB<回车>
D. 10 20AB<回车>
21. 有输入语句:scanf(“%d%d%d”,&a,&b,&c);为使变量 a 的值为 1,b 为 3,
44. 以下程序的输出结果是( )。
main()
{
int x=2,y=-1,z=2;
if(x<y)
if(y<0) z=0;
else z+=1;
printf(“%d\n”,z);
}
A. 3
B. 2
C. 1
D. 0
45. 以下不正确的语句为( )。
A. if(x=y)&&(x!=0) x+=y;
B. if(x!=y) scanf(“%d”,&x); else scanf(“%d”,&y);
考试题型: 单项选择:1*40=40 分 填空题: 2*5=10 分 读程序:2*10=20 分 程序填空:2*10=20 分 编写程序:10 分(4+6)

c语言理论考试要点 (1)

c语言理论考试要点 (1)

C语言理论考试要点学习C语言后面的知识,不要忘了回头弄清遗留下的问题和加深理解前面的知识,这是我们学生最不易做到的,然而却又是最重要的。

比如:在C语言中最典型的是关于结构化程序设计构思,不管是那种教材,一开始就强调这种方法,这时也许你不能充分体会,但是学到函数时,再回头来仔细体会,温故知新,理解它就没有那么难了。

学习C语言就是要经过几个反复,才能前后贯穿,积累应该掌握的C知识。

C语言学得好的学生都是知难而上,不轻易放弃的强者。

等级考试分优秀、合格、不合格三档。

江苏省计算机二级考试成绩分为:大学计算机信息基础20分C语言理论部分40分C语言上机考试40分证书分:合格、优秀两种,没有期限通过准考证在网上查询成绩,大约考完后50天可查。

期末复习以理论为主,上机为次;暑假开始以上机为主,理论为次。

二级C语言等级考试没有通过的98%以上是因为上机未达线。

目前我校C语言等级考试通过率为40%左右。

仔细研究大纲和样题,大纲提到的知识点和库函数要熟练掌握。

常用算法默写后对照,再默写再对照。

不要不肯动笔,多做归纳总结,包括知识点的归纳和算法的归纳。

大学计算机信息基础占20分,要作适当复习。

C语言理论部分占40分,上机占40分。

C语言理论题大多数是数组以后的内容,但要熟练运用前面表达式、数据类型、三种基本结构等知识。

选择题需要记忆的知识包括计算机基础知识、基本概念。

这些内容看似不起眼,但如果不适当加以记忆,考试时因此失分十分可惜。

我们可以在理解的基础上归纳整理,适当记忆。

近年大学计算机信息基础考得比较实用、如:优盘、数量级、存取速度、通讯技术、网络知识。

每年必考的知识点如下:➢循环嵌套➢字符数组的输入输出、插入或删除、或排序、或重新组合➢函数参数的传递,传值和传址的不同、函数的定义和返回值➢变量的作用域(选择题,全局变量和局部变量的区别,如:05春25题)➢变量的存储类型(填空题,如:04春填空第9题,每次调用函数,静态变量y保留上次调用时的值;C是全局变量,&b对应指针sum传址,b和*sum值一致;a单向传值给x,x的值不影响a)➢指针传址、指针数组、指针处理二维数组、指针处理字符串数组和字符串、指针处理结构体和链表(填空题)、指针与结构体结合(填空题)笔试只有选择题和填空题两种题型。

c语言期末复习资料1

c语言期末复习资料1

1.C 语言程序中可以对程序进行注释,注释部分必须用符号_ __括起来。

A、…{… 和‟}‟B、…[…和‟]‟C、“/*”和”*/”D、“*/”和”/*”2.下列运算符中,优先级最低的是___ __。

A、*B、!=C、+D、=3.若变量已正确定义,表达式(j=3, j++) 的值是_ ____ 。

A、3B、4C、5D、04.已知字符…a‟ 的ASCII码为97 ,执行下列语句的输出是__ ___。

printf ("%d, %c", ‟b‟, ‟b‟+1 ) ;A、98, bB、语句不合法C、98, 99D、98, c5._ ____是合法的用户自定义标识符。

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

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

A、‟\n‟B、‟1‟C、"a"D、‟\101‟8.在C 程序中,用__ __表示逻辑值“真”。

A、1B、非0 的数C、非1 的数D、大于0 的数9. _____ _把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;10.设变量定义为“int a, b;”,执行下列语句时,输入____ _,则a和b的值都是10。

scanf("a=%d, b=%d",&a, &b);A、10 10B、10, 10C、a=10 b=10D、a=10, b=1011.C语言源程序文件经过编译连接之后生成一个后缀为__ ___的文件。

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

C复习资料 (1)

C复习资料 (1)

1、为了防止信息被别人轻易窃取,需要把电码明文通过加密方式变换成密文。

变换规则如下:小写字母z 变换成为a ,其他字符变换成为该字符ASCII 码顺序后1位的字符,比如o 变换成p 。

2、输入一个正整数,分离并取出各位数字,按照从高位到低位输出各位数字。

运行示例:Enter an integer:1902the digits are:1 9 03、输入2个正数a 和n ,求a+aa+aaa+……+a(n 个a)这和,要求定义并调用函数fn(a,n),这它的功能是返回aa…a(n 个a)。

例如fn(3,2)的返回是33。

4、输入一个整数n (n>=2),输出菲波那契序列的前n 项,每行输出6个数,菲波那序列:1,1,2,3,5,8,13,……,数列的前两个数都是1,从第三项开始,每个数是前两个数之和。

运行示例:Enter n:101 123 5 813 21 34 555、输入两个数m,n ,求出最大公约数和最小公倍数。

6、输入一个正整数n ,计算下列式的前n 项之和。

⋯⋯+-+-=917151311s 运行示例:Enter n:2Sum=0.677、输入一个正整数,求它的各位数字和及位数,例如,17的各位数字之和是8,位数是2。

运行示例:Enter an integer:-153sum=9,count=38、输入一行字符,分别统计出其中英文字母、空格、数字和其他字符的个数。

9、用71513114-+-=π公式求pi 的近似值,直到发现某一项的绝对值小于10-6为止(该项不累加)。

10、计算1到10之间奇数之和及偶数之和11、输出100以内能被3整除且个位数为6的所有整数12、输入一个以回车结束的字符串(少于10个字符),将其中的数字字符转换为整数输出。

要求定义和调用函数atoi(s),该函数将字符串s 转换为整数。

13、输入2个整数lower 和upper ,输出一张华氏-摄氏转换表,华氏温度的取值范围[lower,upper],每次增加2F ,计算公式:c=5*(f-32)/9;式中c 表示摄氏,f 表示华氏。

C语言总复习1基础(1)

C语言总复习1基础(1)

C语⾔总复习1基础(1)C语⾔总复习第⼀部分基础⼀、概述1)程序设计语⾔⾼级语⾔、低级语⾔编译连接f1.c f1.obj fi.exe2)C语⾔概述C语⾔特点P7Turbo C源程序主要特点:1.C程序主要由函数构成,C程序中有⼆种类型的函数:系统函数1、主函数main():每个程序必须有⼀个⽽且只能有⼀个称作主函数的main()函数它代表程序开始执⾏的起始位置。

2、标准库函数:如printf()、scanf()等。

Turbo C开发系统提供三百多个函数。

必须⽤预处理命令把相应头⽂件包含进来。

如#include⽤户⾃定义函数:如max ( )C程序主要由函数构成,这种特点有利于实现程序的结构化(结构清晰)。

2. ⼤多数语句结尾必须要⽤";"作为终⽌符, 否则Turbo C 不认为该语句结束;3. ⼀个C程序总是从main()处开始执⾏,⽽不管main()在源程序中的位置。

4. 每个程序体(主函数和每个⼦函数, 如上例中的main()函数和sub()函数)必须⽤⼀对花括号"{"和"}"括起来;5. C语⾔⽤/* */huo//作注释。

例:#includevoid swap(int x,int y){ int temp;temp=x; x=y; y=temp;}main ( ){int x=10;y=20;swap(x,y);printf(“x=%d,y=%d\n”,x,y);}⼆、数据类型12、常量常量(Constant)与符号常量常量: 在程序运⾏过程中,其值不能被改变的量。

符号常量:代表常量的标识符(符号)。

#define N 33、变量变量:在程序运⾏过程中,其值可以被改变的量。

在源程序中,变量⽤标识符(以字母、数字、下划线组成,且第⼀个字符必须为字母或下划线)表⽰。

C语⾔对变量的要求:“先定义、后使⽤”。

1、整型(int)(1)整型常量。

C语言考试复习专用三套题附答案(1)

C语言考试复习专用三套题附答案(1)

《C语言程序设计》习题集习题一一、语言基础(共20分,每题2分)(二)说明语句char s=‘\t’,使s包含了几个字符?。

A)1 B)2 C)3 D)说明有错(三)设a=6,b=4,则表达式b*=a+3A)3 B)18 C)(四)若给定表达式(m)?a++:a--和等价。

A)m==0 B)m!=0 C)m=0 D)m=1(五)设有说明语句int a[10],则数组a包括了个数组元素。

A)1 B)9 C)10 D)20(六)以下函数test返回值类型为。

test(int x){ printf(“%f\n”,(float)x);}A)int B)float C)void D)不确定或错误二、阅读下列程序,写出运行结果(共18分,每题3分)[程序1]#include <stdio.h>void main( ){ int a=1,b=4,c=2; 运行结果: 1a=(a+b)/c;printf(“%d \n”,--a);}[程序2]void main ( ){ char c1=67; /*‘A’的ASCII码值为65 */if (‘A’ <=c1 && c1<=’Z’) 运行结果: 67,Dprintf(“%d,%c”,c1,c1+1);else printf(“%c”,c1); }[程序3]viod main ( ){ int a=0, n=5; 运行结果: 1,5,4,3,2,0for ( ; ; ){ a++; n--;printf(“%d,”,a);a=n;if (n==0) break;}printf(“%d”,a);}[程序4]main ( ){ int i, j; 运行结果: 1,2,4,8,16,32,64,128,256,512 static int a[10]={1,1,1,1,1,1,1,1,1,1};for (i=0;i<10;i++)for (j=0;j<i;j++)a[i]=a[i]+a[j];for (i=0;i<10;i++)printf(“%d,”,a[i]);}[程序5]int k=2;f (int m) 运行结果: 6,8{ m+=k;k+=m; 5,9printf(“%d,%d \n”,m,k++);}main ( ){ int i=4;for (i++);printf(“%d,%d \n”,i,k); }[程序6]void main ( ){ static int a[10],i; 运行结果: 1 3 5 7 9for (i=0;i<10;i++)a[i]=i+1;for (i=0;i<10;i=i+2)printf(“%d”,*(a+i));}三、阅读分析下列程序,在处填上适当的内容使程序(或函数)完整(共21分,每空3分)(一)以下程序输出所有大写字母和其对应的ASCII码值。

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

一、填空1.函数调用时的实参和形参之间的数据是单向的【1】传递2.设a 、b 、c 为整型数, 且a=2、b=3、c=4, 则执行完以下语句:a*=16+(b++)-(++c);后,a 的值是3. C 语言中,【1】是程序的基本组成部分4. C 语言的三种基本结构是【1】结构、选择结构、循环结构.5. 执行以下程序段后, s 的值是【1int a[]={5,3,7,2,1,5,3,10},s=0,k; for(k=0;k<8;k+=2) s+=*(a+k);6. break 语句除了可以用于循环语句的循环体中,还可以用于【1】语句中7. 执行语句"n=1;if(n=5) n++;"后,变量n 值为【1】.8. c 语言表达式5>2>7>8的值是【1】.9. C 语言中,函数值类型的定义可以缺省,此时函数值的隐含类型是【1】10. 函数的定义不可以嵌套,但函数的调用【1】嵌套.11. 设 x 的值为15,n 的值为2,则表达式 x%=(n+3) 运算后 x 的值是【1】12. 如果函数不要求带回值,可用【1】来定义函数返回值为空13. 设有程序段int x= 4,y=4; t=++x||++y;执行语句后y的值为【1】14. 执行下列语句后,*(p+1)的值是【1】char s[3]="ab",*p; p=s;15. 若有以下定义和语句: int a[4]={0,1,2,3},*p; p=&a[2];则*--p 的值是【1】.16. 设x 和y 均为int 型变量,且x=1,y=2,则表达式1.0+x/y 的值为【1】.17. 若x 为int 型,请以最简单的形式写出与逻辑表达式!x 等价的C 语言关系表达式【1】18. 逗号表达式(a=3*5,a*4),a+5的值为【1】19. 在调用函数fopen("a:\\b.dat","r")时,若A 盘根目录下不存在文件b.dat,则函数的返回值是【1】.20. 已知x=2,y=2 则表达式x*=y+8的值为【1】21. 若声明"char a[15]="Windows-9x";",语句"printf("%s",a+8);"的输出结果为【1】22. 设a,b,t 为整型变量,初值为a=7,b=9,执行完语句t=(a>b)?a:b 后,t 的值是【1】.23. 若a=1,b=4,c=3,表达式a&&b+c||b-c 的值为【1】24. 设int i = 5;则循环语句while (i > = 1) i - -;执行后,i 的值为【1】25. 调用 fopen 函数打开一文本文件,在"使用方式"这一项中,为输入而打开需填入【1】.26. 从函数的形式上看,函数分为无参函数和【1】两种类型.27. C 程序中有且仅有一个【1】函数.28. 从变量的作用域角度分有全局变量和【1】29. 设有下面的程序段int x= 0,y=0,t; t=x&&++y;执行语句后y 的值为【1】30. 若有定义:char s[ ]="china";则Visual C++系统为数组s 开辟【1】个字节的内存单元.31. 写出语句 b=(a=6,a*3); 执行后整型变量b 的值是【1】32. 当a=1,b=1,c=1时,表达式a<b<c 的值是【1】33. 设y 为int 型变量,请写出描述"y 为奇数"的表达式【1】34. 在C 语言中的实型变量分为两种类型,它们是float 型和【1】型.35. 【1】语句,只能用在循环中,以中断某次循环,继续下一次循环36. union un1 { int a; char b; float c; }x;上述定义的共同体变量x 共占用存储空间【1】个字节37. 已知 i=5,写出语句 a=i++; 执行后整型变量a 的值是【138. 计算a、b 中最小值的条件表达式为【1】.39.一个C 源程序中至少应包括一个【1】函数40. C 语言中一个函数由函数首部和【1】两部分组成. 41. 已知 a=10,b=15,c=1,d=2,e=0,则表达式c==b>e 的值为【1】.42. 若有以下定义和语句:int a[5]={1,3,5,7,9},*p; p=&a[2];则++(*p)的值是【1】.43.在函数调用中,若实参为数组名,则形参必须为数组名或【1】44. 已知 i=5;写出语句 i+=012; 执行后整型变量 i 的十进制值是【1】.45. C语言中调用【1】函数来关闭文件.46. 程序段int k=10; while(k=0) k=k-1循环体语句执行【1】次.47. 若在程序中用到"strlen()"函数时,应在程序开头写上包含命令# include "【1】".48. 当程序读写数据文件时,需要有声明语句"FILE*fp;",在该声明语句之前必须包含的头文件名为【1】.二、单项选择1.设变量定义为"int x, *p=&x;",则&(*p)相当于A:p B:*p C:x D:*(&x)2. C语言中要求对变量作强制定义的主要理由是A:便于移植 B:便于写文件C:便于编辑预处理程序的处理D:便于确定类型和分配空间3. 设有以下说明语句struct ex{ int x ; float y; char z ;} example;则下面的叙述中不正确的是( ).A:struct结构体类型的关键 B:example是结构体类型名C:x,y,z都是结构体成员名 D:struct ex是结构体类型4. C语言中不可以嵌套的是A:函数调用 B:函数定义 C:循环语句 D:选择语句5.在C语言中,if语句后的一对原括号中,用以决定分支的流程的表达式A:只能用逻辑表达式 B:只能用关系表达式C:只能用逻辑表达式或关系表达式 D:可用任意表达式6. C语句"x*=y+2;"还可以写作( ).A:x=x*y+2; B:x=2+y*x;C:x=x*(y+2); D:x=y+2*x;7.对以下说明语句 int a[10]={6,7,8,9,10}; 的正确理解是A:将5个初值依次赋给a[1]至a[5]B:将5个初值依次赋给a[0]至a[4]C:将5个初值依次赋给a[6]至a[10]D:因为数组长度与初值的个数不相同,所以此语句不正确8.C语言中,函数值类型的定义可以缺省,此时函数值的隐含类型是A:void B:int C:float D:double9.设已有声明"int x[]={1,2,3,4,5,6},*p=&x[2];",则值为3的表达式是( ).A:*++p B:*(p++) C:++*p D:*p+110.判断char型变量cl是否为小写字母的正确表达式是A:'a'<=cl<='z' B:(cl>=a)&&(cl<=z)C:('a'>=cl)||('z'<=cl) D:(cl>='a')&&(cl<='z') 11.下面说明不正确的是A:char a[10]="china";B:char a[10],*p=a;p="china"C:char *a;a="china";D:char a[10],*p;p=a="china"12.设有说明"int x=3,y=4;",则"++x>y--?x:y"的值为( ).A:4 B:1 C:2 D:313.设有说明:char c; int x; double z;则表达式c*x+zA:float B:int C:char D:double14.若已定义x和y为double类型,则表达式x=1,y=x+3/2的值是A:1 B:2 C:2.0 D:2.515.设变量定义为"int a, b;",执行下列语句时,输入_____,则a和b的值都是scanf("a=%d, b=%d",&a, &b);A:10 10 B:10, 10C:a=10 b=10 D:a=10, b=1016.数组名作为实参数传递给函数时,数组名被处理为A:该数组的长度 B:该数组的元素个数C:该数组的首地址 D:该数组中各元素的值17.两个指针变量不可以A:相加 B:比较 C:相减 D:指向同一地址18.下列( )表达式的值为真,其中a=5;b=8;c=10;d=0A:a*2>8+2 B:a&&dC:(a*2-c)||d D:a-b<c*d19. 对两个数组a和b初始化如下:char a[ ]="abc";char b[ ]={'a','b','c'};则以下叙述正确的是( ).A:a与b数组完全相同 B:a与b数组长度相同C:a与b中都存放字符串 D:a数组比b数组长度长20.若有以下定义:char s='\092'; 则该语句A:使s的值包含1个字符 B:定义不合法,s的值不确定C:使s的值包含4个字符 D:使s的值包含3个字符21.能正确表示逻辑关系:" a≥10或a≤0 "的C语言表达A:a>=10 or a<=0 B:a>=0 | a<=10C:a>=10 && a<=0 D:a>=10 || a<=022.下列字符序列中,不可用作C语言标识符的是A:b70 B:#ab C:symbol D:a_123.系统的标准输入文件是指().AA:键盘 B:显示器 C:软盘 D:硬盘24.若给定条件表达式(M)?(a++):(a--),则其中表达式A:和(M==0)等价 B :和(M==1)等价C:和(M!=0)等价 D:和(M!=1)等价25.假设所有变量均为整型,则表达式(a=2,b=5,b++,a+b)的值是A:7 B:8 C:6 D:226.库函数在使用时,要用A:#include命令 B:#define命令 C:#if D:#else 27.C语言中的标识符只能由字母,数字和下划线三种字符组成,且第一个字符A:必须为字母 B:必须为下划线C:必须为字母或下划线D:可以是字母,数字和下划线中任一字符28.已定义两个字符数组a,b,A:scanf("%s%s", a, b);B:get(a, b);C:scanf("%s%s", &a, &b);D:gets("a"),gets("b");29.以下不能正确进行字符串赋初值的语句是A:char str[5]="good!";B:char str[]="good!";C:char *str="good!";D:char str[5]={'g','o','o','d',0};30.不正确的字符串赋值或赋初值的方式是( ).A:char str[]="string";B:char str[7]={'s','t','r','i','n','g'};C:char str[10];str="string";D:char str[7]={'s','t','r','i','n','g', '\0'};31.关于建立函数的目的,以下正确的说法是A:提高程序的执行效率B:提高程序的可读性C:减少程序的篇幅D:减少程序文件所占内存32.以下标识符中,不能作为合法的C用户定义标识符的是A:a3_b3 B:void C:_123 D:IF33.若变量均已正确定义并赋值,以下合法的C语言赋值语句是A:x=n/2.5; B:x==5; C:x+n=I; D:5=x=4+1;34.若有声明"int x[10]={0,1,2,3,4,5,6,7,8,9},*p",则值不为4的表达式是( ).A:p=x,*(p+4) B:p=x+4,*p++ C:p=x+3,*(p++) D:p=x+3,*++p 35.以下的选择中,正确的赋值语句是A:a=1,b=2 B:j++ C:a=b=5; D:y=int(x)36.gets函数的功能是A:读取从键盘输入的一串不带空格的字符串B:读取从键盘输入的一串带空格的字符串C:读取从键盘输入的一串不带数字的字符串D:读取从键盘输入的一串只带字母的字符串37.若已定义x为int类型变量,下列语句中说明指针变量p的正确语句是A:int p=&x; B:int *p=x;C:int *p=&x; D:*p=*x;38.执行语句 for(i=1;i++<4;); 后变量 i的值是A:3 B:4 C:5 D:不定39.字符串指针变量中存入的是A:字符串 B:字符串的首地址C:第一个字符 D:字符串变量40.变量s的定义为 char *s = "hello world!" ; ,要使用变量p指向s所指向的同一个字符串,则应选取( ). A:char *p=s; B:char *p=&s;C:char *p ; p=*s; D:char *p;p=&s;41.在C语言中,函数的数据类型是指A:函数返回值的数据类型B:函数形参的数据类型C:调用该函数时的实参的数据类型D:任意指定的数据类型42.经过以下语句定义后,表达式z+=x>y?++x:++y的值为int x=1,y=2,z=3;A:2 B:3 C:6 D:543.若用数组名作为函数的实参,传递给形参的是A:数组的首地址 B:数组第一个元素的值C:数组中全部元素的值 D:数组元素的个数44.已知大写字母A的ASCII码值是65,小写字母a的ASCII码是97,则用八进制表示的字符常量'\101'是A:字符A B:字符a C:字符e D:非法的常量45.设C语言中,int类型数据占2个字节,则long类型数据占A:1个字节 B:2个字节 C:4个字节 D:8个字节46.下列运算符中,不属于关系运算符的是A:< B:> C:>= D:!47.下列字符数组长度为5的是A:char a[]={'h', 'a', 'b', 'c', 'd'};B:char b[]= {'h', 'a', 'b', 'c', 'd', '\0'};C:char c[10]= {'h', 'a', 'b', 'c', 'd'};D:char d[6]= {'h', 'a', 'b', 'c', '\0' };48.设有说明语句 char a='\101'; ,则变量a( ).A:包含4个字符 B:包含2个字符C:包含3个字符 D:包含1个字符49.当定义一个结构体变量时,系统分配给它的内存是A:各成员所需内存量的总和B:结构中第一个成员所需内存量C:结构中最后一个成员所需内存量D:成员中占内存量最大者所需的容量50.能将高级语言编写的源程序转换为目标程序的是A:链接程序 B:解释程序 C:编译程序 D:编辑程序51.具有相同类型的指针变量p与数组a,不能进行的操作是A:p=a; B:*p=a[0]; C:p=&a[0]; D:p=&a; 52.为了避免在嵌套的条件语句if—else中产生二义性,C语言规定:else总与( )A:缩排位置相同的if B:其之前最近的未配对的if C:其之后最近的if D:同一行上的if53.设有说明:char w; int x; float y; double z; 则表达式w*x+z-y值的数据类型为A:float B:int C:char D:double 54.整型变量x=1,y=3,经下列计算后,x的值不等于6的是A:x=(x=1+2,x*2) B:x=y>2?6:5C:x=9-(--y)-(y--) D:x=y*4/255.若有定义:int aa[ 8];则以下表达式中不能代表数组元aa[1]的地址的是A:&aa[0]+1 B:&aa[1] C:&aa[0]++ D:aa+156.若有定义int a[10],*p=a;,则p+5A:元素a[5]的地址 B:元素a[5]的值C:元素a[6]的地址 D:元素a[6]的值57. C语言中运算对象必须是整型的运算符是A:%= B:/ C:= D:〈=58.若二维数组a有m列,则在a[i][j]前的元素个数为A:j*m+i B:i*m+j C:i*m+j-1 D:i*m+j+159.从循环体内某一层跳出,继续执行循环外的语句是A:break语句 B:return语句C:continue语句 D:空语句60.以下运算符中,优先级最高的运算符是A:= B:!= C:*(乘号) D:()61.逻辑运算符两侧运算对象的数据类型A:只能是0或1 B:只能是0或非0正数C:只能是整型或字符型数据 D:可以是任何类型的数据62.若i为整型变量,则以下循环执行次数是for(i=2;i==0;) printf("%d",i--);A:无限次 B:0次 C:1次 D:2次63.逗号表达式" (a=3*5,a*4),a+15 "的值是( ).A:15 B:60 C:30 D:不确定64.fscanf函数的正确调用形式是A:fscanf(fp,格式字符串,输出表列);B:fscanf(格式字符串,输出表列,fp);C:fscanf(格式字符串,文件指针,输出表列);D:fscanf(文件指针,格式字符串,输入表列);65.C语言的switch语句中caseA:只能为常量B:只能为常量或常量表达式C:可为常量或表达式或有确定值的变量及表达式D:可为任何量或表达式66.设变量a是整型,f是实型,i是双精度型,则表达式10+'a'+i*f值的数据类型为A:int B:float C:double D:不确定67. 下列标识符中,不合法的C语言用户自定义标识符是A:printf B:enum C:_ D:sin68.以下定义语句中,错误的是A:int a[]={1,2}; B:char *a[3]; C:char s[10]="test"; D:int n=5,a[n];69.若有下列定义,则对a数组元素地址的正确引用是int a[5],*p=a;A:&a[5] B:p+2 C:a++ D:&a70.在C语言程序中A:函数的定义可以嵌套,但函数的调用不可以嵌套B:函数的定义不可以嵌套,但函数的调用可以嵌套C:函数的定义和函数调用均可以嵌套D:函数的定义和函数调用不可以嵌套71.设有定义"float y=3.45678;int x;",则以下表达式中能实现将y中数值保留小数点后2位,第3位四舍五入的表达式是( ).A:y=(y*100+0.5)/100.0B:y=(y/100+0.5)*100.0C:y=y*100+0.5/100.0D:x=y*100+0.5,y=x/100.072.若有说明:int a[][3]={1,2,3,4,5,6,7};则a数组第一维的大小是A:2 B:3 C:4 D:无确定值73.已知结构类型定义和变量声明如下:struct sk{int a;float b;}data[2],*p;若有p=data,则以下对data[0]中成员a的引用中错误的是( ).A:data[0]->a B:data->aC:p->a D:(*p).a74.下列格式符中,可以用于以8进制形式输出整数的是( ).A:%d B:%8d C:%o D:%1d75.语句while(!E);中的表达式!E等价于A:E==0 B:E!=1 C:E!=0 D:E==176.对二维数组的正确说明是( ).A:int a[][] = {1,2,3,4,5,6}; B:int a[][3] = {1,2,3,4,5,6};C:int a[2][] = {1,2,3,4,5,6}; D:int a[2][3] = {1,2,3,4,5,6,7}77.下列数据中,为字符串常量的是A:A B:"house" C:How do you do. D:$abc78.函数调用:strcat(strcpy(str1,str2),str3)的功能是A:将串str1复制到串str2中后再连接到串str3之后B:将串str1连接到串str2之后再复制到串str3之后C:将串str2连接到串str1之后再将串str1复制到串str3中D:将串str2复制到串str1中后再将串str3连接到串str1之后79.判断两个字符串是否相等,正确的表达方式是A:while(s1= =s2)B:while(s1=s2)C:while(strcmp(s1,s2)= =0)D:while(strcmp(s1,s2)=0)80.若有int a[10]={0,1,2,3,4,5,6,7,8,9},*p=a;则输出结果不为5的语句为A:printf("%d",*(a+5)); B:printf("%d",p[5]);C:printf("%d",*(p+5)); D:printf("%d",*p[5]);81. C语言程序中必须有的函数是A:#include "stdio.h" B:main C:printf D:scanf82.以下运算符中,优先级最高的运算符是A:|| B:% C:! D:==83.在下列程序段中,枚举变量c1,c2的值依次是enum color {red,yellow,blue=4,green,white} c1,c2; c1=yellow;c2=white;printf("%d,%d\n",c1,c2);A:1,6 B:2,5 C:1,4 D:2,6 84.int a[10]={1,2,3,4,5,6,7,8};int *p;p=&a[5];p[-3]的值是A:2 B:3 C:4 D:不一定85.已知有如下的结构类型定义和变量声明:struct student{ int num;char name[10];}stu={1,"marry"},*p=&stu;则下列语句中错误的是( ).A:printf("%d",stu.num);B:printf("%d",(&stu)->num);C:printf("%d",&stu->num);D:printf("%d",p->num);86.int a=3,b=2,c=1;if(a>b>c)a=b;else a=c;则a的值为A:3 B:2 C:1 D:087.已定义以下函数fun(char *p2, char *p1){ while((*p2=*p1)!='\0'){ p1++;p2++; }}函数的功能是A:将p1所指字符串复制到p2所指内存空间B:将p1所指字符串的地址赋给指针p2C:对p1和p2两个指针所指字符串进行比较D:检查p1和p2两个指针所指字符串中是否有'\0' 88.enum a {sum=9,mon=-1,tue};定义了A:枚举变量 B:3个标识符C:枚举数据类型 D:整数9和-189.变量的指针,其含义是指该变量的().BA:值 B:地址 C:名 D:一个标志90.已知有语句"FILE *fp; int x=123;fp=fopen("out.dat","w");",如果需要将变量x的值以文本形式保存到一个磁盘文件out.dat中,则以下函数调用形式中,正确的是( ).A:fprintf("%d",x);B:fprintf(fp,"%d",x);C:fprintf("%d",x,fp);D:fprintf("out.dat","%d",x);91.设p1和p2是指向同一个字符串的指针变量,c为字符变量,则以下不能正确执行的赋值语句是A:c=*p1+*p2; B:p2=c;C:p1=p2; D:c=*p1*(*p2);92.若变量已正确定义并赋值,下面符合C语言语法的表达式是A:a:=b+1 B:a=b=c+2C:int 18.5%3 D:a=a+7=c+b93.C语言规定,在一个源程序中,main函数的位置A:必须在最开始 B:必须在系统调用的库函数的后面C:可以任意 D:必须在最后94. int a=1,b=2,c=3;if(a>c)b=a;a=c;c=b;则c的值为A:1 B:2 C:3 D:不一定95.设a、b、c、d、m、n均为int型变量,且a=5、b=6、c=7、d=8、m=2、n=2,则逻辑表达式(m=a>b)&&(n=c>d)运算后,n的值为______.A:0 B:1 C:2 D:396.下面正确的赋值语句是(设char a[5],*p=a;)().A:p="abcd"; B:a="abcd";C:*p="abcd"; D:*a="abcd";97.C语言源程序的基本单位是A:过程 B:函数 C:子程序 D:标识符98.在C语言中,为了结束由while语句构成的循环,while后一对圆括号中表达式的值应该为A:0 B:1 C:True D:非099.相同结构体类型的变量之间,可以A:相加 B:赋值 C:比较大小 D:地址相同。

相关文档
最新文档