信息学院2011年C语言程序设计期末复习资料

合集下载

计算机期末考试复习资料 C语言复习

计算机期末考试复习资料 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简介一、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)控制语句。

信息学院2011年C语言程序设计期末复习资料

信息学院2011年C语言程序设计期末复习资料

《C语言程序设计》期末复习资料一、考试题型及其分数分布:1、单项选择题(每小题2分,共30分)2、填空题(每空1分,共20分)3、程序阅读分析题(每小题3分,共30分)4、编程题(每小题10分,共20分)二、复习要点1、构成C程序的基本单位是?函数2、字符型常量的正确使用方式。

3、合法的用户标识符是?4、强制类型转换的正确运用。

(float)(5/2)5、自增自减运算符使用要点。

6、逗号表达式值的概念及其正确运用。

(例如:已知 int a,b;执行语句a=(b=3*4,b*2),b+9;变量a的值是?)7、scanf函数多数据输入时的格式控制问题(空格或逗号的使用)"%d%d%d"是按十进值格式输入三个整数值。

输入时,在两个数据之间可以用一个或多个空格、tab 键、回车键分隔。

8、二维数组定义时下标值缺省的规则。

9、printf函数输出数据时总长度和小数位数的确定。

12d10、指向数组的指针灵活运用的问题。

(例如:已知:char s[10] ,*p=s;下列错误的表达式是:s=p+5 p=s+5 s[2]=p[3] *p=s[0])11、自增自减运算符“先用后增减,先增减后用”的问题。

12、字符串复制函数和字符数组(串)长度的概念和运用。

(例如:satic charstr[ ]=”bei jing” ;则执行下列语句后的输出结果为?printf(“%d\n”,strlen(strcpy(str,”hello!”)));另外:char a[]=”abcde”,b[]={a’,’b’,’c’,’d’,’e’};中a与b的区别和联系。

s t atic char str[]=”bei jing”;printf(“%d\n”,strlen(strcpy(str,”hello!”)));#include<stdio.h>main(){ int a,b;static char str[]="bei jing";a=strlen(str);strcpy(str,"hello!");b=strlen(str);printf("%d,%d\n",a,b);}8,6strlen()求数组中存放的字符串的长度!(不算\0)13、“循环条件”与“循环结束条件”的概念。

2011《C语言》复习提纲

2011《C语言》复习提纲

基本知识要求一、语法基础1、记住C语言常量的定义方法(#define 名称值),理解符号常量与变量的区别;2、记住C语言标识符的要求(只能由数字、英文字母、下划线组成,第一个字符不能是数字);3、理解计算机存储整数的方法(什么是补码?怎样计算?程序实现补码提取的方法?);理解计算机存储字符的方式(ASCII码),区分数字字符与数字,掌握相互转换的方法。

同时理解大小写字符的转换方法及与自然数的映射方法;4、了解(unsigned)char、(unsigned)(short)int、(unsigned)long、float、double常量表达方法,掌握怎样求各类整数范围,以及在printf及scanf中对应的格式控制符;(注意char也可以当作整数使用,用的是什么?)5、理解转义字符的含义,掌握常见转义字符:\0、\n、\t、\\、\’、\”、\ddd、\xhh;6、记住常量字符串的表示方法(与常量字符表示区别?),理解字符串在C语言中的存储方式及特点,由此掌握字符串在C语言中的访问及遍历方式。

7、理解C语言中的不同类型数据在同一个表达式中的运算规则,能手动计算简单表达式;8、理解C语言的常用运算符,掌握++、--运算符的简单使用(前置与后置的区别),掌握/和%的使用规则,掌握指针[] 与*(指针) 的关系;9、理解强制类型转换的含义及使用场合;10、理解赋值规则(注意有符号数赋给无符号变量的使用);理解复合赋值;(注意赋值号左边必须是一个存储单元,实际上常常就是一个变量);11、了解逗号运算符和三元运算符。

二、控制结构1、记住C语言中的关系运算符与逻辑运算符(注意==与!=),掌握关系和逻辑表达式的运算规则和方式;理解C语言对逻辑值的判断方式(非零作为真);2、熟练掌握if语句的使用,注意{}的使用及if-else的配对;3、理解C语言中的常用的三种循环(while、do-while和for),特别注意for循环的表达方式及循环执行流程;4、掌握for循环的常见使用方法(与一维数组、二维数组和字符结合各自的使用方式,一些数组使用的技巧);5、理解break、continue的含义及使用方式及场合(break在循环和switch中)。

C语言程序设计”期末考试复习提纲

C语言程序设计”期末考试复习提纲

2010-2011年度第二学期“C语言程序设计”期末考试复习提纲二、题例:(一)选择题:1.下列四组选项中,均是不合法的用户标识符的选项是()。

A) G S_4 int B) double 2a0 _VC) !A3 a#b do D) b-a abc Swep2.下列四组选项中,属于合法的用户标识符的选项是()。

A)for B)-XYZ C)5i D)For3. 不合法的C语言整型常量是()。

A)0xe2L B)2e3 C)18L D)0xe34. 不合法的C语言实型常量是()。

A)-123E-3.0 B)-.123 C)-1.23E-1 D)-0.1235.设char a; int b; float c; double d; 则表达式d/b+c*a值的数据类型为()。

