C语言总复习
C语言复习60题
01计算机本身最擅长的能力是?A、推理B、想像C、重复D、分析正确答案: C、重复。
02 计算机(CPU)能够直截了当运行人类编写的程序A、√B、×正确答案: B、×、03编程语言是与计算机交谈的语言A、√B、×正确答案: B、×。
04 关于C语言,以下讲法错误的有:A、C语言是与Unix操作系统一同发展起来的B、C语言不能写图形界面的软件C、C语言一般是编译执行的D、C语言诞生于1970年代正确答案: B、C语言不能写图形界面的软件、06 IDE的中文翻译是什么?正确答案是:集成开发环境、07 给定:int a,b; 以下哪些scanf的使用是正确的?A、scanf("%d”,&a); scanf(”%d",&b);B、scanf(”%d %d”, &a, &b);C、scanf("%d, %d", &a,&b);D、scanf("%d%d”, a, b);正确答案: A、scanf("%d”,&a); scanf(”%d", &b);。
B、scanf(”%d%d", &a, &b);、C、scanf(”%d,%d”,&a,&b);、08 以下哪些是有效的变量名?A、mainB、4everC、monkey—kingD、__int正确答案:A、main。
D、__int。
09给定:inta,b; scanf("%d %d", &a, &b);则以下哪些输入方式是正确的?A、1 2B、1,2C、1(回车)2D、1、2正确答案:A、1 2。
C、1(回车)2、10给定以下代码段:inta,b=0;则a的初始值是0A、√B、×正确答案: B、×、11写出下式的运算结果:10/3、0*3 正确答案是:10、0。
12写出下式的运算结果:10/3*3、0正确答案是:9、0。
《C语言》总复习题
《C语言》课程综合复习资料一、单项选择1. 若有如下语句: int *p1,*p2; 则其中int所指的是(D )A. p1的类型B. *p1和*p2的类型C. p2的类型D. p1和p2所能指向变量的类型2. 下列程序段的输出结果是(C )x=9; while(x>7) {printf(“*”);x--;}A. ****B. ***C. **D. *3. 下列变量的定义及赋值正确的是(C)A. int i=0;j;B. char c=”A”;C. double x,y,z; x=y=z=100;D. float a=b=100;4. 设有语句:int x=10;x = x -= x - x;,则执行语句后,x的值为(B )A. 30B. 20C. 10D. 405. 设有语句:float x=1,y; y=x 3/2; 则y的值是(C )A. 1B. 2C. 2.0D. 2.56. 设有如下定义和执行语句,其输出结果为(A )int a=3,b=3; a = --b + 1; printf(“%d %d”,a,b);A. 3 2B. 4 2C. 2 2D. 2 37. 设有两字符串“Beijing”、“China”分别存放在字符数组str1[10],str2[10]中,下面语句中能把“China”连接到“Beijing”之后的为(C )A. strcpy(str1,str2);B. strcpy(str1, “China”);C. strcat(str1,“China”)D. strcat(“Beijing”,str2);8. 设有定义语句:char str[][20]={""Hello"",""Beijing""},*p=str; 则printf(""%d\n"",strlen(p+20)); 输出结果是(C )A. 0B. 5C. 7D. 209. 设有定义int a[ ]={1,5,7,9,11,13},*p=a 3;则*(p-2),*(a 4)的值是(A )C. 5 9D. 有错误10. 设有定义:int x=0,y=1,z=1;则运行表达式:x=y >z--后,x,y,z的值分别是(D )A. 1,1,1B. 1,2,0C. 0,1,1D. 0,2,011. 设有定义:int x=12,n=5; 则表达式x%=(n%2) 的值为(A )A. 0B. 1C. 2D. 312. 设有定义int a=3,b=4,c=5; ,则以下表达式中,值为0的表达式是(D )A. a&&bB. a<=bC. a||b c&&b-cD. !((a<b)&&!c||1)13. 设有定义int a[ ]={1,5,7,9,11,13}, *p=a 3; 则*(p-2) , *(a 4) 的值是(A )A. 5 11B. 1 9C. 5 9D. 有错误14. 设有定义char *p=“abcde\0fghjik\0”; 则printf(“%d\n”,strlen(p));输出结果是(D )A. 12B. 15C. 6D. 515. 设有int x=11;则表达式(x *1/3)的值是(A )A. 3B. 4C. 11D. 1216. 设a=3,b=4,c=-5,则逻辑表达式:a || b c && b==c 的值是(A )A. 1B. 0C. 非0D. 语法错17. 若有以下定义:int a[10],*p=a; 则*(p+3)表示的是(B )A. 元素a[3]的地址B. 元素a[3]的值C. 元素a[4]的地址D. 元素a[4]的值18. 若有以下定义:char s[20]= "programming",*ps=s;则不能代表字符g的表达式是(A )A. ps 3D. ps =3,*ps19. C语言中,函数返回值的类型是由(D )A. return语句中的表达式类型决定B. 调用函数的主调函数类型决定C. 调用函数时的临时类型决定D. 定义函数时所指定的函数类型决定20. C语言提供的合法关键字是(D )A. swicthB. chaC. CaseD. default二、读程序题1. "#include <stdio.h>void main(){ int a=4,x=3,y=2,z=1;printf(""%d\n"",(a<x ? a : z<y ? z : x)); }"2. "#include <stdio.h>void main(){ int x=12,y=0;if(x>=0){ if(x>0) y=10; }else y=-10;printf(“y=%d\n”,y);}"3. "#include <stdio.h>void main(){ int k=1;switch(k){ case 0: printf(""A""); break;case 1: printf(""B"");case 2: printf(""I"");case 3: printf(""G""); break;default: printf(""E"");}}"4. "#include <stdio.h>#define S(x) x*xvoid main(){int a,k=3,m=1;a=S(k+m);printf(""%d"",a);}"5. "#include <stdio.h>int fun(int a, int b){ if(a>b) return(a);else return(b);}void main(){ int x=3, y=8, z=6, r;r=fun(fun(x,y), 2*z);printf(""%d\n"", r);}"6.#include <stdio.h&>void main(){ int k=4,n=0;for(;n<k;){ n++;if(n%3!=0) continue;k- -;}printf(""%d,%d\n"",k,n);}三、编程题1. 写一个判断素数的函数。
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语言2
《C语言》总复习二一、选择题:1.一个C语言程序至少包含一个()函数。
A.printfB.scanfC.mainD.自定义2.一个完整的C程序包含一个或多个函数。
对于函数main() ,不正确的说法是()。
A.它是程序开始运行的第一个被调用的函数B.没有它的程序就无法运行C.它是唯一不缺少的函数D.又没有它都行3.C语言中,复合语句的构成是将一系列语句置于()。
A. begin和end 之间B.方括号“[]”之间C.圆括号“()”之间D.花括号“{}”之间4.不合法的C语言整型常量是()。
A.-0128 B.0x35 C.123L D.300005.以下程序段的输出结果是()。
int x=3; do { printf(“%3d”,x - =2); } while(!(--x));A.1B.3 0C.1 -2D.死循环6.设x,y均为整型常量,且x=10, y=3,则语句printf(“%d,%d\n”,x--,y--);的输出结果是()。
A.10,3B.9,3C.9,2D.10,27.以下程序的输出结果是()。
main(){ int a [4][4]={{1,3,5},{2,4,6},{3,5,7}};printf(“%d%d%d%d\n”,a[0][3],a[1][2],a[2][1],a[3][0]); }A.0650B.1470C.5430D.输出值不定8.以下程序的输出结果是()。
int a ,b; void fun() { a=100;b=200;}main(){int a=5,b=7;fun();printf(“%d,%d\n”,a,b);}A.100,200B.5,7C.200,100D.7,59.执行下面的程序后,a的值为()。
{int a ,b; for (a=1,b=1;a<=100;a++){ if(b>=20) {b+=3; continue;} b-=5; } }A.7B.8C.9D.1010.若有以下说明,int a [3][5]={{1,2},{3,4},{5,6}};则数值为6的表达式是()。
C 语言总复习
一、判断题。
1、#include 、#define、scanf和printf都不是C语句。
(对)//#号开头的,是C语言的命令,最后不加分号“;”。
scanf和printf是输入和输出函数,不是C 语言的语句-----C语言里没有输入和输出语句,是由函数(如:这里的scanf 和printf函数)来实现输入和输出的。
2、一个include命令只可以指定一个被包含的文件。
(对)//include命令一次只可以指定一个包含的文件,要包含多个文件要用多个include命令3、参加位运算的数据必须是整型的数据。
(对)//如:不能使float类型的数据4、若有int i=9, j=3; 则执行完i*=j+10; 后i的值为20。
(错)//i*=j+10=>i=i*(j+10)=9*(3+10)=9*135、9&3+11的值是12。
(错)// 9&3+11=9&(3+11)=>1001&1110=1000=>86、关系运算符>=与==的优先级相同。
(错)//关系运算符的前4个(>、>=、<、<=)的优先级相同。
后两个(==、!=)的优先级相同,并且低于前4个的优先级。
7、若i=5,则printf(“%d”,-i++);输出的值为-6。
(错)//++在后面是先将-i打印,再将i加1。
如果是printf(“%d”,- ++i);则输出的值就为-6.8、语句printf(“%f%%”,10.0/3);输出为3.333333。
(错)//10.0/3确实是3.333333,但是这里还有%%,所以输出的结果应该是3.333333%9、若有int i=20, j=0;则执行完语句if(j=0)i++;else i--;i的值为21。
(错)//注意这里是j=0,一个等号是赋值,也就是j=0,这里是假,所以应该执行else i—部分,i的值为19.10、若有定义和语句:int a[3][3]={{3,5},{8,9},{12,35}}, i, sum=0;for(i=0;i<3;i++) sum+=a[i][2-i];则sum=21。
(完整版)C语言各章节复习题(带答案)
一、C语言概述练习题选择1.一个C程序的执行是从。
A) 本程序的main函数开始,到main函数结束B) 本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C) 本程序文件的第一个函数开始,到本程序main函数结束D) 本程序的main函数开始,到本程序文件的最后一个函数结束2.以下叙述不正确的是。
A) 一个C源程序必须包含一个main函数 B)一个C源程序可由一个或多个函数组成C) C程序的基本组成单位是函数 D) 在C程序中,注释说明只能位于一条语句的后面3.以下叙述正确的是。
A) 在对一个C程序进行编译的过程中,可发现注释中的拼写错误B) 在C程序中,main函数必须位于程序的最前面C) C语言本身没有输入输出语句 D) C程序的每行中只能写一条语句4.一个C语言程序是由。
A)一个主程序和若干个子程序组成 B) 函数组成 C) 若干过程组成 D) 若干子程序组成5.计算机高级语言程序的运行方法有编译执行和解释执行两种,以下叙述中正确的是。
A) C语言程序仅可以编译执行B) C语言程序仅可以解释执行C) C语言程序既可以编译执行又可以解释执行D) 以上说法都不对6.以下叙述中错误的是。
A) C语言的可执行程序是由一系列机器指令构成的B)用C语言编写的源程序不能直接在计算机上运行C)通过编译得到的二进制目标程序需要连接才可以运行D)在没有安装C语言集成开发环境的机器上不能运行C源程序生成的.exe 文件7.以下叙述正确的是。
A) C语言程序是由过程和函数组成的B) C语言函数可以嵌套调用,例如:fun(fun(x))C) C语言函数不可以单独编译 D) C语言中除了main函数,其他函数不可作为单独文件形式存在二、数据类型、运算符与表达式选择.1.若x、i、j、k都是int型变量,则计算下面表达式后,x的值为x=(i=4,j=16,k=32) A) 4 B) 16 C) 32D) 522.下列四组选项中,均不是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语言程序设计(郑玲)总复习
总 复 习1、 C的基本数据类型1. 基本数据类型要求掌握:变量的数据类型、变量的存储类别、变量的名字、变量的定义形式、变量的地址、变量的值(1) 数据类型的作用:决定给变量分配内存的大小、并且规定一组允许的操作。
如:int x; x的空间大小为4个字节,x可以做加、减、乘、除运算,不能做求余数的运算。
(2) 整型有符号的整型:int(4) short(2) long(4)无符号的整型:unsigned int unsigned short unsigned long1 整型常量的表示形式:十进制(如:82)、八进制(如:017)、十六进制(如:0xab7)、长整型常量(如:12l、12L)2 整型变量的定义形式:如int a; unsigned long b;3 整型变量存放整数的范围:如:short int x; x的范围是-32768-32767,unsigned short int x; x的范围是0-655354 整数存放的是精确值。
(3) 实型实型分为:单精度实型(4)、双精度实型(8)1 实型常量的表示形式:小数形式(如:1.23或1.23f)、指数形式(由三部分组成。
如:1.23e-8、0.123E10),实型常量缺省为双精度常量。
2 实型变量的定义形式:如:float x; double y;3 实型常量存放在实型变量中不是精确值,是一个近似值。
4 单精度实数的有效位数为7位,双精度实数的有效位数为15位。
(4) 字符型1 字符常量:如:’a’,’?’,’*’ 占1个字节2 字符串常量:如:”a”,”中国”,在内存中占字符个数+1个字节。
最后一个字节存放的是字符串结束标记’\0’。
3 字符变量的定义形式:char x;4 字符变量只能存放一个字符。
实际存储的是字符的ASCII码的二进制。
5 字符串常量不能存放在字符变量中,只能存放在字符数组中。
如:char c=’a’; (对) char c=”a”;(错)6 字符数据与整型数据在0-127的范围内是通用的。
C语言知识点复习梳理
C语言知识点复习梳理C语言是一种通用的高级编程语言,它是许多编程新手的第一门语言。
复习C语言的知识点可以帮助我们巩固基础,为更深入的学习和应用打下坚实的基础。
接下来,我将对C语言的一些重要知识点进行梳理和复习。
1.语法结构:C语言的语法结构主要包括变量、数据类型、运算符、控制语句和函数等。
变量表示存储数据的容器,数据类型指定了变量可以存储的数据的类型。
运算符用于进行各种运算操作。
控制语句用于控制程序的执行流程。
函数是程序的基本单元,用于封装可重复使用的代码块。
2.基本数据类型:C语言提供了一些基本数据类型,包括整型、浮点型、字符型和指针类型等。
整型包括short、int、long和long long等;浮点型包括float和double等;字符型包括char类型;指针类型用于表示内存地址。
3.常量和变量:常量是程序中固定不变的值,可以使用const关键字进行定义;变量是可以改变的值,使用变量可以用于存储和操作数据。
4.运算符:C语言提供了一系列的运算符,包括算术运算符、关系运算符、逻辑运算符、赋值运算符和位运算符等。
运算符用于对数据进行各种运算操作。
5.控制语句:C语言提供了三种基本的控制语句:顺序结构、分支结构和循环结构。
顺序结构按照代码的先后顺序执行;分支结构使用if语句和switch语句根据条件进行不同的执行分支;循环结构使用for循环、while循环和do-while循环等进行重复执行。
6.数组和字符串:数组是一种用于存储多个相同类型数据的容器,可以通过索引访问数组中的元素。
字符串是字符数组的特例,用于存储和操作文本数据。
7.函数:函数是C语言中的基本代码块,用于封装可重复使用的代码。
函数可以接受参数并返回值,我们可以根据需要调用不同的函数来完成特定的任务。
8.结构体和联合体:结构体是一种可以包含多个不同类型成员的数据类型,用于组织和管理相关数据;联合体是一种可以持有不同类型数据的数据类型。
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_。
总复习
思考题:想一想下列两条语句输出结果分别是什么? i=3;while(i++<4) printf(“%d”,i); i=3;while(++i<4) printf(“%d”,i);
2)结合性:右结合。如i=3;a=-i++;printf(“%d”,a);
4、赋值(复合赋值)运算符和赋值表达式
1)书写形式:=、+=、-=、*=、/=、%=。 2)运算规则: =:将右边的常量、变量、表达式赋给左边的一个变量。 a*=3+5相当于a=a*(3+5) 3)结合性:右结合。如:a=3;b=4;c=5;d=0;a=b=c=d; 知识补充:可以给变量赋予不同数据类型的常量。如: int a=3.9;float b=„A‟;
三、运算符和表达式
C语言一共有34个运算符,要求大家在记这些运算符时从 以下三方面记: • 运算符的书写形式; • 运算符的运算规则; • 优先级和结合性; 任何级别的c语言考试,都有判断表达式结果的试题,主 要检测考生对运算符的运算规则、优先级和结合性掌握的 熟练程度,所以本部分内容属重点内容。
9、条件运算符(表达式1?表达式2:表达式3)
执行过程:先求解表达式1,如果表达式1为真,则整个表达 式取表达式2的值,否则取表达式3的值。 结合性:右结合。 例如:判断下列代码的用途。 ① char ch; scanf(“%d”,&ch); ch=‘A’<ch&&ch<‘Z’?ch+32,ch; ② m=a>b?a:b>c?b:c>d?c:d;
大一c语言考试复习知识点
大一c语言考试复习知识点C语言是计算机科学专业学生必备的编程语言之一,它是一种通用的、高效的、面向过程的编程语言。
作为大一学生,在C语言的学习过程中,我们需要掌握一些基本的知识点,以便能够顺利通过考试。
本文将为大家总结一些大一C语言考试的复习知识点,以供参考。
一、数据类型和变量1. int类型:表示整数,用于存储不超过某个特定范围的整数。
2. float类型:表示单精度浮点数,用于存储小数。
3. char类型:表示字符,用于存储单个字符。
4. double类型:表示双精度浮点数,比float类型精确度更高。
二、基本运算符1. 算术运算符:加法、减法、乘法、除法、求余等。
2. 关系运算符:大于、小于、等于、不等于等。
3. 逻辑运算符:与、或、非等。
4. 赋值运算符:将某个值赋给一个变量。
5. 条件运算符:根据某个条件成立与否,返回两个值中的一个。
三、控制语句1. if语句:根据某个条件的真假来执行相应的代码块。
2. for循环:用于循环执行固定次数的代码。
3. while循环:在满足某个条件的情况下,循环执行代码。
4. switch语句:根据某个变量的值来选择执行的代码块。
四、函数1. 函数的定义和调用:如何定义一个函数,并在程序中进行调用。
2. 函数参数传递:值传递和引用传递的区别。
3. 递归函数:函数调用自身的特殊形式。
五、数组1. 数组的定义和初始化:如何定义一个数组,并给数组赋初值。
2. 数组的访问和遍历:如何访问数组中的元素,并对数组进行遍历。
3. 多维数组:二维数组和多维数组的定义与使用。
六、指针1. 指针的定义和初始化:如何定义一个指针,并将其初始化。
2. 指针的运算:指针的加法、减法、比较等运算。
3. 指针与数组:指针和数组之间的关系。
七、字符串1. 字符串的定义和初始化:如何定义一个字符串,并给字符串赋初值。
2. 字符串的操作:求字符串长度、字符串比较等操作。
3. 字符串的输入输出:如何输入和输出字符串。
期末复习 C语言知识点归纳
期末复习C语言知识点归纳一、概述部分主要考察知识点:C程序的结构特点;C程序的扩展名;程序的开发过程;函数的构成;C语言使用的基本符号:ASCII字符集;标识符的命名规则;关键字、用户自定义标识符1.C程序的基本模块是函数,一个C语言源程序可以由一个或多个函数组成,有且只有1个main()函数,可以放在程序中的任何位置.2.函数的定义是平行的,不能嵌套定义,但可以进行嵌套调用。
3.一个C程序不论有几个函数,都是从main()函数开始执行.4.C源程序文件的扩展名".c"。
5.VC++6.0下C语言程序的完整实现过程包括4个基本步骤:●编辑形成源文件(.c)●编译,形成目标文件(.obj)●链接,形成可执行文件(.exe)●运行.6.函数的构成:变量定义、语句、注释7.标识符按照C语言所定义的规则来命名的符号,用作变量名、数组名、函数名等,系统定义的关键字也遵循该规则。
规则:由字母、数字、下划线组成,第一个字符必须是字母或下划线。
C语言中的标识符分:关键字、用户定义标识符例如:area、a234、_1234为合法标识符6x、a-b、a+b为非法标识符注意:标识符区分大小写。
PRINTF和printf是不同的标识符用户自定义的标识符应避开C语言的关键字及库函数名。
4.c语言的32个关键字:看附表,留印象二、数据类型、常量、变量、表达式注意:常用数据类型的关键字;常量的表达形式;变量的定义及赋值;各类表达式的计算规则;不同数据类型数据混合运算时的类型转换;典型问题:数据的混合计算、整数的分解、数据交换1.数据类型c语言中,整型、实型、字符型是最基本的数据类型.此外还有构造类型,如数组,结构体,共用体等。
2.常量指在程序运行中,其值不能被改变。
分为整型常量、实型常量、字符常量、字符串常量。
●整型常量C语言中主要有十进制、八进制、十六进制等:8进制以0引导,16进制以0x或0X引导,十进制不能以0开头.十进制例如12、-3、32767等。
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语言程序设计》
七、完善程序(每空3分,共15分)
下列程序从键盘上输入一个字符串,利用sCopy 函数完成字符串的复制,并在主函数中输出复制 之后的字符串,请将程序补充完整。 char *to,char *from void sCopy (_____________________) { while((____________)!=‟\0‟) *to=*from { to++; from++; } }
《C语言程序设计》
三、判断(每小题1分,共10分)
1.( × )C程序经过编译、连接后没有错误,该 程序肯定是正确的。 2.( × )任何情况下,字符型数据和整型数据 都是通用的。 3.( √ )任何for语句都可以改写成while语句。 4.( × )表达式5/2*5的值为12.5。 5.( × )C语言函数可以嵌套定义,也可以嵌套 调用。 6.( √ )实参可以是常量、变量或表达式,而 形参必须为变量。 7.( √ )若有int a[5],*p;则p=a;与p=&a[0];等 价。
C语言期末总复习
期末考试题型、分数及示例
C语言复习
C语言复习一、判断题:1.‟\x72‟、‟\n‟、‟\\‟都是字符常量。
(y )。
2.若有说明int c[4][50];则gets(c[1]);是正确的C命令语句。
(y)3.若有变量定义long data=10000000;则使用命令printf(”%d”,data);实现变量值输出是错误的命令语句,无法通过编译。
(n)4.若有变量定义int a=1;表达式a- -?+ +a:- -a的值为1。
(y)5.若有变量定义double x=-3.4;循环语句while (x){ x = x>0; }是错误命令。
(n)6.定义数组char s[ ]={“abc“},则数组s的元素个数为3。
(n)7.int *p=&a ,a=0;是正确的C变量定义语句。
(n )8.C语言程序从main函数开始执行,所以main函数必须写在其他被调用的函数之前。
( n )9.表达式7=3+4不正确。
(y)10.字符数组char str[ ]="abcd"; 有5个数组元素( y )11.while 1 i,j; 一定是错误的C语句。
(y )12.for( ; ; )S中的语句S必执行无穷多次。
(n)13.用字符型指针变量p作为函数void fa(char *pa)的实际参数时,应采用以下的命令格式fa (*p ); ( n )14.sub()和Sub( )是不同的函数(y)15.在C程序中,函数中所定义的局部变量与全局变量同名时,局部变量屏蔽全局变量。
(y )16.全局外部变量定义命令必须写在函数之外。
( y )17.指针变量算术运算只能可作+、—运算。
( y )18.如有定义float a[10]; 可定义表达式a=a+1。
(n )19.在逻辑表达式的计算中,必须所有的逻辑远算符都被执行后,才会结束表达式的计算(n)20.数组名作为函数实际参数,传送的是地址(y)21.若变量pointer是指针变量,命令pointer=0x2000; 是正确的赋值命令. (n)22.int c[2][ ]={{1,2},{3,4}}; 是正确的二维数组定义命令。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
C 语言总复习C六月,奋战CC语言,大家一起加油啦~~~~~~~~~~~!!总体上必须清楚的: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)合法的用户标识符考查:合法的要求是由字母,数字,下划线组成。
有其它元素就错了。
并且第一个必须为字母或则是下划线。
第一个为数字就错了。
关键字不可以作为用户标识符号。
main define scanf printf 都不是关键字。
迷惑你的地方If是可以做为用户标识符。
因为If中的第一个字母大写了,所以不是关键字。
2)实型数据的合法形式:2.333e-1 就是合法的,且数据是2.333×10-1。
考试口诀:e前e后必有数,e后必为整数。
.3)字符数据的合法形式::'1' 是字符占一个字节,"1"是字符串占两个字节(含有一个结束符号)。
'0' 的ASCII数值表示为48,'a' 的ASCII数值是97,'A'的ASCII 数值是65。
4)整型一般是两个字节, 字符型是一个字节,双精度一般是4个字节:考试时候一般会说,在16位编译系统,或者是32位系统。
碰到这种情况,不要去管,一样做题。
掌握整型一般是两个字节, 字符型是一个字节,双精度一般是4个字节就可以了。
5)转义字符的考查:在程序中int a = 0x6d,是把一个十六进制的数给变量a 注意这里的0x必须存在。
在程序中int a = 06d, 是一个八进制的形式。
在转义字符中,‟\x6d‟ 才是合法的,0不能写,并且x是小写。
…\141‟ 是合法的,0是不能写的。
…\108‟是非法的,因为不可以出现8。
6)算术运算符号的优先级别:同级别的有的是从左到右,有的是从右到左。
7)强制类型转换:一定是(int)a 不是int(a),注意类型上一定有括号的。
注意(int)(a+b)和(int)a+b 的区别。
前是把a+b转型,后是把a 转型再加b。
8)表达式的考查:是表达式就一定有数值。
赋值表达式:表达式数值是最左边的数值,a=b=5;该表达式为5,常量不可以赋值。
自加、自减表达式:假设a=5,++a(是为6),a++(为5);运行的机理:++a 是先把变量的数值加上1,然后把得到的数值放到变量a中,然后再用这个++a表达式的数值为6,而a++是先用该表达式的数值为5,然后再把a的数值加上1为6,再放到变量a中。
进行了++a和a++后在下面的程序中再用到a的话都是变量a中的6了。
考试口诀:++在前先加后用,++在后先用后加。
逗号表达式:优先级别最低;表达式的数值逗号最右边的那个表达式的数值。
(2,3,4)的表达式的数值就是4。
9)位运算的考查:会有一到二题考试题目。
总的处理方法:几乎所有的位运算的题目都要按这个流程来处理(先把十进制变成二进制再变成十进制)。
例1:char a = 6, b;b = a<<2; 这种题目的计算是先要把a的十进制6化成二进制,再做位运算。
例2:一定要记住,例3:在没有舍去数据的时候,<<左移一位表示乘以2;>>右移一位表示除以2。
10)018的数值是非法的,八进制是没有8的,逢8进1。
11)%符号两边要求是整数。
不是整数就错了。
12)三种取整丢小数的情况:1、int a =1.6;2、(int)a;3、第二章1)printf函数的格式考查:%d对应整型;%c对应字符;%f对应单精度等等。
宽度的,左对齐等修饰。
%ld对应long int;%lf 对应double。
2)scanf函数的格式考察:注意该函数的第二个部分是&a 这样的地址,不是a;Scanf(“%d%d%*d%d”,&a,&b,&c); 跳过输入的第三个数据。
3)putchar ,getchar 函数的考查:char a = getchar() 是没有参数的,从键盘得到你输入的一个字符给变量a。
putchar(…y‟)把字符y输出到屏幕中。
4)如何实现两个变量x ,y中数值的互换(要求背下来)不可以把x=y ,y=x; 要用中间变量t=x;x=y;y=t。
5)如何实现保留三位小数,第四位四舍五入的程序,(要求背下来)这个有推广的意义,注意x = (int)x 这样是把小数部分去掉。
第三章特别要注意:c语言中是用非0表示逻辑真的,用0表示逻辑假的。
1)关系表达式:表达式的数值只能为1(表示为真),或0(表示假)当关系的表达是为真的时候得到1。
如9>8这个是真的,所以表达式的数值就是1;2)逻辑表达式:只能为1(表示为真),或0(表示假)a) 共有&& || !三种逻辑运算符号。
b) !>&&>|| 优先的级别。
c) 注意短路现象。
考试比较喜欢考到。
d) 要表示x 是比0大,比10小的方法。
0<X<10是不可以的(一定记住)。
< span>是先计算0要用(0<X)&&(X<10)表示比0大比10小。
< span>3)if 语句else 是与最接近的if且没有else的相组合的。
4)条件表达式:表达式1 ?表达式2 :表达式3注意是当非0时候是表达式2的数值,当为0是就是表达式2的数值。
考试口诀:真前假后。
5)switch语句:a)一定要注意有break 和没有break的差别,书上(34页)的两个例子,没有break时候,只要有一个case匹配了,剩下的都要执行,有break则是直接跳出了swiche语句。
b)switch只可以和break一起用,不可以和continue用。
第四章1)三种循环结构:a)for();while(); do- while()三种。
b)for循环当中必须是两个分号,千万不要忘记。
c)写程序的时候一定要注意,循环一定要有结束的条件,否则成了死循环。
d) do-while()循环的最后一个while();的分号一定不能够丢。
(当心上机改错)2) break 和continue的差别记忆方法:break:是打破的意思,(破了整个循环)所以看见break就退出真个一层循环。
continue:是继续的意思,(继续循环运算),但是要结束本次循环,就是循环体内剩下的语句不再执行,跳到循环开始,然后判断循环条件,进行新一轮的循环。
3)嵌套循环就是有循环里面还有循环,这种比较复杂,要一层一层一步一步耐心的计算,一般记住两层是处理二维数组的。
4) while((c=getchar())!=‟\n‟)和while(c=getchar() !=‟\n‟)的差别先看a = 3 != 2 和(a=3)!=2 的区别:(!=号的级别高于=号所以第一个先计算3!=2)第一个a的数值是得到的1;第二个a的数值是3。
考试注意点:括号在这里的重要性。
第五章函数:是具有一定功能的一个程序块;1) 函数的参数,返回数值(示意图):main(){int a = 5,b=6,c;c = add(a,b);printf(“%d”,c);}调用函数a,b是实参整个函数得到一个数值就是Add函数的返回数值。
int add ( int x, int y){int z;z=x+y;return z;}被调用函数x,y是形式参数函数返回数值是整型z就是这个add函数计算后得到的结果,就是函数返回给主程序的返回数值。
程序是在从上往下顺序执行,当碰到了函数add后,把a,b的数值穿给调用函数,程序暂时中断等待返回数值。
当得到了返回数值后,再顺序的往下执行2)一定要注意参数之间的传递实参和形参之间传数值,和传地址的差别。
(考试的重点)传数值的话,形参的变化不会改变实参的变化。
传地址的话,形参的变化就会有可能改变实参的变化。
3)函数声明的考查:一定要有:函数名,函数的返回类型,函数的参数类型。
不一定要有:形参的名称。
第六章指针变量的本质是用来放地址,而一般的变量是放数值的。
int *p 中*p和p的差别:*p可以当做变量来用;*的作用是取后面地址p里面的数值p是当作地址来使用。
*p++ 和(*p)++的之间的差别:改错题目中很重要*p++是地址会变化。
(*p)++ 是数值会要变化。
三名主义:(考试的重点)数组名:表示第一个元素的地址。
数组名不可以自加,他是地址常量名。
(考了很多次)函数名:表示该函数的入口地址。
字符串常量名:表示第一个字符的地址。
第七章1一维数组的重要概念:对a[10]这个数组的讨论。
1、a表示数组名,是第一个元素的地址,也就是元素a[10]的地址。
2、a是地址常量,所以只要出现a++,或者是a=a+2赋值的都是错误的。
3、a是一维数组名,所以它是列指针,也就是说a+1是跳一列。
对a[3][3]的讨论。
1、a表示数组名,是第一个元素的地址,也就是元素a[10]的地址。
2、a是地址常量,所以只要出现a++,或者是a=a+2赋值的都是错误的。
3、a是二维数组名,所以它是行指针,也就是说a+1是跳一行。
4、a[0]、a[1]、a[2]也都是地址常量,不可以对它进行赋值操作,同时它们都是列指针,a[0]+1,a[1]+1,a[2]+1都是跳一列。
5、注意a和a[0] 、a[1]、a[2]是不同的,它们的基类型是不同的。
前者是一行元素,后三者是一列元素。
二维数组做题目的技巧:如果有a[3][3]={1,2,3,4,5,6,7,8,9}这样的题目。
步骤一:把他们写成:第一列第二列第三列a[0]à 1 2 3 ->第一行a[1]à 4 5 6—>第二行a[2]à 7 8 9->第三行步骤二:这样作题目间很简单:*(a[0]+1)我们就知道是第一行的第一个元素往后面跳一列,那么这里就是a[0][1]元素,所以是1。
*(a[1]+2)我们就知道是第二行的第一个元素往后面跳二列。