c语言期末复习资料3
C语言期末复习资料
一、单项选择题1、在C语言中,要求操作数必须是整型的运算符是()。
A、/B、+C、!=D、%2、C语言程序是由()组成的。
A、函数B、子程序C、过程D、主程序和子程序3、以下叙述正确的是()。
A、在C程序中,main()函数必须位于程序的最前面B、C程序的每一行中只能写一个语句C、在对一个C程序进行编译时,可发现注释中的拼写错误D、C语言本身没有输入输出语句4、一个C程序的执行是从()。
A、本程序的main函数开始,到main函数结束B、本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C、本程序的main函数开始,到本程序文件的最后一个函数结束D、本程序文件的第一个函数开始,到本程序main函数结束5、语句while(!n)中的条件!n等价于()。
A、n==0B、n==1C、n!=1D、n!=06、实参和和形参之间的数据传送是()。
A、地址传送B、实参传给形参,再由形参传给实参C、单向值传送D、由用户指定传送方式7、下列自定义标识符中,符合C语言规定的是()。
A、forB、3aC、*aD、_1238、以下叙述错误的是()。
A、for循环需要循环变量,while/do-while不需要循环变量B、for循环、while循环先判断后执行C、do-while循环总是至少执行一次D、for、while、do-while循环的循环体均可为空语句9、C语言标识符只能由字母、数字和下划线三种字符组成,且第一个字符()。
A、必须是字母B、必须为下划线C、必须为字母或下划线D、可以是字母、数字或下划线中任一字符10、下列整数值中,不正确的八进制或十六进制的是()。
A、0x18B、016C、086D、0x5C11、若有定义:int a,b;则表达式:(a=2,b=5,b++,a+b)的值是()。
A、2B、6C、7D、812、对于int a=6;表达式1<=a<=5的值是()。
A、0B、1C、不定 D、表达式有语法错误13、执行下面的程序片段,描述正确的是()。
C语言期末复习资料
选择题1、以下不是C语言基本数据类型的是D。
A.字符型B.C.整型D.构造类型2、以下B是八进制数。
A.1X12 B.123C.1001 D.01233、Turbo C中,char类型变量所占字节数是B。
A. 2 B. 1C. 3 D. 44、C语言提供的合法的数据类型关键字是B。
A.longer B.shortC.integer D.character5、C语言中运算对象必须是整型的运算符是A。
A.%= B.==C.+= D.*=6、下面关于字符串和字符常量的叙述中错误的是C。
A.字符常量由单引号括起来,字符串常量由双引号括起来B.字符常量只能是单个字符,字符串常量可以含一个或多个字符C.字符常量占一个字节的内在空间,字符串常量占的内在字节数为字符串中字符数D.可以将一个字符常量赋予一个字符变量,但不能将一个字符串常量赋予一个字符串变量7、以下程序的输出结果是D。
main(0{ int m = 10, n = 3;printf( " %d\n ", n = m / n ) ;}A.10 B.11C.13 D. 38、若以下变量均已正确说明为char类型,要给x、y和z输入数据,正确的是B。
A.scanf ( x, y, z );B.scanf ( "%c%c%c", &x, &y, &z ) ;C.scanf ( "%C%C%C", x, y, z ) ;D.scanf ( "%c%c%c", x, y, z ) ;9、以下程序的输出结果是C。
char c1, c2;c1=65; c2 = 65 + 32 + 1 ;printf ( "%c, %c ", c1, c2 ) ;A.a, B B.A, BC.A, b D.a, b10、以下程序的输出结果是C。
#include "stdio.h"#include "math.h"main(){ int a=3, b=9 ;float y, x=1.2 ;y= ( a+b ) / sqrt ( b ) * x ;printf ( "%\n", y ) ; }A. 1.000000 B. 1.400000C. 4.800000 D. 1.90000011、以下程序段的输出结果是7 6 7。
C语言期末考试复习资料
C语⾔期末考试复习资料C语⾔复习摘要⼀、数据类型:基本类型(整型、实型、字符型、枚举类型),构造类型(数组、结构体、共⽤体)、指针类型、空类型。
基本类型也叫简单类型,构造类型也叫复杂类型⼆、标识符:标识符只能由字母、下划线、数字构成,且必须以字母或下划线开头,且对字母的⼤⼩写敏感。
三、常量1、整型常量,如:32,0x32,0X32,0x3f,0xea,8L,8l,0672、实型常量,如:3.14,1e23,0.8E8,0.8E-8,0.8E+83、字符常量,如:‘a’, ‘\n’, ‘\w’,‘\\’,‘\0’4、字符串常量,如:“windows”,“a”,(其赋值表达式和赋值语句中其本质是⼀个地址常量)5、地址常量,若有定义:int k,a[10];char s[20];则:&k,a,s,NULL都是地址常量6、符号常量,⽤宏定义实现,如:#define PAI 3.14159267、以下都是⾮法常量:0xfg,3.1e2.8,‘aw’,‘w\’,0x,068四、表达式(要点:先确定表达式的类型,再确定表达式的值的类型,最后确定表达式的值):1、算术表达式(应注意变量类型的⾃动转换——原则:低级向⾼级转换):(1)、整型表达式:参加运算的都是整型量,结果也是整型数。
如:x+20*9+3(2)、实型表达式:参加运算的都是实型量,运算过程中先转换成double型,结果也是double型。
如:x+20*9+3.0,x+20*9+sqrt(3)2、赋值表达式:将赋值运算符“=”右边的值赋给左边的变量,其值为赋值后左边变量的值,类型为左边变量的类型。
如:x=3(注:若x为整型变量,则该表达式的值为整型,若x实型变量,则该表达式的值为实型)3、逻辑表达式:⽤逻辑运算符(!,&&,||)连接的整型量,结果为整数(0或1)。
逻辑表达式可认为是整型表达式的⼀种特殊形式。
如:((x=3)&&(y=0))4、关系表达式:⽤关系运算符将两个表达式连接起来的式⼦,结果为整数(0或1)。
计算机期末考试复习资料 C语言复习
C语言复习第一章:总结:(1) C程序是由函数构成的。
这使得程序容易实现模块化。
(2) 一个函数由两部分组成:函数的首部:例1.3中的max函数首部int max(int x,int y )函数体:花括号内的部分。
若一个函数有多个花括号,则最外层的一对花括号为函数体的范围。
函数体包括两部分:声明部分:int a,b,c; 可缺省执行部分:由若干个语句组成。
可缺省注意:函数的声明部分和执行部分都可缺省,例如:void dump ( ){}这是一个空函数,什么也不做,但是合法的函数(3) C程序总是从main函数开始执行的,与main函数的位置无关。
(4) C程序书写格式自由,一行内可以写几个语句, 一个语句可以分写在多行上,C程序没有行号。
(5) 每个语句和数据声明的最后必须有一个分号。
(6) C语言本身没有输入输出语句。
输入和输出的操作是由库函数scanf和printf 等函数来完成的。
C对输入输出实行“函数化”第二章:算法的特性1.有穷性:一个算法包含有限的操作步骤2.确定性:算法中的每一个步骤是确定的,含义是唯一的3.有零个或多个输入4.有一个或多个输出5.有效性:算法中每一个步骤应能有效运行三种基本结构顺序结构、选择结构、循环结构第三章:一、数据类型1.标识符(identifier)定义:用来标识变量、常量、函数等的字符序列组成: 只能由字母、数字、下划线组成,且必须是字母或下划线开头,C 语言中大小写敏感(如count ,Count ,COUNT 是三个不同的标识符。
)不能使用关键字长度:最长32个字符命名原则:见名知意 不宜混淆 如l 与I, o 与0 顺序结构选择结构当型(While 型)循环结构直到型(Until 型)循环2.常量定义:程序运行时其值不能改变的量(即常数)分类:(符号常量,直接常量)符号常量:用标识符代表常量定义格式:#define3.变量概念:其值可以改变的量变量名与变量值变量定义的一般格式:数据类型变量1[,变量2,…,变量n];二、整型变量的分类:分为四种:基本型、短整型、长整型、无符号型1.基本型:用“int”表示2.短整型:用“short int”或“short”表示3.长整型:用“long ”或“long int ”表示4.无符号型:(修饰符:unsigned)不存放符号,则不带符号数.又分无符号整型,无符号短整型, 无符号长整型。
C语言程序设计期末复习资料
第一章——C简介一、C语言程序的结构1.一个程序有一个或多个源文件组成(1)预处理指令如#including <stdio.h>(2)全局声明在函数之外进行的数据声明,在定义函数前声明的变量,在整个源程序文件范围内有效。
(3)函数定义2.C的主体部分——函数(函数首部和函数体)(1)函数首部包括函数名、函数类型、函数属性、函数参数(形参与实参)、参数类型(2)函数体3.程序从main函数开始执行。
4.每个数据声明和语句的最后必须有一个分号5.注释应当包含注释(1)以//开始单行的注释,从//开始,到换行符结束。
(2)以/*开始,以*/结束的块式注释,可以包含多行内容。
第三章——顺序结构一、数据的表现形式及其运算1.合法用户标识符合法的要求是由字母,数字,下划线组成,有其它元素就错了,并且第一个必须为字母或则是下划线,第一个为数字就错了。
关键字不可以作为用户标识符号。
main define scanf printf都不是关键字。
2.实型数据的合法形式:2.333e-1就是合法的,且数据是2.333×10-1。
e前e后必有数,e后必为整数。
3.字符数据的合法形式:'1'是字符占一个字节,"1"是字符串占两个字节(含有一个结束符’\0’) .小写字母的ASCII码比对应的大写字母大324.整型一般是两个字节,字符型是一个字节,双精度一般是4个字节:5.转义字符:6.算术运算符号的优先级别7.强制类型转换:(1)一定是(int)a不是int(a),注意类型上一定有括号(2)注意(int)(a+b)和(int)a+b的区别。
前是把a+b转型,后是把a转型再加b 8.不同类型数据间混合运算(1)有float或double型,结果为double型。
(2)字符型和实数型数据运算,将字符的ASCII代码转化为double型数据进行计算。
二、C语句1.C语句分类(1)控制语句。
c语言期末复习资料
c语言期末复习资料C语言是计算机科学中非常基础的一门编程语言,是程序员必须掌握的技能之一。
由于其简单易学的特点和广泛的应用范围,越来越多的人开始学习和使用C语言。
期末考试是C语言学习过程中的重要节点,为了帮助考生顺利通过考试,本文整理了一些C语言期末复习资料以供参考。
一、基础知识1.变量和数据类型C语言中的变量用于存储程序中使用的数据,数据类型是指变量所代表的数据的类型。
常见的C语言数据类型包括整型、浮点型、字符型、布尔型等。
掌握变量和数据类型的定义和使用是C 语言学习的第一步。
2.运算符和表达式C语言中的运算符用于对变量进行运算和操作,包括算术运算符、关系运算符、逻辑运算符等。
表达式是由变量和运算符组成的代码段,用于对变量进行操作和计算。
掌握运算符和表达式的使用和规则是C语言学习的基础。
3.条件语句和循环语句条件语句和循环语句是C语言中的两种重要的控制结构。
条件语句根据条件的真假来执行不同的代码段,常见的条件语句包括if语句和switch语句。
循环语句用于重复执行同一个代码段,常见的循环语句包括for循环、while循环和do-while循环。
掌握条件语句和循环语句的使用和应用是C语言学习的重要环节。
二、进阶技巧1.字符数组和字符串字符数组和字符串是C语言中非常常用的数据类型,用于处理字符和文本。
字符数组是由若干个字符组成的数组,字符串是由若干个字符组成的字符串常量。
掌握字符数组和字符串的定义和使用,能够更好地处理文本和数据输入输出等问题。
2.函数和指针函数是C语言中的重要的模块化编程方法,函数将程序的功能分解为若干个具有特定功能的独立模块。
指针是C语言中的重要的数据类型,它存储变量的内存地址,常用于访问复杂数据结构和实现高效的内存管理。
掌握函数和指针的使用和细节能够更好地组织程序和提高程序的执行效率。
3.结构体和文件操作结构体是C语言中用于组织复杂数据结构的数据类型,常用于存储各种类型的数据记录。
C语言期末复习.doc
C语言期末复习.doc第一章C语言概述一、选择题1、C语言程序由什么组成()A、子程序B、主程序和子程序C、函数D、过程2、源程序要正确地运行,必须要有什么函数()A、Printf函数B、自定义的函数C、main函数D、不需要函数3、指出下面哪些是合法的标识符()A、3abB、intC、ABCD、a_3E、sum..aF、#abcG、_stu2H、abc f二、问答题1、C语言程序由哪几部分组成?C语言程序结构有什么特点?参考答案一、选择题1、C2、C二、问答题见教案第二章基本数据类型、运算符及表达式一、选择题1、C语言中的数据的基本类型包括()A、整型、实型、字符型和逻辑型B、整型、实型、字符型和结构体C、整型、实型、字符型和枚举型D、整型、实型、字符型和指针型2、在C语言中,不合法的int型常量是()A、32767B、0678C、0XABCD、32768L3、在C语言中,运算对象必须是整型数的运算符是()A、%B、\\C、%和\\D、**4、若已定义X和Y为double型,则表达式:x=1,y=x+3/2的值是()A、1B、2C、2.0D、2.55、若t为double类型,表达式t=1,t+5,t++的值就是()A、1B、6.0D、1.06、若有定义:int a=10,b=9,c=8;执行下面两条语句c=(a-=(b-5));c=(a%11)+(b=3);后,变量b的值为()A、9B、4C、3D、27、设int a=12,则执行完语句a+=a-=a*a后,a的值是_____A、22B、264C、144D、-264二、问答题:1、简述‘a’和“a”的区别。
参考答案一、选择题1、C2、D3、A4、D5、D6、C7、D二、问答题‘a’是字符常量“a”是字符串常量C语言规定:在每一个字符串的结尾加一个“字符串结束标志”,以便系统据此判断字符串是否结束。
C语言规定以字符’\\0’作为字符串结束标志。
如果有一个字符串”china”,实际上在内存中是占内存不是5个字节,而是6个字节,最后一个是’\\0’。
C语言期末复习必备资料
1、函数fun的功能是计算x^n。
double fun(double x,int n){int i; double y=1;for(i=1;i<=n;i++) y=y*x;return y;}主函数中已经正确定义m、a、b变量并赋值,并调用fun函数计算:m=a^4+b^4-(a+b)^3。
实现这一计算的函数调用语句为______。
答案: 1:fun(a,4)+fun(b,4)-fun((a+b),3)评析:函数fun的功能是计算x的n次方,所以a的4次方的调用函数应当为fun(a,4),b的4次方的调用函数应当为fun(b,4),(a+b)的3次方的调用函数应当为fun((a+b),3),所以,实现m=a^4+b^4-(a+b)^3这一计算的函数458调用语句为:fun(a,4)+fun(b,4)-fun((a+b),3);。
知识点:知识点/函数/破函数的正确调用,嵌套调用,递归调用2、以下sstrcpy()函数实现字符串复制,即将t所指字符串复制到s所指内存空间中,形成一个新字符串s。
请填空。
void sstrcpy(char *s,char *t){ while(*s++=______);}main(){ char str1[100],str2[]="abcdefgh";sstrcpy(str1,str2);printf("%s\n",str1);} 答案: 1:*t++评析:要使sstrcpy()函数实现字符串复制,必须将t字符串中的每个字符逐个拷到s字符串中,所以可以使用*s=*t;s++;t++。
或者可以写成*s++=*t++,本题只有一个空,可以填入*t++。
知识点:知识点/指针/用指针作函数参数3、以下程序给指针p分配三个double型动态内存单元,请填空。
#include <stdlib.h>main(){ double *p;p=(double*)malloc(______);p[0]=1.5; p[1]=2.5;p[2]=3.5;printf("%f%f%f\n",p[0],p[1],p[2]);} 答案: 1:3*sizeof(double)评析: malloc(size)在内存的动态存储区中分配一个长度为size的连续空间。
完整版打印一下 C语言期末复习资料
第一部分:C 中的数据首先,从主调函数和被调函数(模块间)要处理的任务数据的角度来总结数据的 知识点:C 语言中所讲授的数据有基本类型(整型、实型和字符型)和构建类型(数组、结构体、共用体、链表结点)之分。
构建类型是由基本类型构建而成,因此我们有必要 对基本类型的数据做以更细致的研究。
一.基本类型的数据程序中的数据无非是以常量和变量两种形式描述。
在这里我们不妨思考两个问题:(1)为什么要用变量? ( 2)常量经常用在什么地方?(一)常量对于基本类型常量我们要掌握:常量分几类?每类的书写规则是什么?(2)实型常量:有小数和指数两种表示形式.(3.4.1、3.4.3 )(3)字符型常量:有普通字符(可以是 ASCII 码表中的任何一个字符)、转义字符(表示控制命令的转义字符和用八进制十六进制描述的转义字符)(4)字符串常量(3.5.4 )(5)符号常量:实际上是不带参数的宏定义(3.2.1、9.1.1 )对于常量部分的考察无非是辨别书写形式,字符类的常量特别注意转义字符的辨认。
这就要求我们熟记书写规则。
例如以下题目:t-1 :下面哪个是正确的整型常量表示t-2:下面哪个是错误的实型常量表示期末复习(1)整型常量:有十、八、十六进制二种表示形式。
(331、333 )(3.5.1 )A)019B)0X34g C)-123 D)o56 E) 12,000A).23B)3.8E-4.5C)45E12D)92.45t-3:下面哪个是正确的字符常量表示:t-4:下面那个是正确的字符串常量表示:的值是5 ?(二)变量对于基本类型的变量,我们知道要使用变量必须先定义变量,定义的基本格式是: 数据类型 变量名;要正确定义变量就必须清楚两点(1)什么样的变量名才是合法的?(322)( 2)如何用类型符来描述所要定义的变量, 这就涉及到变量所分配的字节数、存储特点、有无符号及各自表示的数值范围等。
变量的三大类:(1)整型变量(3.3.2)分配字节:2 字节(int/short ) 4 字节(long ) ( TC2.0)存储特点:存储的是数值的补码形式(2)实型变量(3.4.2)(float ) 8 字节(double ) 16 字节(long double )存储特点:图3-7A) ” b ”B)'' C) '\34 ' D)'\0x9 ' E) '123't-5:t-6:A) abc'E) ” F) ” A ”B)C) “”D)“ \0x120”字符串“ ab034\0\\t\v\012 ”存储需要多少个字节? 先组合转义字符,11个字puts( “ ab034\0\\t\v\012 ”);的结果是 ab034? strlen( “ab034\0\\t\v\012 ”)符号标识:sig ned un sig ned表示数值范围:表3-1分配字节:4字节期末复习资料 第10页-总24页表示数值范围:表3-2(3)字符型变量(3.5.2、3.5.3 )分配字节:1字节(char )存储特点:存储字符的ASCII 值 符号标识:sig ned un sig ned 表示数值范围:sig ned char: -128~+127Un sig ned char: 0~255基本类型变量这部分知识主要的考察形式:(1)变量名(标识符)的正确与否鉴别 (2) 变量类型标识符的识别与应用(3)变量定义语句中对变量进行初始化的形式正确与否鉴别 (3.6)例如以下题目:F 面程序段在tc2.0和cfree3.0运行时的输出各为-1 / 65535un sig ned int a=65535; prin tf("%d",a);A)int a=b=5 ; B)char ch=97 ; C)unsigned int x, y=-5; D)int a=3,b=5;E ) int c=3(二)建构类型的数据t-7:以下正确的变量标识符是:A)3sum B)INTC) 3maxD)case E)p&sumF)s m at-8:以下正确的变量类型声明是:A)si gned intB)i nt longConsigned longD)shortlongt-9:t-10:以下正确的定义语句是:期末复习资料 第10页-总24页程序给出的任务数据可以是基本类型的,也可以是集合性质的。
C语言期末考试全部知识点复习资料--重点--常考点-整理.doc
一般转义字符:背诵\0、\n 八进制转义字符: 十六进制转义字符:'\x6cl ,\b 将当前位置移到前一列\n 将当前位置移到下一行开头\t 跳到下一个TAB 位置 \\代表一个反斜线字符'’\,\〃代表一个双引号字符\0空字符(NULL )1. 程序屮基本的控制结构是三种:顺序结构、选择结构(分支结构)、循环结构。
2. 读程序都要从main ()入口,然后从最上面顺序往下读(碰到循环做循环,碰到选择做选择),有且只有一个main 函数。
3. 计算机的数据在电脑中保存是以二进制的形式。
数据存放的位置就是它的地址。
4. bit 是位,是指为0或者1。
byte 是指字节,一个字节二八个位。
5. 编译预处理不是C 语言的一部分,不占运行时间,不要加分号。
(常考!)^define PI 3. 1415926; 这个写法是错误的,一定不能出现分号。
6. 每个C 语言程序中main 函数是有且只有一个。
7. 用C 语言编写的程序称为源程序,扩展名是.co C 程序必须经过编辑、编译、链接、运行四个步骤才可得到运行 结果。
注意.c 和.obj 文件时无法运行的,只有.exe 文件才可以运行。
(常考!)8. C 语言书写格式是自由的,每行可以写多个语句,一条语句也可以写在多行。
9. 一个C 语言程序有且只有一个main 函数,是程序运行的起点。
10. Cfree 、VC/VC++、CodeBlock 等是软件,用来运行写的C 语言程序。
(编译环境)11. 标识符(必考内容):合法的要求是由字母,数字,下划线组成。
并且第一个必须为字母或则是下划线。
第一个为数字就错了12. 标识符分为关键字、预定义标识符、用户标识符。
关键字:不可以作为用户标识符号。
main 、define 、scanf> printf 都不是关键字。
迷惑你的地方是If 、Main 等可以做为用户标识符。
If 、Main 中的第一个字母大写预定义标识符:如define 、scanfs printf> include 。
C语言期末考试全部知识点复习资料--重点 常考点
C语言知识点复习资料考试是难得的训练自己的机会,在特定的时间、特定的地点、特定的气氛下,你需要调动各方面的能力。
而在每一次考试中,我都下意识地应用自己摸索出来的“目标控制法”,做到了每次考试有有收获和进步。
每次考试前,我都会在一张白纸上写满通过本次考试要达到的目标:要注意克服哪些易犯的错误,尤其是要克服前几次考试中暴露出来的共性的失误;要积累哪些经验,应用哪些技巧,比如选择题中的特征值法;要在多长的时间内完成卷面各部分,比如,争取35分钟内完成数学试卷中的选择题和填空题;要培养锻炼哪些考试应试的心理素质等。
也就是说,我们要把考试看成是一个完整的流程,包括考前准备、考场发挥和考后调整三个阶段。
同学中存在的误区往往是只注意考前的准备和考场的发挥两个阶段,对考后调整注意不够。
事实上,高考之前的每一次模拟考试,最重要的就是考试后的总结与反思,只有这样,才能认识到自己的薄弱环节,不断提高考试能力。
所以,有心的同学一定要注意做好健全的考后调整,不断提高自己的实力。
总体上必须清楚的:1.程序中基本的控制结构是三种:顺序结构、选择结构(分支结构)、循环结构。
2.读程序都要从main()入口,然后从最上面顺序往下读(碰到循环做循环,碰到选择做选择),有且只有一个main函数。
3.计算机的数据在电脑中保存是以二进制的形式.数据存放的位置就是它的地址.4.bit是位是指为0或者1。
byte是指字节,一个字节=八个位.5.编译预处理不是C语言的一部分,不占运行时间,不要加分号。
(常考!)#definePI3.1415926;这个写法是错误的,一定不能出现分号。
6.每个C语言程序中main函数是有且只有一个。
7.用C语言编写的程序称为源程序,扩展名是.c。
C程序必须经过编辑、编译、链接、运行四个步骤才可得到运行结果。
注意.c和.obj文件时无法运行的,只有.exe文件才可以运行。
(常考!)8.C语言书写格式是自由的,每行可以写多个语句,一条语句也可以写在多行。
C语言期末考试复习资料
break语句和continue语句
break语句 break语句可以用来从循环体内跳出循环体, 即提前结束循环. 一般形式: break; 注意: break语句只能用于循环语句或switch语句中。
continue语句 作用为结束本次循环,即跳过循环体中下面 尚未执行的语句,接着进行下一次循环的判 定. 一般形式: continue;
如果字符变量ch的值为大写字母, 则条件表达式的值为(ch+3 2),即相应的小写字母。如果ch 的值不是大写字母,则条件表达式 的值为ch,即不进行转换。
几个典型的判断: 判断大写字母: if(‘A’<=c && c<=‘Z’) 判断小写字母: if(‘a’<=c && c<=‘z’) 判断数字: if(‘0’<=c && c<=‘9’) 判断闰年: if((year%4==0&&year%100!=0)||year%400==0)
自增、自减运算符 作用是使变量的值增1或减1 如:++i,--i(在使用i之前,使i+1 或-1) i++,i--(在使用i之后,使i+1 或-1) 就是使用 i 的原值执行本条语句,而在执行下 条语句前将 i+1 或-1 int m=5,n=10; printf("%d,%d\n",m++,--n); 显示5,9 若再有: printf(‚%d\n‛,m); 显示6
用do-while语句实现循环
do-while语句的特点:先执行循环体,然后判断 循环条件是否成立。 一般形式: do { 循环体语句 } while (表达式); 执行过程:先执行一次指定的循环体语句,然后判别 表达式,当表达式的值为非零(‚真‛) 时,返回重 新执行循环体语句,如此反复,直到表达式的值等 于0为止,此时循环结束。
C语言期末复习资料
C语言期末复习资料一、选择题型1.下列运算符中,优先级最高的是________。
A.-> B.++ C.&& D.=2.________是合法的用户自定义标识符。
A、b-bB、floatC、<fr>D、_isw3.若变量已正确定义并赋值,表达式________不符合C语言语法。
A、a*b/c;B、3.14%2C、2, bD、a/b/c4.运算符________不能做为单目运算符。
A./ B.& C.* D.+5.________是不正确的字符常量。
A、'\n'B、'1'C、"a"D、'\101'6.已知字符‘a’的ASCII码为97 ,执行下列语句的输出是________。
printf ("%c%d", ’b’, ’b’+1 ) ;A.b99 B.98c C.9899 D.bc7.在C 程序中,用________表示逻辑值“真”。
A、1B、非0 的数C、非1 的数D、大于0 的数8.________把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;9.若变量已正确定义,表达式________的值不是2。
A、2&3B、1<<1C、a= =2D、1^310.表达式sizeof("\nsum=%d\n") 的值是____。
A.8 B.9 C.10 D.1111.表达式!(x>0&&y>0) 等价于________。
A.!(x>0)||!(y>0) B.!x>0||!y>0 C.!x>0&&!y>0 D.!(x>0)&&!(y>0)12.若变量已正确定义,语句“if(a>b) k=0; else k=1;”和________等价。
C语言程序设计期末复习
C语言程序设计期末复习一、语法基础:1. 数据类型:int、float、double、char等基本数据类型,以及数组、结构体和指针等复合数据类型。
2.运算符:赋值运算符、算术运算符、逻辑运算符、关系运算符、位运算符等。
3. 控制流程:顺序结构、条件结构(if-else语句、switch语句)、循环结构(while循环、do-while循环、for循环)。
4.函数:函数的定义、函数的调用、函数的返回值、函数的参数传递等。
5. 输入输出:scanf(函数、printf(函数等。
二、常见算法:1.排序算法:冒泡排序、选择排序、插入排序、快速排序等。
2.查找算法:顺序查找、二分查找等。
3.字符串操作:字符串的输入输出、字符串的比较、字符串的拼接等。
4.数组操作:数组的输入输出、数组的遍历、数组元素的修改等。
5.结构体操作:结构体的定义、结构体的输入输出、结构体成员的访问等。
6.文件操作:文件的读取与写入、文件指针的操作等。
三、程序调试:1.语法错误:常见的语法错误包括括号不匹配、分号漏掉、变量未声明等。
调试方法是仔细检查代码,并利用编译器的错误提示信息定位错误。
2.逻辑错误:逻辑错误可能导致程序运行结果与预期不符。
调试方法是用输出语句打印变量的值,逐步分析程序的执行过程,找出错误的原因。
3.运行错误:运行错误常见的包括内存溢出、数组越界等。
调试方法是利用调试器进行单步调试,查看程序运行的过程和变量的值。
四、题目练习:1.编写一个程序,求1到100之间所有奇数的和。
2.编写一个程序,分别找出两个整数中的较大值和较小值,并输出。
3.编写一个程序,判断一个年份是否为闰年。
4.编写一个程序,计算输入的数的阶乘。
如果输入的数为负数,则输出错误信息。
5.编写一个程序,将输入的字符串反转。
以上只是一些简单的例子,针对期末复习,建议从课堂上的示例题和作业题进行更多实践,加深对C语言程序设计的理解和掌握。
C语言期末复习资料(重要)
C语言期末复习资料(重要)(注:本文档参考答案中“↙”代表回车换行,“□”代表空格,程序代码中省略了# include <stdio.h>)一、基础知识和顺序结构(一)选择题1.以下不正确的C语言标识符是A.ABCB.abcC.a_bcD.ab.c2.以下正确的C语言标识符是A.%xB.a+bC.a123D.test!3.一个C语言程序的执行是从。
A.main( )函数开始,直到main( )函数结束B.第一个函数开始,直到最后一个函数结束C.第一个语句开始,直到最后一个语句结束D.main( )函数开始,直到最后一函数结束4.在C语言程序中,main函数的位置。
A.必须作为第一个函数B.必须作为最后一个函数C.任意D.必须放在它所调用的函数之后5.一个C语言程序是由。
A.一个主程序和若干个子程序组成B.一个或多个函数组成C.若干过程组成D.若干子程序组成6.下列四个叙述中,错误的是_______________。
A.一个C源程序必须有且只能有一个主函数B.一个C源程序可以含零个或多个子函数C.在C源程序中注释说明必须位于语句之后D.C源程序的基本结构是函数7.编辑程序的功能是。
A.建立并修改程序B.将C源程序编译成目标程序C.调试程序D.命令计算机执行指定的操作8.C编译程序是。
A.C语言程序的机器语言版本B.一组机器语言指令C.将C源程序编译成目标程序的程序D.由制造厂家提供的一套应用软件9.以下叙述不正确的是____________。
A.分号是C语句的必要组成部分B.C程序的注释可以写在语句的后面C.函数是C程序的基本单位D.主函数的名字不一定用main表示10.C语言中允许的基本数据类型包括_______。
A.整型、实型、逻辑型B.整型、实型、字符型C.整型、字符型、逻辑型D.整型、实型、逻辑型、字符型11.C语言中能用八进制表示的数据类型为________。
A.字符型、整型B.整形、实型C.字符型、实型、双精度型D.字符型、整型、实型、双精度型12.下列属于C语言合法的字符常数是___________。
C语言期末复习资料
所有单选题1、C语言中下列叙述正确的是______。
A:不能使用do-while语句构成的循环B:do-while语句构成的循环,必须用break语句才能退出C:do-while语句构成的循环,当while语句中的表达式值为非零时结束循环D:do-while语句构成的循环,当while语句中的表达式值为零时结束循环答案:D评析:本题的考查点是do-while语句。
选项A是错误的,C语言支持do-while语句;选项B 是错误的,do-while构成的循环,当while语句中的表达式值为零时结束循环,而不是非零;选项C也是错误的。
故本题答案为D。
知识点:知识点/循环结构程序设计/WHILE和DO WHILE 循环结构2、以下选项中属于C语言的数据类型是______。
A:复数型B:逻辑型C:双精度型D:集合型答案:C评析:本题的考查点是C语言的数据类型。
C语言的数据类型分为基本类型,构造类型,指针类型,空类型四大类。
其中,基本类型分为整型,字符型,实型三类。
实型又称浮点型,包括单精度型和双精度型两种类型。
故本题答案为C。
知识点:知识点/数据类型及其运算/C的数据类型及其定义方法3、下列描述中不正确的是______。
A:字符型数组中可以存放字符串B:可以对字符型数组进行整体输入、输出C:可以对整型数组进行整体输入、输出D:不能在赋值语句中通过赋值运算符"="对字符型数组进行整体赋值答案:C评析:本题的考查点是对数组的理解。
C语言规定只能逐个引用数组元素而不能一次引用整个数组。
字符数组的输入、输出可以将整个字符串一次输入或输出。
所以,选项C的说法是不正确的。
故本题答案为C。
知识点:知识点/基本语句/数据的输入与输出,输入输出函数的调用4、以下程序的输出结果是______。
main(){ int x=10,y=10,i;for(i=0;x>8 ;y=++i)printf("%d %d ",x--,y);}A:10 1 9 2B:9 8 7 6 C:10 9 9 0D:10 10 9 1答案:D评析:本题的考查点是for循环语句。
C语言试题及答案3
printf("%d,%d\n",a[0],a[1]); } 5,9 15. #include <stdio.h> int b=3; int fun(int *a) { b+=*a;
for(y=1,x=1; y<=20;y++) { if(x>=8) break;
if(x%2==1){ x+=5; continue ; } x-=3; } printf("x=%d, y=%d\n",x,y);
第 5页
} 运行结果:x=8,y=4 7. #include <stdio.h>
void main() { char x[]="language";
A)5 11 B)1 9 C)5 9 D)有错误
15. 已知 char b[5],*p=b; ,则正确的赋值语句是
A)b=“abcd” ; B)*b=“abcd”; C) p=“abcd”; D)*p=“abcd”;
16. 用数组名作为函数调用时的实参,则实际传递给形参的是
A)数组的第一个元素值
B)数组中全部元素值
5.#include <stdio.h> void main() { int x=3,y=4; int j; for(j=1 ; y>0 ; y -- ) j=j*x; printf(“j=%d\n”,j); }
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1.C程序的源程序由预处理命令和( )组成。
(A)函数(B) 语句(C) 保留字(D) 标识符2. 下面程序段中,与if(x%2)中的x%2所表示条件等价的是( )。
scanf("%d",&x);if(x%2) x++;(A)x%2==0 (B) x%2!=1 (C) x%2!=0 (D) x%2==13. 执行下面的C语句序列后,变量b的值是( )。
int a,b,c; a=b=c=1; ++a||++b&&++c;(A) 错误(B) 0 (C) 2 (D) 14. 设有C语句int a[3][4];,则每次移动过a数组一行元素的指针变量定义形式是( )。
(A)int *p; (B)int **p;(C)int (*p) [4]; (D)int *p[4];5.设有整型变量a, 实型变量f,双精度型变量x,则表达式10+'b'+x*f值的类型为( )。
(A) int (B) float (C) double (D) 不能确定6.C语言中规定,函数调用中用简单变量做实参时,它和对应形参之间的数据传递方式是( )。
(A)地址传递(B)单向值传递(C)有实参传给形参,再由形参传回给实参(D)由用户指定传递方式7.下面程序的输出是()。
#include <stdio.h>void main(){int x=10,y=3;printf("%d\n",y=x/y);}(A)0 (B)1 (C)3 (D)不确定的值8.执行下面的程序段后,B的值为()。
int x=35;char z='A';int B;B=((x&15)&&(z<'a'));(A) 0 (B) 1 (C) 2 (D) 39.以下程序的输出结果为()。
#include <stdio.h>void main(){int i=0;for(;;)if(i++==5)break;printf("%d\n",i);}(A) 0 (B) 5 (C) 6 (D) 前3个选项都错10.已知:char s[4] = "cba"; char *p; 执行语句序列p =s;printf("%c\n",*p+1);后,其输出为()。
(A)c (B)b (C)a (D)d11.运行完下列程序后,在屏幕上的内容是()。
#include <stdio.h>void main(){int a=0;a+=a=12;printf ("%d\n",a);}(A)0 (B)6 (C)12 (D)2412.已知:int x = 1, y = 2, z =0,则执行z=x>y?(10+x,10-x):(20+y,20-y)后, z的值为()。
(A)11 (B)9 (C)18 (D)2213. 若已定义x和y为double类型,则表达式x=2,y=x+10/4 的值是( ) 。
(A) 2 (B) 4 (C) 4.0 (D) 4.514.以下程序的输出结果是()。
#include <stdio.h>int x=3,y=4;void main( ){int x=0;x+=y++;printf("%d",x);}(A)3 (B) 4 (C) 5 (D) 615.在下面C语言的函数说明语句中,正确的是()。
(A) int fun(int x, int y); (B) int fun(int x,y);(C) int fun(x,y); (D)int fun(int x; int y);16.有定义:int x,y=10,*p=&y; ,则能使得x的值也等于10的语句是()。
(A) x=p; (B) x=&p; (C) x=&y; (D) x=*p;17.有定义:int a[5][4], (*p)[4]=a;,则*(*(p+2)+3)等于()。
(A) a[2][0] (B) a[2][1] (C) a[2][2] (D) a[2][3]18.有定义:char* s="\t\"Name\\Address\"";,那么strlen(s)等于()。
(A) 15 (B) 16 (C) 17 (D) 1819.设有定义:int m=1,n= -1;则执行语句printf("%d\n",m--&&++n);后的输出结果是( )。
(A) –1 (B) 0 (C) 1 (D) 220.设有C语句:struct T{ int n; double x; }d,*p;,若要使p指向结构体变量中的成员n,正确的赋值语句是( )。
(A)p=&d.n (B)*p=d.n(C)p=(struct T *)&d.n (D)p=(struct T *)d.n21.假设有int x=11; 则表达式(x++ * 1/3) 的值是()。
(A) 3 (B) 12 (C) 11 (D) 022.设有定义:char *s="\t\"Name\\Address\"\n";,那么strlen(s)等于()。
(A) 15 (B) 16(C) 17 (D) 1823.若有语句#define f(x,y) x+y及int a=2,b=3;则执行printf("%d",f(a,b)*f(a,b)) 后输出的值为( )。
(A)36 (B)25 (C)11 (D)1324.对于基类型相同的两个指针变量之间,不可进行的运算是()。
(A)== (B)= (C)+ (D)–25.若程序中需要表示关系x≥y≥z,应使用C语言表达式为( )。
(A)(x>=y)&&(y>=z) (B)(x>=y)AND(y>=z)(C)(x>=y>=z) (D)(x>=y)&(y>=z)26.若有C语句int k=5; float x=1.2;则表达式(int)(x+k)的值是()。
(A)5 (B)6.2 (C)7 (D)627.设有定义:int x,*p;,能使指针变量p指向变量x的语句是()。
(A) *p=&x; (B) p=&x;(C) *p=x; (D) p=*&x;28.在执行语句if((x=y=2)>=x&&(x=5)) y*=x;后变量x、y的值应分别为()。
(A) 2、2 (B) 5、2(C) 5、10 (D) 执行时报错29.下面程序执行后输出为( )。
#include<stdio.h>void main(){int x,n;for(n=10,x=0;n=0;x++,n--);printf("%d\n",x);}(A) 程序无限循环无输出(B) 10 (C) 1 (D)030.下面程序执行后输出为( )。
#include<stdio.h>void main(){int x=1,y=1,z;z=1||++x && y--;printf("\n%d,%d,%d",x,y,z);}(A) 1,1,1 (B) 2,0,1 (C)2,1,1 (D)2,0,0 31.下面程序执行后输出为( )。
#include<stdio.h>void main(){enum weekday {sun,mon=3,tue,wed,thu};enum wddkday day;day=wed;printf("%d\n",day);}(A)5 (B)6 (C)4 (D)编译时出错32.下面程序执行后输出为( )。
#include<stdio.h>void main(){ int a;printf("%d\n",(a=3*5,a*4,a+5));}(A)65 (B)20 (C)15 (D)1033.下面程序执行后输出为( )。
#include<stdio.h>void main(){struct { int x,y;}d[2]={{1,3},{2,7}};printf("%d\n",d[0].y/d[0].x*d[1].x);}(A)0 (B)1 (C)3 (D)634. 下面程序执行后输出为( )。
#include<stdio.h>int f(int n){ if(n==1) return 1;else if(n==2) return 2;else return f(n-1)+f(n-2);}void main(){ printf("%d\n",f(4));}(A) 1 (B) 2 (C) 3 (D) 535.下面程序执行后输出为( )。
#include<stdio.h>void main(){ union{ int short x;//32位系统中,短整型数据占2个字节char ch[2];}u;u.x=100;u.ch[0]='a',u.ch[1]=0;printf("%x\n",u.x);}(A)100 (B) 97 (C) 61 (D) 036.设有int a=0,b=5,c=2,x=0;下面可以执行到x++的语句是()。
(A)if(a) x++(B)if(a=b) x++;(C)if(a>=b) x++; (D)if(!(b-c)) x++;37.设有下列C语句,则下面叙述正确的选项是()。
typedef struct{ int n;char ch[8];}Stt;(A)Stt是结构体变量名(B)Stt是结构类型名(C)typedef struct是结构体类型名(D)struct是结构体类型名定义结构类型的关键字38.下面程序执行后输出为( )。
#include <stdio.h>Void main (){int a=5,*p1,**p2;p1=&a,p2=&p1;(*p1)++;printf("%d\n",**p2);}(A)5 (B)4 (C)6 (D)不确定39.表达式k=(12<10)?4:1?2:3的值为()。
(A) 1 (B) 2 (C) 3 (D) 440.若fp是指向某文件的指针,且已读到该文件的末尾,则C标准函数feof(fp)的返回值是()。