A) char B) int C) double D) float6.设有说明:char a; int b; float c; double d; 则表达式(int)(d)/b+c*a值的数据类型为()。

A) char B) int C) float D) double7. 定义三个变量x、y、z,并分别赋初值为0 ,能实现该功能的语句是()。

A)int x=0;y=0;z=0;B)int x=0,y=0,z=0;C)int x,y,z=0;D)int x=y=z=0;8. 定义三个变量a,b,c,并都初始化为‘a’。

能实现该功能的语句是()。

A)char a=‘a’;b=‘a’;c=‘a’;B)char a=‘a’,b=‘a’,c=‘a’;C)char a,b,c=‘a’;D)char a=b=c=‘a’;9.设以下变量均为int类型,则值不等于8的表达式是()。

A) (y=7,y+1,x=y,x+1) B) (x=7,x+1,y=x++,y+1)C) (x=y=7,++x,y+1) D) (x=y=7,++x,x+1)10.下列for循环的循环次数是()。

2011年C语言考试复习要点

2011年C语言考试复习要点

各位C语言任课老师:临近期末考试,现将期末复习的考试类型及复习范围告诉各位,请安排学生进行及时的复习一、考试类型上机考试二、复习范围选择题目:涉及的都是基本概念、简单读程序写结果(文件不考,指针、结构共用体只考简单的概念)操作题:主要类型(1)打开指定文件,编译、运行、存盘(2)新建一.c文件,编译、运行、按指定程序名存盘主要考学生对于程序的建立、编译、运行过程的操作以及能否读懂程序,并按照程序要求输入数据程序改错题目:主要类型(1)数据类型是否定义正确(2)变量的初值设置是否正确(3)输入输出语句的格式及类型控制符是否使用正确(4)程序的主要算法关键语句的赋值是否正确(5)主要语句体中是否有缺失的条件、循环的条件是否正确等(6)函数调用的参数是否正确主要考察学生调试程序的能力,并能够根据要求改正错误,运行程序、存盘程序填空题目:主要类型(1)填写程序的赋初值语句(2)填写循环条件、选择条件中的条件(3)填写主要语句体中缺失的语句(4)填写函数调用语句主要考察学生读程序的能力,读懂程序后,根据上下文,填写缺失的语句,并运行出正确的结果,运行程序、存盘编程题目:主要类型因为程序中涉及一些给定的初值的设定,有些学生可以根据给定的初值,推算出结果进而直接用return语句返回结果而省略了主要程序段的编写,因此在题库中使用了随机函数生成一个或多个整数的语句。

(1)要求学生掌握随机数产生函数rand()的用法(2)考试的主要算法有求素数用辗转相除法求最大公约数求和、求积(阶乘)(可根据实验手册、书P131的一些求和公式给学生复习)(1)求公式的前1000项,求π的近似值:(2)直到最后一项中的分数小于1e-6为止(不包括最后一项)求最大值最小值(n个数、一维数组、二维数组)二维数组对角线元素之和字符串逆序(数组元素逆序存放)数组(字符数组)元素的查找、替换、统计、求平均值等其他:如(1)已知某企业今年的产值为100万元,如果产值的年均增长率为5%,经过5年后,企业的产值达到多少万元?(或求经过多少年后,企业产值达150万元)三、复习资料:实验手册上(分支、循环、数组、函数)的所有填空、改错的题目都具有代表性可以给学生附件中的题目复习,有很大的参考价值(除选择题以外,考题与这些题目不一样)书上讲过的一些典型的比较简单的例题(排序、递归等不在考试范围内)四、复习模拟练习机房即将安装模拟考试练习,模拟考试练习只用于学生熟悉考试环境用(里面只有3套题目)17~18周教师可以在课内安排学生模拟练习考试环境,但是大量的练习还是在课后。

大学c语言程序设计期末复习资料

大学c语言程序设计期末复习资料

程序设计(c语言){选择+填空}第一章程序设计与c语言(1)所谓程序,就是一组计算机能识别和执行的指令。

(2)计算机的一切操作都是由程序控制的,离开程序,计算机将一事无成。

(3)计算机工作是基于二进制。

(4)计算机能直接识别和接受的二进制代码称为机器指令。

机器指令的集合就是该计算机的机器语言。

(5)c语言允许用的两种注释方式。

①以//开始的单行注释。

②以/*开始,以*/结束的块式注释。

(6)一个程序由一个或多个源程序文件组成的,其中必须包含一个main函数。

(7)一个源程序文件中可以包括3个部分。

①预处理指令。

如#include<stdio.h>②全局声明。

③函数定义。

(8)一个函数包括两个部分。

①函数部分。

②函数体。

(9)程序总是从main函数开始执行的。

(10)c语言本身不提供输入输出语句。

(11)在每个数据声明和语句的最后都必须有一个分号。

(12)为了编译,连接和运行c语言,必须要有相应的编译系统。

(13)编译程序的步骤是①上机输入和编辑源程序,②对源程序进行编译,③进行连接处理,④运行可执行程序,得到运行结果。

第二章算法——程序的灵魂第三章最简单的c语言设计——顺序程序设计(1)在程序运行过程中,其值不能被改变的量称为常量。

(2)常用的常量有以下几种。

①整型常量②实型常量③字符常量如′a′④字符串常量⑤符号常量(如:用#define指令#define PI3.14)(3)在程序运行期间,变量的值是可以改变的。

(4)变量必须先定义,后使用。

(5)在对程序编译连接时由编译系统给每个变量名分配对应的内存地址。

(6)c语言规定标志符只能由字母,数字和下划线3种字符组成。

(7)编译系统将大写字母和小写字母认为是两种不同的字符。

(8)一个表达式的最后加一个分号就成了一个语句。

(填空题)(9)Printf(“%20.15f\n”,a/3)运行结果0.333333333333333一共15个。

《C语言程序设计II》期末复习

《C语言程序设计II》期末复习

《C语言程序设计II》期末复习C语言程序设计II 期末复习C语言程序设计是计算机科学与技术专业的一门重要课程,它是对C语言基础知识的深入学习和应用的进一步拓展。

为了帮助大家顺利通过期末考试,本文将从以下几个方面进行复习。

1. 数据类型和变量C语言提供了多种数据类型,包括基本数据类型(如整型、浮点型、字符型)和派生数据类型(如数组、结构体、指针)。

在程序设计中,正确选择和使用适当的数据类型是非常重要的。

变量则用来存储和表示各种类型的数据。

在使用变量之前,必须先声明,并为其分配存储空间。

2. 运算符和表达式C语言的运算符包括算术运算符、关系运算符、逻辑运算符等。

表达式由运算符和操作数组成,可以用于实现各种计算和逻辑判断。

在编写程序时,运算符的优先级和结合性需要遵循特定的规则。

3. 控制流程控制流程是指程序的执行顺序和控制方式。

C语言提供了多种控制语句,如条件语句(if-else语句、switch语句)、循环语句(for循环、while循环、do-while循环)和跳转语句(break语句、continue语句、return语句)。

合理使用这些语句可以实现程序的灵活控制和逻辑流程。

4. 函数和数组函数是C语言程序的基本组成单元,也是实现代码重用和模块化设计的关键。

在函数中,可以定义局部变量、使用参数和返回值,并通过函数调用的方式实现程序的模块化执行。

而数组是一种特殊的数据结构,可以存储多个相同类型的元素。

掌握函数和数组的使用方法对于编写复杂的程序至关重要。

5. 文件操作C语言提供了丰富的文件操作函数,可以实现对文件的读写和管理。

通过文件操作,可以将程序的输入和输出与外部文件进行交互。

文件操作的主要步骤包括打开文件、读写数据和关闭文件。

在进行文件操作时,需要注意文件打开和关闭的正确性,以及对文件的读写权限。

6. 指针和动态内存分配指针是C语言的重要特性之一,它可以直接访问内存地址。

掌握指针的使用方法对于处理复杂的数据结构和实现高效的算法至关重要。

2011C语言程序设计期末试卷A卷-48课时

2011C语言程序设计期末试卷A卷-48课时

━ ━ ━ ━ ━ ━ ━ ━ ━ 装 ━ ━ ━ ━ ━ ━ ━ ━ ━ 订 ━ ━ ━ ━ ━ ━ ━ ━ ━ 线 ━ ━ ━ ━ ━ ━ ━ ━ ━ ━ ━防灾科技学院2010~ 2011学年 第二学期期末考试C 语言程序设计 试卷(A 卷) 使用班级 /112/113/121/122/131/132/141/142/211/212/213/311/312/313/531 答题时间 120分钟一、选择题(共15小题,每题2分,共30分。

请将答案写在答题纸上)1.以下叙述不正确的是( )。

A.一个C 语言源程序可以由一个或多个函数组成B.一个C 语言源程序必须包含一个main 函数C.C 语言源程序的基本组成单位是函数D.在C 语言源程序中,注释说明只能位于一条语句的后面 2.在程序设计中,流程图画法中的菱形表示( )。

A. 起止框B. 输入输出框C. 判断框D. 处理框 3.下列标识符中,( )是合法的用户标识符。

A. A#C B. getch1C.structD. stu*14.以下能正确定义且赋初值的语句是( )。

A.int n1=n2=10;B.char c=32;C.float f=f+1.1;D.double x=12.3E2.5; 5.以下运算符中不是关系运算符的是( )。

A.<B.>=C.!D.!= 6. 表达式(int)2.1416的值是( )。

A. 2B. 2.1C. 0D. 3 7.有关下述语句输出的判断中,正确的是( )。

char x='A'; printf("%d", x);A.赋值非法B.输出值不确定C.输出值为-32D.输出值为65 8.对if 语句中表达式的类型,下面正确的描述是( )。

A.必须是关系表达式或逻辑表达式B.必须是关系表达式或算术表达式C.可以是任意表达式D.必须是关系表达式 9.以下正确的描述是( )。

武汉科技大学信息学院2011期末C语言程序设计试卷A答案

武汉科技大学信息学院2011期末C语言程序设计试卷A答案
试题答案
2011年~2012年第2学期
课程名称:C语言程序设计专业年级:DB电子信息工程2011级
考生学号:考生姓名:
试卷类型:A卷□B卷□考试方式:开卷□闭卷□
………………………………………………………………………………………………………
一单项选择题(每小题2分,共10分)
C
B
C
D
B
二、填空题(每空2分,共28分)
for(j=n-1;j>0;j--)
*(p+j)=*(p+j-1);
*p=end;
}
}
1、x=12
x=10
x=8
2、0 0 0 0 0 0 0 0 0 0
0 2 0 3 0 4 0 5 0 6
3、a=10 b=4
a=10 b=4
a=11 b=4
a=4 b=11
a=6 b=11
四、程序填空(每空2分,共18分)
1、
【1】9【2】a[i][j]=0【3】i+j<8【4】a[i][j]=-1
for(i=0;i<10;i++)
{
if(num[i]==m)
sum++;
}
printf("sum=%d",sum);
}
2、#include <stdio.h>
void input(int num[],int n);
void output(int num[],int n);
void move(int num[],int n,int m);
void main()
{int num[10];
int m;

2011年《C语言程序设计》期末考试A卷答案

2011年《C语言程序设计》期末考试A卷答案

华中科技大学文华学院2010~2011学年度第二学期《C语言程序设计》参考答案、评分标准专业:全院使用范围:本\专科考试时间:2011年7月2日卷型:A卷考试方式:闭卷课程性质:必修一、选择题(每小题2分,共20分)1~5: C D C B C6~10: A B D A D二、把下列数学式子写成C语言表达式(每小题2分,共10分)1. sqrt(s*(s-a)*(s-b)*(s-c))2. 2*sqrt(x)+(a+b)/(3*sin(x))3. exp(x)-log(x)/log(2)4. 2*3.14*r+3.14*r*r+cos(3.14/180*45)5. fabs(-pow(x,5))三、阅读程序,写出运行后的输出结果(每题4分,共20分)1. 结果:62. 结果:***3. 结果:2,14. 结果:00005. 结果:64四、编程题(每小题10分,共40分)1.#include <stdio.h>void main(){int year;scanf("%d",&year);if(year%400==0||(year%4==0&&year%100!=0))printf("%d is a leap year\n",year);elseprintf("%d is not a leap year\n",year);}2. #include <stdio.h>void main(){int m=0,n=0;char c;while((c=getchar())!='\n'){if(c>'A'&&c<='Z')m++;if(c>='a'&&c<='z')n++;}printf("m=%d,n=%d,max=%d\n",m,n,m<n?n:m); }3.#include <stdio.h>void main(){int a[10]={1,2,3,4,5,6,7,8,9,10};int i,n,m,x;n=0,m=9;scanf("%d",&x);while(n<=m){i=(n+m)/2;if(a[i]==x)break;if(a[i]<x)n=i+1;if(a[i]>x)m=i-1;}if(a[i]!=x)printf("No found");elseprintf("%d,%d\n",i,a[i]);}4.#include <stdio.h>void strcat1(char p[], char q[]){int i=0,j=0;while(p[i]!='\0')i++;while(q[j]!='\0'){p[i]=q[j];i++,j++;}p[i]='\0';}void main(void){char a[20],b[10];printf("请输入两个字符串:\n");gets(a);gets(b);strcat1(a,b);printf("\n连接后的字符串为:%s\n",a);}五、填空(每空2分,共10分。

C语言程序设计期末考试复习题及答案[1]

C语言程序设计期末考试复习题及答案[1]

C语言程序设计期末考试复习题及答案[1]------------------------------------------作者------------------------------------------日期一、 选择题☎✆ 一个 语言程序总是从( )开始执行✌✆ 书写顺序的第一个函数✆ 书写顺序的第一条执行语句✆ 主函数❍♋♓⏹( )✆ 不确定☎✆ 设♓⏹♦ ⌧,⍓, ,则下列表达式中的值为 的是 ☎  ✆✌✆ ‘⌧’ ’⍓’ ✆ ⌧⍓⍓ ✆ ⌧⍓ ✆ ✐☎☎⌧⍓✆✐✆☎✆ 执行以下程序段后,♓的值是 ☎  ✆♓⏹♦ ♓♦♦♓♦♍♒☎♓✆ ♍♋♦♏  ♓ ♌❒♏♋♍♋♦♏  ♓♍♋♦♏  ♓ ♌❒♏♋♎♏♐♋◆●♦  ♓♓❝✌✆  ✆  ✆ ✆ ☎✆ 语句♦♒♓●♏☎✐♏✆中的条件✐♏等价于 ☎ ✌ ✆✌✆ ♏ ✆♏✐ ✆ ♏✐✆ 运行时出错☎✆ 用 ♓⏹♦ ♋☯❝ 对数组进行初始化后,数组元素♋☯的值是 ☎  ✆✌✆ 随机值 ✆  ✆ ✆ ☞☎✆ 在执行♍♒♋❒ ♦♦❒☯“♍♒♓⏹♋”; ♦♦❒●♏⏹(♦♦❒)的结果是 ☎ ✌ ✆✌✆ ✆  ✆  ☎✆ 若有定义,♍♒♋❒ ✉☐”♍☐❍☐◆♦♏❒” 则语句☐❒♓⏹♦♐☎“ ♍” ✉☎☐✆✆运行结果是 ☎  ✆✌✆ 随机值 ✆ ❍ ✆☐✆ ☐❍☐◆♦♏❒☎✆ 在以下函数调用语句中♐◆⏹☎⌧☎⌧✆♐◆⏹☎⍓☎⍓✆✆✆函数♐◆⏹参数的个数为 ☎  ✆✌✆  ✆ ✆  ✆ 编译出错☎✆ 在说明一个结构体变量时系统分配给它的存储空间是(  )✌)该结构体中第一个成员变量所需存储空间 ✆ 该结构体中最后一个成员变量所需存储空间 )该结构体中占用最大存储空间的成员变量所需存储空间 ✆ 该结构体中所有成员变量所需存储空间的总和 用 语言编写的代码程序☎  ✆✌✆可立即执行 ✆是一个源程序 ✆经过编译即可执行 ✆经过编译解释才能执行  语言中用于结构化程序设计的三种基本结构是☎ ✌ ✆♎☐♦♒♓●♏ )♓♐、♐☐❒、♍☐⏹♦♓⏹◆♏ 以下定义语句中正确的是☎  ✆✌✆♍♒♋❒ ♋✌♌ ♐●☐♋♦ ♋♌✆♓⏹♦ ♋✉♌♋ ✆♐●☐♋♦ ✉♋♌♋下列选项中,不能用作标识符的是☎  )✌✆♉♉ ✆♉♉ ✆ ♓⏹♦♉♉ ✆♉♓⏹♦♉ 在函数调用过程中,如果函数♐◆⏹✌调用了函数 ♐◆⏹函数♐◆⏹又调用了函数♐◆⏹✌,则 (  )✌✆称为函数的直接递归调用 ✆称为函数的间接递归调用✆称为函数的循环调用 ✆语言中不允许这样的递归调用 以下叙述中正确的是 ☎ ✌ ✆✌✆局部变量说明为♦♦♋♦♓♍存储类,其生存期将得到延长✆全局变量说明为♦♦♋♦♓♍存储类,其作用域将被扩大✆任何存储类的变量在未赋初值时,其值都是不确定的✆形参可以使用的存储类说明符与局部变量完全相同若变量已正确定义,要求程序段完成求 ✐的计算,不能完成此操作的程序段是☎ ✆✌✆♐☐❒☎♓☐♓♓✆ ☐✉♓✆♐☐❒☎♓♓♓✆ ☐  ☐✉♓❝✆♓☐♦♒♓●♏☎♓✆☐✉♓ ♓❝✆♓☐♎☐☐✉♓ ♓  ❝♦♒♓●♏☎♓✆有以下程序☎♋✆❍♋♓⏹☎✆♍♒♋❒ ♋♋♌☐❒♓⏹♦♐☎✂♍✂♋✆☐❒♓⏹♦♐☎✂♍⏹✂♌♋✆❝程序运行后的输出结果是♋✆♌♌ ✆♌♍ ✆♋♌ ✆♋♍ 有以下函数定义:☎♍✆❖☐♓♎ ♐◆⏹☎♓⏹♦ ⏹ ♎☐◆♌●♏ ⌧✆  …… ❝若以下选项中的变量都已正确定义并赋值,则对函数♐◆⏹的正确调用语句是✌) ♐◆⏹☎♓⏹♦ ⍓♎☐◆♌●♏ ❍✆ ) ♐◆⏹☎✆ )♐◆⏹☎⌧⏹✆ )❖☐♓♎ ♐◆⏹☎⏹⌧✆已定义♍为字符型变量,则下列语句中正确的是☎♍✆✌)♍ )♍✂✂ )♍ )♍✂♋✂以下能正确定义一维数组的选项是☎♌✆✌)♓⏹♦ ⏹◆❍☯ ) ✁♎♏♐♓⏹♏ ☠  )♓⏹♦ ⏹◆❍☯ ) ♓⏹♦ ☠♓⏹♦ ⏹◆❍☯☠ ♓⏹♦ ⏹◆❍☯☠ 以下能正确定义数组并正确赋初值的语句是☎♎✆✌)♓⏹♦ ☠♌☯☠☯☠ )♓⏹♦ ♋☯☯❝❝❝)♓⏹♦ ♍☯☯ ❝❝❝ )♓⏹♦ ♎☯☯❝❝❝ 有以下程序☎♋✆❍♋♓⏹☎✆♓⏹♦ ♓♦♦♓♦♍♒ ☎♓✆♍♋♦♏  ☐❒♓⏹♦♐☎✂♎ ✂ ♓✆♍♋♦♏  ☐❒♓⏹♦♐☎✂♎ ✂ ♓✆♎♏♐♋◆●♦  ☐❒♓⏹♦♐☎✂♎ ✂ ♓✆ ❝❝执行后输出结果是✌)  )  )  ) 有以下程序☎♎✆❍♋♓⏹☎✆♓⏹♦ ☐☯❝ ♓♦♒♓●♏☎♓  ☐☯♓✆    ☐☯♓ ♓ ❝☐❒♓⏹♦♐☎✂♎⏹✂ ✆❝执行后输出结果是✌)  )  )  ) 以下叙述中正确的是☎♍✆✌) 语言比其他语言高级 ) 语言可以不用编译就能被计算机识别执行) 语言以接近英语国家的自然语言和数学语言作为语言的表达形式) 语言出现的最晚,具有其他语言的一切优点下列叙述中正确的是☎♎✆✌) 语言中既有逻辑类型也有集合类型 ) 语言中没有逻辑类型但有集合类型) 语言中有逻辑类型但没有集合类型 ) 语言中既没有逻辑类型也没有集合类型以下叙述中正确的是☎♋✆✌) 程序中注释部分可以出现在程序中任意合适的地方 )花括号✂✂和✂❝✂只能作为函数体的定界符 )构成 程序的基本单位是函数,所有函数名都可以由用户命名 )分号是 语句之间的分隔符,不是语句的一部分二) 阅读程序,写出程序运行结果☎✆ ✁♓⏹♍●◆♎♏♦♦♎♓☐♒❍♋♓⏹☎✆♍♒♋❒ ♍♒’✌’♍♒☎♍♒’✌’  ♍♒’☪’✆✍☎♍♒✆♍♒☐❒♓⏹♦♐☎“ ♍” ♍♒✆❝程序的运行结果是:☎✆ ✁♓⏹♍●◆♎♏♦♦♎♓☐♒❍♋♓⏹☎ ✆♓⏹♦ ♦◆❍♓♦♒♓●♏ ☎♓✆♦◆❍♦◆❍♓♓❝☐❒♓⏹♦♐☎“ ♎” ♦◆❍✆程序的运行结果是:☎✆ ✁♓⏹♍●◆♎♏♦♦♎♓☐♒❍♋♓⏹☎✆♍♒♋❒ ♦♦❒☯ ” ♋♌♍”♓⏹♦ ♓♐☐❒☎♓♦♦❒☯♓✐’ ’ ♓✆♓♐ ☎♦♦❒☯♓’ ’  ♦♦❒☯♓’ ’✆ ☐❒♓⏹♦♐☎“ ♍” ♦♦❒☯♓✆❝程序的运行结果是:☎✆ ❍♋♓⏹☎✆♓⏹♦ ♋♌♋♌☐☎♋♌✆☐☎♋♌♋✆❝☐☎♓⏹♦ ⌧♓⏹♦ ⍓✆⍓⌧⍓☐❒♓⏹♦♐☎“ ♎ ♎” ⌧⍓✆❝程序的运行结果是:☎✆ ✁♓⏹♍●◆♎♏♦♦♎♓☐♒❖☐♓♎ ❍♋♓⏹☎✆♓⏹♦ ♋☯☯❝❝❝❝♓⏹♦ ♦♐☐❒☎✆♦♦✉♋☯☯☐❒♓⏹♦♐☎✂♎✂♦✆❝程序的运行结果是:♏⍓: ☎✆ ♋ ☎✆  ☎✆  ☎✆     ☎✆ 三) 改错题(每个程序只有一个错误,填入错误语句所在的行号以及修改后的语句)☎✆下段程序的功能是先输入一个整数,然后将输入的整数输出。

武汉科技大学信息学院2011期末C语言程序设计试卷A

武汉科技大学信息学院2011期末C语言程序设计试卷A
1、函数功能:将矩阵a[9][9]左上方数据置1,右下方数据置-1,主对角线元素置0
void setArray(int a[9][9])111 Nhomakorabea1
1
1
1
1
0
1
1
1
1
1
1
1
0
-1
1
1
1
1
1
1
0
-1
-1
1
1
1
1
1
0
-1
-1
-1
1
1
1
1
0
-1
-1
-1
-1
1
1
1
0
-1
-1
-1
-1
-1
1
1
0
-1
-1
-1
-1
-1
5.预处理命令包括___【7】______、文件包含和____【8】______三种;
6.若有定义:char *name[ ]={“Fellow me”,”Great wall”,”Fortran”,”computerdesign” };char **p_str=name;
则*name[1]=__【9】_____;语句puts(name[2])的执行结果__【10】_____;
试题
2011年~2012年第2学期
课程名称:C语言程序设计专业年级:DB电子信息工程2011级
考生学号:考生姓名:
试卷类型:A卷□B卷□考试方式:开卷□闭卷□
………………………………………………………………………………………………………
一单项选择题(每小题2分,共10分)
1.下面__【1】___是将x的值正确赋值给了数组array的第一个元素。

C语言程序设计期末总复习

C语言程序设计期末总复习

什么叫地址?什么叫指针?什么叫指向?什么叫变量的指针?什么
叫指针变量?什么叫函数的指针?什么叫数组的指针?什么叫指针 数组?什么叫指针的指针? 用指针方法处理,输入5个整数,按由小到大的顺序输出? 有n个人围成一圈,顺序排号。从第一个人开始报数(从1到3报 数),凡报到3的人退出圈子,问最后留下的是原来第几号的那位? 写一个函数,将一个3x3的整型二维数组转置,及行列互换。
第六章 数组
本章主要内容: 本章主要讲解了一维数组的定义和引用、二维数组的定 义和引用、字符数组的初始化、字符串结束标志、字符数 组的输入输出、字符串处理函数puts()、gets()、strcat()、 strcpy()、strncpy()、strcmp()、strlen()、strlwr()、 strupr()。
本章必须掌握的知识点: 什么叫数组?C语言如何使用数组? 什么是起泡法?什么是筛选法? 用筛选法求100之内的素数? 用选择法对10个整数排序? 求3x3的整型二维数组对角线元素之和。
第七章 函数调用
本章主要内容: 本章主要讲解了函数的一般定义形式、函数参数和函数的值、 函数的调用、函数的嵌套调用、函数的递归调用、数组元素作为 函数参数、局部变量和全局变量变量的存储方式和生存期、关于 变量的声明和定义、内部函数和外部函数。
第二章 数据类型、运算符与表达式
本章主要内容: 本章主要讲解了C语言的数据类型、常量和变量、各类数值 型数据间的混合运算、算术运算符和算术表达式以及运算符的 优先级与结合性、逗号运算符和逗号表达式。 本章必须掌握的知识点: C语言有哪些数据类型? 什么是常量?什么是字符常量?什么是变量?什么是字符变量? 什么是算术运算符?什么是算术表达式? 什么是强制类型转换?什么是自增、自减运算? C语言为什么规定所有的变量必须要“先定义,后使用”?

C语言2011期末(A卷+答案)

C语言2011期末(A卷+答案)

中国海洋大学2011 学年秋季学期期末考试试卷共 4 页第 2 页9 若有定义:union data {long i;short k[6];char c[4];}DATE;则表达式sizeof(DA TE)的值是。

(A) 32 (B) 24(C) 20 (D) 1210若调用fputc( )函数输出字符成功,则其返回值是。

(A) 输出的字符(B) 0(C) 1 (D) EOF二(18分)程序分析(共3题,每题6分)1 分析下面程序的输出结果并说明程序的功能。

(输入:N=5)#include <stdio.h>void main(){int i,j,k,N,count;int data[10][10]={0};scanf("N=%d",&N);count=N*N;for(k=0;k<N/2;k++){ for(i=k;i<N-k;i++) data[k][i]=count--;for(i=k+1;i<N-k;i++) data[i][N-k-1]=count--;for(i=N-k-2;i>k;i--) data[N-k-1][i]=count--;for(i=N-k-1;i>k;i--) data[i][k]=count--;}if(N%2!=0) data[N/2][N/2]=1;for(i=0;i<N;i++){ for(j=0;j<N;j++)printf("%3d",data[i][j]);printf("\n");}}2 分析下面程序的输出结果并说明程序的功能。

(输入:num=11)#include<stdio.h>#define M 2unsigned process(unsigned n){ static unsigned S=1;unsigned d,e;d=n/M;if(d==0)e=1;else{ S*=M;e=M*process(d);}if (e==1) printf("(");printf("%d",n%M);if (S==e) printf(")%d\n",M);return(e);}中国海洋大学2011 学年秋季学期期末考试试卷信息学院《高级程序设计语言》课程试题(A卷) 共4 页第3 页void main(){ unsigned num;scanf("num=%u",&num);printf("(%u)10 = ",num);process(num);}3 分析下面程序的输出结果。

2011信息工程学院C语言2期末试卷(A)

2011信息工程学院C语言2期末试卷(A)

杭州电子科技大学信息工程学院考试试卷(A)卷考试课程计算机应用基础与程序设计(C语言)2考试日期2011年6月 13 日成绩课程号教师号任课教师姓名考生姓名学号年级专业说明: 请将全部答案都书写在第5页答题纸上,否则答题无效。

试题一、判断题 (共10分) (用‘√’或‘×’标注对错)1.void类型的函数一定无形参。

×2.函数f中有语句return(x,y);则函数f可以返回x、y这两个值。

×3.函数f可以用f(f(x))形式调用,这种调用形式是递归调用。

×4.数组元素的下标必须是整数,不能用实数。

√5.若有定义语句“int a[10];”则a[10-9/2] 是合法的数组元素。

√6.若有定义“int a[5][6];”,则在数组元素a[2][4]前有16个元素。

√7.若有定义语句“int a[10],i=2;”,则&a[i]与a+i等价。

√8.数组定义语句“char c[ ]= "Hello";”与“char c[ ]={‘H’,’e’,’l’,’l’,’o’};”等价。

× 9.语句“double *p=&x,x;”使指针变量p指向变量x。

×10.若fp已正确定义并指向某文件,当未遇到该文件结束标志时函数feof(fp)的值为0。

√试题二、单选题,根据题目从A、B、C、D中,选择一个正确的选项(共20分)1.C语言传值调用的特点是( C )。

A.实参必须是变量B.实参传给形参变量的数据是地址C.在函数中形参变量值改变后,不改变实参变量的值D.在函数中形参变量值改变后,实参变量的值随之也改变2.如果在函数中定义一个变量,有关该变量作用域正确的是( A )。

A.只在该函数中有效 B.在该文件中有效C.在本程序中有效D.为非法变量3.C 语言总是从( A )函数开始执行。

A. main B.处于最前的 C.处于最后的 D.随机选一个4.根据下面函数print的定义,选出调用函数print(63429)的值是( B )。

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

《C语言程序设计》期末复习资料
一、考试题型及其分数分布:
1、单项选择题(每小题2分,共30分)
2、填空题(每空1分,共20分)
3、程序阅读分析题(每小题3分,共30分)
4、编程题(每小题10分,共20分)
二、复习要点
1、构成C程序的基本单位是?
2、字符型常量的正确使用方式。

3、合法的用户标识符是?
4、强制类型转换的正确运用。

5、自增自减运算符使用要点。

6、逗号表达式值的概念及其正确运用。

(例如:已知 int a,b;执行语句
a=(b=3*4,b*2),b+9;变量a的值是?)
7、scanf函数多数据输入时的格式控制问题(空格或逗号的使用)
8、二维数组定义时下标值缺省的规则。

9、printf函数输出数据时总长度和小数位数的确定。

10、指向数组的指针灵活运用的问题。

(例如:已知:char s[10] ,*p=s;下列
错误的表达式是:s=p+5 p=s+5 s[2]=p[3] *p=s[0])
11、自增自减运算符“先用后增减,先增减后用”的问题。

12、字符串复制函数和字符数组(串)长度的概念和运用。

(例如:satic char
str[ ]=”bei jing” ;则执行下列语句后的输出结果为?
printf(“%d\n”,strlen(strcpy(str,”hello!”)));
另外:char a[]=”abcde”,b[]={a’,’b’,’c’,’d’,’e’};中a与b的区别和联系。

13、“循环条件”与“循环结束条件”的概念。

14、字符串比较函数strcmp返回值的概念。

15、函数值类型的定义缺省时函数值的隐含类型是?
16、调用一个函数,且此函数中没有return语句,意味着什么?
17、main函数调用自定义函数时返回值的使用。

18、在一个文件中定义的全局变量的作用域为?
19、以下叙述中错误的是()。

A) 二进制文件打开后可以先读文件的末尾,而顺序文件不可以。

B) 在程序结束时,应当用fclose函数关闭已打开的文件。

C) 用fread函数从二进制文件中读数,可以用数组名给数组所有元素读入
数据。

D) 不可以用FILE定义指向二进制文件的文件指针。

20、三种循环结构的区别与联系。

21、当说明一个结构体变量时系统分配给它的内存是()。

A)各成员所需内存的总和 B)结构中第一个成员所需内存量
C)成员中占内存量最大者所需的容量 D)结构中最后一个成员所需内存量
22、二维数组转换成等价的一维数组,原二维数组中元素转换成一维数组后在
一维数组中的下标应该是?
23、在位运算中,操作数每右移一位,其结果相当于什么?若左移1位,其结
果相当于什么?
24、当顺利执行了文件关闭操作时,fclose函数的返回值是什么?
25、实型变量的类型说明符有哪些?
26、表达式8+9>2&&25%5的结果是什么?
27、编写从键盘输入的字符中统计数字字符的个数的程序,字符用getchar( )
获得,循环条件由判断是否回车构成。

28、putchar( ) 函数的功能是什么?
29、定义fp为文件型指针变量的定义方法是什么?
30、若s是int型变量,且s=9,则表达式s%2+(s+1)%2的值是多少?
31、通常a和b的值可以借助中间变量t进行交换,写出它们交换的语句;若
不借助任何变量把a、b中的值进行交换,也请写出相关语句,并注意使用缩减赋值符号+=和-=等。

32、编写求出矩阵a的主对角线上的元素之和的程序。

33、以下程序的运行结果是?
main( )
{
increment( );
increment( );
increment( );
}
increment( )
{
static int x=0;
x+=2;
printf("%d",x);
}
34、以下程序的运行结果是?
void main ( )
{ static int a[10],i;
for (i=0;i<10;i++)
a[i]=i+1;
for (i=0;i<10;i=i+2)
printf(“%d”,*(a+i));
}
35、编写程序输出所有大写字母和其对应的 ASCII码值。

36、编写程序将一个字符串 S的内容颠倒过来。

37、编写程序由键盘输入三个数 a,b,c,计算以这三个数为边长的三角形面积。

38、从键盘输入一个字符串,把它输出到文件中,文件名由键盘输入。

#include <stdio.h>
void main ( )
{ FILE *fp;
char ch, *fn;
scanf(“%s”,fn);
if ((fp=fopen(fn, ))==NULL)
{ printf(“打开文件出错 \n”);
exit(1);
}
while ((ch=getchar( ))!=EOF)
{ fputc( );
putchar (ch);
}
fclose (fp); }
请填充下划线处的内容以完善本程序。

39、编写程序输出所有的“水仙花数”,所谓“水仙花数”就是指一个3位数,其各位数的立方和等于该数本身。

例如:153是一个水仙花数,因为153=13+53+33。

40、充分分析和理解是猴子吃桃问题:猴子第1天摘下若干个桃子,当即吃了1半,还不过瘾,又多吃了1个。

第2天早上又将剩下的桃子吃掉1半,又多吃了1个。

以后每天早上都吃了前天剩下的1半零1个。

到第10天早上想再吃时,见只剩1个桃子了。

求第1天共摘了多少个桃子。

41、有15个数按从小到大的顺序存放在1个数组中。

输入1个数,要求用折半查找法找出该数是数组中第几个元素的值。

如果该数不在数组中,输出“不在表中”。

解题思路:假如有已按由小到大排好序的9个数,a[1]----a[9],其值分别为:1,3,5,7,9,11,13,15,17。

若输入一个数3与a[5]比较,a[5]的值是9。

发现a[5]>3,显然3应该在a[1]到a[5]范围内,而不会在a[6]到a[9]范围内。

这样就可以缩小查找范围,甩掉a[6]到a[9]这一部分,即将查找范围缩小为1半。

在找a[1]到a[5]范围内的居中的数,即a[3],将要找的数与a[3]比较,a[3]的值是5,发现a[3]>3,显然3应该在a[1]到a[3]的范围内。

依次类推,直到找到为止。

下面是折半查找函数。

int binsearch(seqlist r,keytype k)
{//折半查找
int low=1,high=n,mid;
while (low<=high){
mid=(low+high)/2;
if (r[mid].key==k) return mid;
if (r[mid].key>k)
high= ;
else
low= ;
}
return 0;
}
请填充下划线处的内容以完善本程序。

42、编写冒泡排序(由小到大)的程序。

43、充分分析和理解汉诺塔C递归程序。

相关文档
最新文档