文档库 最新最全的文档下载
当前位置:文档库 › (2012.06.19)C语言程序设计A课程复习内容和要求(文本)

(2012.06.19)C语言程序设计A课程复习内容和要求(文本)

(2012.06.19)C语言程序设计A课程复习内容和要求(文本)
(2012.06.19)C语言程序设计A课程复习内容和要求(文本)

(2012.06.19)C语言程序设计A课程复习内容和要求(文本)

徐孝凯:欢迎大家参加课程答疑!

试题题型:

选择:根据题意,从四种可选择的答案中选择合适的一种答案。

填空:根据题意,在画有横线或空白括号内填写合适内容。

写出程序运行结果:根据所给的C语言程序,写出运行后的输出结果。

指出程序或函数功能:根据所给的C语言程序或函数,指出运行程序或进行函数调用时所能实现的功能。

编写程序或函数:根据所给出的题目要求,编写出相应的程序或函数模块。

考核形式

本课程考核采用期末考核与形成性考核相结合的方式。形成性考核分为两种,一种视考核册作业完成情况和所规定的上机实验完成情况而定,占总成绩的20%;另一种为期末上机考核,占总成绩的10%,要求完成一个带有多个程序文件的程序项目的编写和上机运行通过,由各省级电大在省内统一提供上机题目和统一时间上机考核,考核时限为60分钟。期末卷面考核占总成绩的70%,为闭卷考试,由中央电大统一命题,答卷时限为90分钟。总成绩满分为100分,合成成绩达到60及以上分数者可获得该课程规定的4学分,否则不获得该课程学分。

第一章语言概述的考核内容:

1.程序、程序文件和函数的概念及其相互之间的关系。

2.函数的定义格式和作用,主函数的特殊地位和作用。

3.C语言简单语句和复合语句的语法格式。

4.#include预处理命令的格式与作用。

5.头文件的文件名格式、在程序中的使用方法和作用。

6.程序中两种注释标记的写法和作用。

7.标准输出函数printf()和标准输入函数scanf()的定义格式和具体应用。

8.C语言程序文件名、编译后生成的目标文件名和连接后生成的可执行文件名的命名规则,以及上机输入、编辑、编译、连接和运行程序的过程。

第二章数据类型和表达式的点考核内容:

1.C语言中的数据类型的分类。

2.各种整数类型的关键字表示,存储空间的大小和值域范围。

3.整型变量的定义和初始化,十进制整型常量的表示。

4.字符类型的关键字表示,存储空间的大小和值域范围;字符型常量的表示,回车、换行、单引号、双引号、反斜线、空字符等特殊字符的表示。

5.字符型变量的定义和初始化,字符型与整型的关系。

6.枚举的概念,枚举类型的定义,枚举变量的定义和初始化,枚举常量与整型常量的对应关系。

7.各种实数类型的关键字表示,存储空间的大小和有效位数。

8.单精度和双精度实数的定点表示和浮点(科学)表示,实型变量的定义和初始化。

9.加、减、乘、除、取余、赋值、增1、减1、取数据存储长度等算术运算符的表示、含义、运算对象个数和运算优先级。

10.关系运算符的定义和关系表达式的计算,逻辑运算符的定义与逻辑表达式的计算,根据任意表达式的值判断其逻辑值的方法。

第三章流程控制语句的考核内容:

1.C语言程序中的顺序、分支和循环这三种基本结构,每种结构的执行过程。

2.简单if语句、带else子句的if语句、多分支结构的if语句的定义格式、执行过程和在处理问题中的具体应用。

3.switch语句的定义格式、执行过程和在处理问题中的具体应用。

4.if语句与switch语句之间的功能比较,if语句与switch语句之间的转换。

5.for循环、while循环和do-while循环的定义格式、执行过程和在处理问题中的具体应用。

6.三种循环结构不同特点。

7.Break语句在switch语句和各种循环语句中的作用,continue语句在各种循环语句中的作用。

8.goto语句和return语句的定义格式和功能。

第四章数组和字符串的考核内容:

1.一维数组的含义、定义格式及初始化格式。

2.数组长度、数组元素、元素下标的含义,访问数组元素的语法格式,下标运算符的操作对象和操作结果。

3.数组元素的下标变化范围,数组元素所占存储空间大小和整个数组所占存储空间大小的计算,各元素对应存储空间的排列情况,每个元素的存储地址的计算。

4.利用一维数组存储数据,按元素值的升序或降序排列数据,按给定条件或功能对数组元素依次进行访问和处理。

5.二维数组的含义、定义格式及初始化格式。

6.二维数组的行数和列数的概念,数组长度(即所含元素个数)的计算。

7.访问二维数组元素的语法格式,每个下标运算符的操作对象和操作结果。

8.二维数组中的所有元素在存储空间中的排列情况,每个元素的存储地址的计算。

9.利用二维数组存储矩阵数据,按给定条件或功能对数组元素依次进行访问和处理。

10.字符串常量的定义格式,字符串的存储格式,字符串长度的概念。

11.一维字符数组、二维字符数组与字符串之间的关系,一维字符数组与二维字符数组的初始化。

12.strlen、strcpy、strcmp、strcat等字符串函数的声明格式及功能。

13.利用typedef语句定义数据类型的方法。

第五章指针的考核内容:

1.指针的概念,指针变量的定义和初始化。

2.指针赋值(=)、取对象(变量)地址(&)、访问指针所指对象(*)、指针比较(==、!=、>、<等)、指针算术运算(+、-、+=等)、指针增1或减1(++、--)等各种运算的含义和使用。

3.数组名的指针含义。

4.一维数组元素的下标访问方式与指针访问方式及其之间的转换。

5.二维数组元素的下标访问方式与指针访问方式及其之间的转换。

6.动态存储分配函数malloc()和calloc()以及动态存储空间释放函数free()的定义格式与调用方法。

第六章函数的考核内容:

1.函数的定义格式。

2.函数调用表达式的语法格式及执行过程。

3.函数定义中形参变量的作用及实虚参数结合的过程。

5.函数声明(原型)语句的定义格式及作用。

6.形参为一维数组或二维数组时的说明格式,调用时数组参数传递的过程。

7.变量的作用域的概念和含义;系统对全局变量、static变量、局部变量的建立和初始化过程。

8.函数的递归调用的概念和递归函数的具体执行过程。

9.头文件在程序文件中的位置和作用。

第七章结构与联合的考核内容:

1.结构的概念,结构类型的定义格式,结构类型的声明(即不完整定义)格式。

2.结构对象(变量)的各种定义格式和初始化,结构大小的计算,结构对象和结构数组对象的动态分配和初始化。

3.结构赋值,结构成员的直接访问和间接访问,利用结构数组保存和处理数据。

4.结构和结构指针作为函数参数和返回值类型的具体应用。

5.链表的概念,链表中结点的结构,链表的建立和遍历的方法和算法。

6.联合的概念,联合类型的定义格式,联合对象的定义和初始化,联合的存储结构及大小的计算,匿名联合的特点。

第八章文件的考核内容:

1. 数据文件的概念。

2. 文件的打开和关闭方法。

3. 文件的各种访问方式的表示。

4. 对字符文件进行的输入和输出数据的方法。

5. 对字节文件进行的输入和输出数据的方法。

往届试卷之一供参考,附件1 C语言程序设计A课程试题5(09秋交,12年1月考)

往届试卷之二供参考,附件2:C语言程序设计A课程试题6(09秋交,11年7月考)

附件1:

中央广播电视大学2008秋季

C语言程序设计A课程试卷(5)

2012年1

一、单选题(每小题2分,共20分)

1. 程序运行中需要从键盘上输入多于一个数据时,各数据之间默认使用( )符号作为分隔符。

A. 空格或逗号

B. 逗号或回车

C. 逗号或分号

D. 空格或回车

2. 逻辑表达式(x>0 && x<=10)的相反表达式为()。

A. x<=0 || x>10

B. x<=0 && x>10

C. x<=0 || x<=10

D. x>0 && x>10

3. 当处理一个问题时的循环次数已知时,最好采用()循环来解决。

A. for

B. while

C. do-while

D. switch

4. 假定i的初值为0,则在循环语句“while(i

A. n-1

B. n

C. n+1

D. n/2

5. 假定一个二维数组的定义语句为“int a[3][4]={{3,4},{2,8,6}};”,则元素a[1][2]的值为()。

A. 2

B. 4

C. 6

D. 8

6. 在下列选项中,不正确的函数原型格式为()。

A. int Function(int a);

B.void Function (char);

C. int Function(a);

D.void int(double* a);

7. 假定p是一个指向float类型的数据指针,则p+1所指向的数据的地址比p所指向的数据的地址大( )个字节。

A. 1

B. 2

C. 4

D. 8

8. 假定有一条定义语句为“int m=7, *p;”,则给p赋值的正确表达式为()。

A. p=m

B. p=&m

C. *p=&m

D. p=*m

9. 假定指针变量p定义为“int *p=malloc(sizeof(int));”,要释放p所指向的动态存储空间,应调用的函数为()。

A. free(p)

B. delete(p)

C. free(*p)

D. free(&p)

10. C语言中的系统函数fopen()是()一个数据文件的函数。

A. 读取

B. 写入

C. 关闭

D. 打开

二、填空题(每小题2分,共26分)

1. 用于输出表达式值的标准输出函数的函数名是________。

2.每个C语言程序文件在编译时可能出现有致命性错误,其对应的标识符为________。

3. 已知'A'~'Z'的ASCII码为65~90,当执行“int x='C'+3;”语句后x的值为________。

4. 表达式(int)14.6的值为________。

5. 假定不允许使用逻辑非操作符,则关系表达式x+y>5的相反表达式为___________。

6. 假定x=5,则执行“a=(x?10:20);”语句后a的值为________。

7. 假定一维数组的定义为“char* a[M];”,则该数组所占存储空间的字节数为________。

8. 存储字符串"a"需要至少占用存储空间中的________个字节。

9. strlen()函数用于计算一个字符串的________。

10. 在C语言中,一个函数定义由函数头和__________这两个部分组成。

11.假定p所指对象的值为25,p+1所指对象的值为46,则执行表达式*(p++)后,p 所指对象的值为________。

12. 假定p是一个变量,则用________表示该变量的地址。

13. 把间接访问表达式p->name改写成对应的直接访问表达式为____________。

三、写出下列每个程序运行后的输出结果(每小题6分,共30分)

1. #include

void main() {

int n=6, y=1;

while(n--) y+=3;

printf("y=%d\n",y);

}

2. #include

void main()

{

int i,s=0;

for(i=1;i<8;i++)

if(i%2==0 || i%3==0) s+=i;

printf("s=%d\n",s);

}

3. #include

void main() {

char a[]="abcdbfkgamd";

int i1=0, i2=0, i=0;

while(a[i]) {

if(a[i]<'e') i1++; else i2++;

i++;

}

printf("%d %d\n",i1,i2);

}

4. #include

void main() {

int a[8]={4,8,12,16,20,24,28,32};

int *p=a;

do {

printf("%d ",*p);

p+=3;

} while(p

printf("\n");

}

5. #include

struct Worker { char name[15]; int age; double pay;};

void main() {

struct Worker a[4]={{"abc",20,2420},{"defa",50,3638}, {"ghin",40,2560},{"jklt",36,2375}};

int i, s=0;

for(i=0; i<4; i++) s+=a[i].age;

printf("s=%5.2Lf\n",(double)s/4);

}

四、写出下列每个函数的功能(每小题6分,共12分)

1. int SC(int a, int b, int c) {

if(a>=b && a>=c) return a;

if(b>=a && b>=c) return b;

return c;

}

函数功能:

2. int* LI(int n) {

int* a=malloc(n*sizeof(int));

int i;

for(i=0;i

return a;

}

函数功能:

五、按题目要求编写函数(每小题6分,共12分)

1. 编写一个函数,函数原型为“int fun4(char* a)”,请采用while循环求出由字符指针a所指向的字符串中包含的十进制数字的个数,并把这个值作为函数值返回。

2. 编写一个主函数,计算并输出表达式1+22+32+...+n2的值,假定正整数n的值由键盘输入。

中央广播电视大学2008秋季

C语言程序设计A课程试卷答案及评分标准(5)

(供参考)

一、单选题(每小题2分,共20分)

1. D

2. A

3. A

4. B

5. C

6. C

7. C

8. B

9. A 10. D

二、填空题(每小题2分,共26分)

1. printf

2. error

3. 70

4. 14

5. x+y<=5

6. 10

7. 4*M

8. 2

9. 长度 10. 函数体 11. 46 12. &p 13. (*p).name

三、写出下列每个程序运行后的输出结果(每小题6分,共30分)

评分标准:根据答案正确程度酌情给分。

1. y=19

2. s=15

3. 7 4

4. 4 16 28

5. s=3

6.50

四、写出下列每个函数的功能(每小题6分,共12分)

评分标准:根据叙述的正确与完整程度酌情给分。

1.求出a,b,c三个数中的最大值并返回。

2.首先建立一个动态整型数组a[n],接着从键盘上输入n个整数到a[n]中,最后返回数组a[n]的首地址。

五、按题目要求编写函数(每小题6分,共12分)

评分标准:根据编写函数的正确与完整程度酌情给分。

1. int fun4(char* a)

{

int n=0; //1分

while(*a) { //2分

if(*a>='0' && *a<='9') n++; //4分

a++; //5分

}

return n; //6分

}

2. #include

void main()

{

int n,i, s=0; //1分

scanf("%d",&n); //2分

for(i=1; i<=n; i++) s+=i*i; //5分

printf("s=%d\n",s); //6分

}

注:若s的初值为1,则循环变量i的初值应修改为2。

附件2:

中央广播电视大学2008秋季

C语言程序设计A课程试卷(6)

2011年7月考

一、单选题(每小题2分,共20分)

1. C语言程序中的基本功能模块为()。

A. 表达式

B. 标识符

C. 语句

D. 函数

2. 逻辑表达式(x>0 || y==5)的相反表达式为()。

A. x<=0 || y!=5

B. x<=0 && y!=5

C. x>0 || y!=5

D. x>0 && y==5

3. 循环体至少被执行一次的循环语句为()。

A. for

B. while

C. do-while

D. 任一种循环

4. 假定n的值为5,则表达式n++的值为()。

A. 6

B. 5

C. 4

D. 7

5. 假定一个二维数组的定义为“int a[3][4]={{3,4},{2,8,6}};”,则元素a[2][0]的值为()。

A. 0

B. 2

C. 4

D. 6

6. 假定一个函数原型为“char* func(int n)”,则该函数的返回类型为( )。

A. int

B. int*

C. char

D. char*

7. 假定a为一个字符数组名,则元素a[i]的指针访问方式为( )。

A. a+i

B. *(a+i)

C. &a+i

D. *a+i

8. 假定有语句为“int *p=calloc(10+20,sizeof(int));”,则p所指向的动态数组中所包含的元素个数为()。

A. 10

B. 20

C. 30

D. 40

9.十进制数50表示成符合C语言规定的八进制数为________。

A. 20

B. 32

C. 62

D. 062

10. 若要以读和写两种操作方式打开一个二进制文件,当文件不存在时返回打开失败信息,则选用的打开方式字符串为()。

A. "r+"

B. "ab+"

C. "rb+"

D. "wb+"

二、填空题(每小题2分,共26分)

1. 在一个C语言程序文件中,若要包含另外一个头文件或程序文件,则应使用的预处理命令为__________。

2. 用于从键盘上为变量输入值的标准输入函数的函数名为________。

3. 假定一个枚举类型的定义为“enum RA{ab,ac,ad,ae};”,则ac的值为________。

4.double类型的长度为________。

5. 执行“int x=45,y=13;printf("%d",x/y);”语句序列后得到的输出结果为________。

6. 把表达式x=x+y转换成复合赋值表达式为__________。

7. 假定x的值为5,则执行“a=(!x? 10: 20);”语句后a的值为________。

8. 假定一维字符指针数组的定义为“char* a[8];”,则该数组占用的存储空间的字节数为________。

9. 假定二维数组的定义为“double a[M][N];”,则数组元素的行下标取值范围在_________之间。

10. 空字符串的长度为________。

11. 在所有函数定义之外定义的变量,若没有被初始化则系统隐含对它所赋的初值为________。

12. 若p指向x,则________与x的表示是等价的。

13. 直接访问表达式(*fp).score所对应的间接访问表达式为____________。

三、写出下列每个程序运行后的输出结果(每小题6分,共30分)

1. #include

void main() {

int i,j,k=0;

for(i=0; i<5; i++)

for(j=i; j<5; j++) k++;;

printf("%d\n",k);

}

2. #include

void main() {

int x=20;

int i=2;

while(i

if(x%i==0) {printf("%d ",i); x/=i;} i++;

}

}

3. #include

void main() {

int a[8]={76,63,54,95,40,75,90,66};

int i, s=0;

for(i=0; i<8; i++)

if(a[i]>=70 && a[i]<=90) s+=a[i];

printf("s=%d\n",s);

}

4. #include

int WF(int x, int y) {

x=x+y;

y+=x;

return x+y;

}

void main() {

int x=3, y=8;

printf("%d\n",WF(x,y));

}

5. #include

int LA(int *a, int n) {

int i,s=0;

for(i=0;i

return s;

}

void main() {

int a[5]={1,2,3,4,5};

int b=LA(a,5)+LA(a+2,3);

printf("b=%d\n",b);

}

四、写出下列每个函数的功能(每小题6分,共12分)

1. int WC(int a[], int n, int k) {

int i, c=0;

for(i=0;i

if(a[i]>=k) c++;

return c;

}

函数功能:

2. void QA(struct Worker a[], int n)

{

int i;

for(i=0; i

scanf("%s %d %f", a[i].name, &a[i].age, &a[i].pay);

}

假定结构类型struct Worker 的定义如下:

struct Worker { char name[15]; int age; float pay;};

函数功能:

五、按题目要求编写函数(每小题6分,共12分)

1. 根据函数原型“double Mean(double a[M][N],int m,int n)”,编写函数定义,要求返回二维数组a[m][n]中所有元素的平均值。假定在计算过程中采用变量v存放累加值和最后的平均值。

2. 根据函数原型“int MM(int a[],int m)”,编写函数定义,计算并返回数组a[m]中元素最大值和最小值之差。

中央广播电视大学2008秋季

C语言程序设计A课程试卷答案及评分标准(6)

(供参考)

一、单选题(每小题2分,共20分)

1. D

2. B

3. C

4. B

5. A

6. D

7. B

8. C

9. D 10. C

二、填空题(每小题2分,共26分)

1. #include

2. scanf

3. 1

4. 8

5. 3

6. x+=y

7. 20

8. 32

9. 0~M-1 10. 0 11. 0 12. *p

13. fp->score

三、写出下列每个程序运行后的输出结果(每小题6分,共30分)

评分标准:根据答案正确程度酌情给分。

1. 15

2. 2 5

3. s=241

4. 30

5. b=27

四、写出下列每个函数的功能(每小题6分,共12分)

评分标准:根据答案叙述正确与完整程度酌情给分。

1. 统计并返回一维整型数组a[n]中大于等于k的值的个数。

2. 从键盘上为具有struct Worker类型的数组a[n]输入n个记录。

五、按题目要求编写函数(每小题6分,共12分)

评分标准:根据函数编写的正确与完整程度酌情给分。

1. double Mean(double a[M][N],int m,int n)

{

int i,j;

double v=0.0; //1分

for(i=0; i

for(j=0; j

v/=m*n;

return v; //6分

} //注:函数体的最后两行可以合并为一条返回语句:return v/=m*n 2. int MM(int a[],int m)

{

int i,x1,x2;

x1=x2=a[0]; //1分

for(i=1; i

if(a[i]>x1) x1=a[i]; //3分

if(a[i]

} //5分

return x1-x2; //6分

}

C语言程序设计说课教案

页眉内容 C 语言程序设计》说课教案从以下方面说明: 一、二、课程性质、地位教学对象分析及要求 三、课程体系 四、 五、六、七、课程的重点、难点及突破教学方法与教学手段学生考核 教学计划 一、课程性质、地位 1.课程的性质 《C语言程序设计》课程是高职高专通信类和电子信息类各专业职业素质必修课,旨在培养高职学生运用计算机进行逻辑思维的能力,掌握运用C 语言编程来解决岗位工作中实际问题的方法和步骤,为提高职业能力和拓展职业空间打下坚实基础。所以,本课程主要针对培养这类人才基本程序设计能力的目的而设置的课程。 学生毕业后工作岗位主要有计算机管理员、单片机应用设计员、网络 应用等,在计算机控制、单片机应用、电子技术、通信技术等相关行业中都将使用C 语言作为应用系统开发设计语言,C 语言也是其它编程语言类课程的前导课程,也是信息产业部计算机专业和软件专业水平资格考试(程序员、网络管理员等)考试中要求的主要程序设计语言。 2.课程的地位 通信技术(计算机网络方向)专业和电子信息技术专业,C 语言室基础,是计算机应用设计的基础。是学习其他程序语言的前导及基础。 二、教学对象分析及要求 1.教学对象 本系学习C 语言课程的生源是高中生源和中专生源。高中生文化基础扎

实,但计算机专业知识薄弱,开始学习时较困难,但入门提高较快。中专生,文化基础薄弱,但计算专业已经学习一些,开始学习不会很困难,但是知识转换能力方面会有困难,学习进度会慢一点。针对不同生源学生在教学方法和重难点方面有所区别。 2.对同一生源不同程度学生采取如下策略 高职智力不差,但自控能力相比较差。所以要从非智力因素入手,培养学生的学习积极性,提高实际动手能力。 3.在教学中教与学 三、课程体系 《C 语言程序设计》教学学时为60,理论内容以“够用为度”的原则,按照程序设计能力,通过一个项目“学生成绩管理系统”为主线,介绍C 语言基本概念、三种基本程序结构设计、指针、函数体等重点内容。然后通过1 周的课程设计,完成项目“学生成绩管理系统” 综合设计题目。课程内容附表1。 1.课程内容选取依据 1)C 语言编程规范 根据C 语言编程规范等资料,选取的内容是C 语言教学中必须掌握的适应中。另外还根据C 语言程序设计和后继课程(数据库、网络编程语言等)之间的关系、C 语言知识与技能要求及高职学生人才培养目标要求来确定本课程的教学内容。 2)职业素质要求 具备基本的阅读程序和程序的编写能力。同时具备实际问题转换为计算机程序解决的能力。 3)实际工作中岗位能力需求 通过对通信和电子专业毕业生的调查、人才招聘信息和一线专业技术人员交流,确定本系通信技术专业和电子专业的学生主要有程序设计员、单片机开发员、网站设计员、计算机维护管理、企业应用软件实施员、通信工程施工等工作岗位,这些岗位中,程序设计思维和源代码编写能力是关键技能,而C 语言作为专业核心课程中的基础课程,必须掌握结构化程序设计思路,我们选取本课程内容是根据这些要求选取的。 2.课程体系模块

C语言程序设计试题1

C语言程序设计试题1 一、单项选择题 1.C语言规定,在一个源程序中main函数的位置______d___ 。 A.必须在最开始B.必须在最后 C.必须在预处理命令的后面D.可以在其他函数之前或之后 2.以下选项中,_________d__ 是C语言关键字 A.printf B.include C.fun D.default 3.已知有声明"int a=3,b=4,c;",则执行语句"c=1/2*(a+b);"后,c的值为____a_ 。 A.0 B.3 C.3.5 D.4 4.设指针变量占4个字节的内存空间,若有声明"char *p="123";int c;",则执行语句 "c=sizeof(p);"后,c的值为__d__ A.1 B.2 C.3 D.4 5.已知有声明"int a=3,b=4;",下列表达式中合法的是_d___。 A.a+b=7 B.a=|b| C.a=b=0 D.(a++)++ 6.已知有声明"char s[20]="Hello";",在程序运行过程中,若要想使数组s中的内容修改为"Good",则以下语句中能够实现此功能的是___d_。 A.s="Good"; B.s[20l="Good"; C.strcat(s,"Good"); D.strcpy(s,"Good"); 7.已知有声明"int a[4][4]={{1,2,3,4},{5,6,7,8},{9,10,11,12},{13,14,15,16}};",若需要引用值为12的数组元素,则下列选项中错误的是_a___ 。 A.*(a+2)+3 B.*(*(a+2)+3) C.*(a[2]+3) D.a[2][3] 8.已知有声明"int n;float x,y;",则执行语句"y=n=x=3.89;"后,y的值为_b___ 。 A.3 B.3.0 C.3.89 D.4.0 9.已知有声明"int a=12,b=15,c;",则执行表达式"c=(a||(b-=a))"后,变量b和c的值分别为 __b__。 A.3,1 B.15,12 C.15,1 D.3,12 10.下面的函数定义正确的是_____d________ A)float fun (float x ; float y) {return x*y;} B)float fun (float x,y) {return x*y;} C)float fun (x,y) {int x,y;return x*y;} D)int fun (int x, int y) {return x*y;} 11.某程序需要使用一个代表常数3.14的符号常量名P,以下定义中正确的是_d___。 A.#define P 3.14; B.#define P(3.14) C.#define P=3.14; D.#define P 3.14 12.下列四个选项中,属于C语言关键字的是__c__ 。 A.Float B.single C.double D.real 13.已知某编译系统中signed int类型数据的长度是16位,该类型数据的最大值是_D___。 A.32767 B.32768 C.127 D.65535

C语言程序设计教程 教学大纲

附件一 C语言程序设计 教学大纲

C语言程序设计 一、本大纲适用专业、层次、总课时 1.适用专业:计算机类 2.层次:大专 3.总课时:64学时 二、课程性质和任务 《C语言程序设计》是计算机应用专业的专业必修课程,主要任务是介绍C语言中的数据类型,运算,语句结构及其程序设计的基本方法。目的是使学生掌握一门高级程序设计语言,学会利用C语言解决一般应用问题,并为后续的专业课程奠定程序设计基础。《C语言程序设计》是一门实践性很强的课程,必须通过上机操作才能掌握所学的知识,所以要特别强调讲授与上机操作相结合,要保证学生有充分的上机条件。 三、课程的基本要求与目标 根据市场对高职网络人才培养规格的需求特点,本课程的总目标是:“以学生为主体,以学生的学习为中心”,通过课程的实施,帮助学生学会学习。使学生的知识、情感、技能得到全面发展,既为今后的专业课程学习打下良好的知识与技能基础,又培养良好的态度,为其将来从事专业活动和未来的职业生涯打下基础。课程内容以“学其所用,用其所学”突出高职教育特点,确保人才培养目标的实现。课程目标如下: (1)知识目标:要求学生掌握基本的程序编写技能。学会利用常见的C程序开发工具的使用,掌握开发环境的配置,掌握常见菜单命令的使用以及整个窗口的布局设置。掌握结构化或模块化程序设计技能,学会数组、函数、三大控制结构、结构体和共用体以及指针的使用。为软件后期维护和管理提供必要的技术支持。 (2)能力目标: C语言程序设计的课程开设是从学生的角度出发,注重培养学生良好的动手实践习惯,注重培养学生严谨的行事风格,尤其注重挖掘学生的潜质,注重培养与社会接轨,培养学生具有踏实工作作风,良好的观察和思考能力强以及团队合作能力。 (3)情感目标:学生提高自己的独立思考和判断能力,通过这种方式能够对工作任务进行有效分析和寻求解决方案;加强自身的程序设计实践能力;培养从事软件研发的职业素养。在学习过程中使学生学会利用网络资源与他人进行交流与

《C语言程序设计》说课稿

《C语言程序设计》说课稿 《C语言程序设计》说课稿 一、课程教学大纲 课程教学大纲包括课程性质、课程地位、课程目标等几个方面。 (一)课程性质 《C语言程序设计》课程是高职高专计算机类、电子信息类、通信类和电子商务类各专业职业素质必修课,旨在培养高职学生运用计算机进行逻辑思维的能力,掌握运用C语言编程来解决岗位工作中实际问题的方法和步骤,为提高职业能力和拓展职业空间打下坚实基础。所以,本课程主要针对培养这类人才基本程序设计能力的目的而设置的课程。 (二)课程地位 1、学生毕业后工作岗位主要有计算机管理员、单片机应用设计员、网络应用等,在计算机控制、单片机应用、电子技术、通信技术等相关行业中都将使用C语言作为应用系统开发设计语言 2、C语言也是其它编程语言类课程的前导课程,也是信息产业部计算机专业和软件专业水平资格考试(程序员、网络管理员等)考试中要求的主要程序设计语言。 图1C语言程序设计在课程体系中的地位 (三)课程目标 根据对教材内容、教学大纲及学生自身认知水平的分析,教学目

标从知识目标、能力目标和素质目标三个方面来分析。1、知识目标 ①掌握程序的基本结构;②掌握数组和函数的运用;③掌握指针和位运算的基本操作。2、能力目标 ①掌握初步编程思想,熟悉基本算法,能根据问题正确选择、组合算法并绘制程序流程图; ②能独立编写代码,编写测试数据,并能独立调试程序,获得正确结果;③良好的编程思路和风格。3、素质目标 ①具备基本的阅读程序和程序的编写的素质;②培养严谨踏实的作风,训练自己的逻辑思维;③锻炼自己分析问题、解决问题的能力。 (四)教学总体规划 《C语言程序设计》的教学总学时为80学时,以“理论够用、注重实操”为原则,按照程序设计的能力模块,系统的讲解C语言基本概念、三种基本程序设计结构、数组和函数,并结合所学知识点进行相应实训,最终完成一个综合项目“学生成绩管理系统”。 旨在培养学生能够循序渐进地掌握C语言的语法规则、建立程序设计概念、确立程序设计的思维方式、掌握程序设计的方法、初步积累编程经验、培养学生良好的程序设计风格,能初步用C语言解决与专业相关的应用问题,并为学习其它的计算机课程奠定基础。 (五)教学的课时安排 (六)实践教学内容 实践教学环节充分体现“任务驱动、实践导向”的设计思想。 (六)课程重点和难点

c语言程序设计试题答案

习题7 7.1选择题。 (1)下列对字符串的定义中,错误的是: A 。 A) char str[7] = "FORTRAN"; B) char str[] = "FORTRAN"; C) char *str = "FORTRAN"; D) char str[] = {'F','O','R','T','R','A','N',0}; (2)以下程序段的输出结果是:____D_________ char a[] = "ABCDE" ; char *p = NULL; for (p=a; p main() { static char a[5]; a = "abcde" ; printf("%s\n", a); }

B) #include <> main() { static char a[7]= "goodbye!"; printf("%s\n", a) ; } C) #include <> main() { char a[5] = "abcde"; printf("%s\n", a) ; } D) #include <> main() { static char a[]="abcde"; printf("%s\n", a) ; } (4)阅读下列函数,函数功能为___A_____。 void Exchange(int *p1, int *p2) { int p; p = *p1; *p1 = *p2; *p2 = p; } A)交换*p1和*p2的值B)正确,但无法改变*p1和*p2的值 C)交换*p1和*p2的地址 D)可能造成系统故障

C语言程序设计课程设计题目

1 一元稀疏多项式的运算 问题描述:设有两个带头指针的单链表表示两个一元稀疏多项式A、B,实现两个一元稀疏多项式的处理。 实现要求: ⑴输入并建立多项式; ⑵输出多项式,输出形式为整数序列:n,c1,e1,c2,e2……c n,e n,其中n是多项式的项数,c i,e i分别为第i项的系数和指数。序列按指数降序排列; ⑶多项式A和B相加,建立多项式A+B,输出相加的多项式; ⑷多项式A和B相减,建立多项式A-B,输出相减的多项式; ⑸多项式A和B相乘,建立多项式A×B,输出相乘的多项式; ⑹设计一个菜单,至少具有上述操作要求的基本功能。 测试数据: (1) (2x+5x8-3.1x11)+(7-5x8+11x9) (2) (6x-3-x+4.4x2-1.2x9)-(-6x-3+5.4x2+7.8x15) (3)(x+x2+x3)+0 (4)(x+x3)-(-x-x-3) 2 成绩排序 假设某年级有4个班,每班有45名同学。本学期有5门课程考试,每门课程成绩是百分制。假定每个同学的成绩记录包含:学号、姓名各门课程的成绩共7项,其中学号是一个10位的字符串,每个学生都有唯一的学号,并且这4个班的成绩分别放在4个数组中,完成以下操作要求: ⑴编写一个成绩生成函数,使用随机数方法,利用随机函数生成学生的各门课程的成绩(每门课程的成绩都是0∽100之间的整数),通过调用该函数生成全部学生的成绩; ⑵编写一个平均成绩计算函数,计算每个同学的平均成绩并保存在成绩数组中; ⑶用冒泡排序法对4个班的成绩按每个同学的平均成绩的以非递增方式

进行班内排序; ⑷用选择排序法对4个班的成绩按每个同学的平均成绩的以非递增方式进行班内排序; ⑸对已按平均成绩排好序的4个班的同学的构造一个所有按平均成绩的以非递增方式排列的新的单链表; ⑹设计一个菜单,至少具有上述操作要求的基本功能。 3 迷宫问题 问题描述:以一个m×n的长方阵表示迷宫,0和1分别表示迷宫中的通路和障碍。设计一个程序,对任意设定的迷宫,求出一条从入口到出口的通路,或得出没有通路的结论。 实现要求: ⑴实现一个以链表作存储结构的栈类型,然后编写一个求解迷宫的非递归程序。求得的通路以三元组(i,j,d)的形式输出,其中:(i,j)指示迷宫中的一个坐标,d表示走到下一坐标的方向。 ⑵编写递归形式的算法,求得迷宫中所有可能的通路; ⑶以方阵形式输出迷宫及其通路。 [测试数据] 迷宫的测试数据如下:左上角(1,1)为入口,右下角(8,9)为出口。 1 2 3 4 5 6 7 8 实现提示:

《C语言程序设计》说课稿(超好)

《C语言程序设计》说课稿 广州松田职业学院机电与信息工程系--唐涛 一、课程教学大纲 课程教学大纲包括课程性质、课程地位、课程目标等几个方面。 (一)课程性质 《C语言程序设计》课程是高职高专计算机类、电子信息类、通信类和电子商务类各专业职业素质必修课,旨在培养高职学生运用计算机进行逻辑思维的能力,掌握运用C语言编程来解决岗位工作中实际问题的方法和步骤,为提高职业能力和拓展职业空间打下坚实基础。所以,本课程主要针对培养这类人才基本程序设计能力的目的而设置的课程。 (二)课程地位 1、学生毕业后工作岗位主要有计算机管理员、单片机应用设计员、网络应用等,在计算机控制、单片机应用、电子技术、通信技术等相关行业中都将使用C语言作为应用系统开发设计语言 2、C语言也是其它编程语言类课程的前导课程,也是信息产业部计算机专业和软件专业水平资格考试(程序员、网络管理员等)考试中要求的主要程序设计语言。 图1 C语言程序设计在课程体系中的地位 (三)课程目标 根据对教材内容、教学大纲及学生自身认知水平的分析,教学目标从知识目标、能力目标和素质目标三个方面来分析。 1、知识目标 ①掌握程序的基本结构; ②掌握数组和函数的运用; ③掌握指针和位运算的基本操作。 2、能力目标

①掌握初步编程思想,熟悉基本算法,能根据问题正确选择、组合算法并绘制程序流程图; ②能独立编写代码,编写测试数据,并能独立调试程序,获得正确结果; ③良好的编程思路和风格。 3、素质目标 ①具备基本的阅读程序和程序的编写的素质; ②培养严谨踏实的作风,训练自己的逻辑思维; ③锻炼自己分析问题、解决问题的能力。 (四)教学总体规划 《C语言程序设计》的教学总学时为80学时,以“理论够用、注重实操”为原则,按照程序设计的能力模块,系统的讲解C语言基本概念、三种基本程序设计结构、数组和函数,并结合所学知识点进行相应实训,最终完成一个综合项目“学生成绩管理系统”。 旨在培养学生能够循序渐进地掌握C语言的语法规则、建立程序设计概念、确立程序设计的思维方式、掌握程序设计的方法、初步积累编程经验、培养学生良好的程序设计风格,能初步用C语言解决与专业相关的应用问题,并为学习其它的计算机课程奠定基础。 (五)教学的课时安排

c语言程序设计期末试题B(含答案)

c语言程序设计期末试题B(含答案) 一单项选择题(每小题1分,共10分) 1. A 2. C 3. D 4. A 5. B 1.以下4组用户定义标识符中,全部合法的一组是() A)_total clu_1 sum B)if -max turb C)txt REAL 3COM D)int k_2 _001 2.以下程序的输出结果是() #include main( ) { int a = 1, b = 2, c = 3; printf(“%d”, c>b>a); } A) 2 B) 1 C) 0 D) 3 3.以下正确的叙述是() A) 在C语言中,main函数必须位于文件的开头 B) C语言每行中只能写一条语句 C) C语言本身没有输入、输出语句 D) 对一个C语言进行编译预处理时,可检查宏定义的语法错误 4.设有定义:int a,*pa=&a; 以下scanf语句中能正确为变量a读入数据的是() A)scanf("%d",pa); B)scanf("%d",a); C)scanf("%d",&pa); D)scanf("%d",*pa); 5.若有以下程序段, int c1=1,c2=2,c3; c3=1.0/c2*c1; 则执行后,c3中的值是() A) 0 B) 0.5 C) 1 D) 2 6. D 7. D 8. A 9. C 10. D 6.能正确表示逻辑关系:“a≥=10或a≤0”的C语言表达式是() A) a>=10 or a<=0 B)a>=0|a<=10 C)a>=10 &&a<=0 D)a>=10‖a<=0 7.执行下面的程序时,将1、2、3、4分别赋给a、b、c、d,正确的输入是() main( ) { int a,b,c,d; scanf(“%d,%d,%d%d”,&a,&b,&c,&d); … } A)1 2 3 4 B)1 2 3,4 C) 1,2,3,4 D) 1,2,3 4

最新C语言程序设计说课稿

《C语言程序设计》说课稿 信息工程系 张林

《C语言程序设计》说课稿 (一)课程设置 1、课程定位(性质和作用) 《C语言程序设计》课程是计算机应用技术专业的专业基础课,旨在培养学生运用计算机进行逻辑思维的能力,掌握运用C语言编程来解决岗位工作中实际问题的方法和步骤,为提高职业能力和拓展职业空间打下坚实基础。学生毕业后工作岗位主要有计算机管理员、单片机应用设计员、网络应用等,在计算机控制、单片机应用、电子技术、通信技术等相关行业中都将使用C语言作为应用系统开发设计语言,C语言也是其它编程语言类课程的前导课程,也是信息产业部计算机专业和软件专业水平资格考试(程序员、网络管理员等)考试中要求的主要程序设计语言。 2、课程设计(理念与思路) 设计原则: 坚持以岗位能力培养为本位的设计原则,教学内容、教学方法及考核方式均围绕能力培养来进行设计。 设计理念: 以后续课程对编程能力需求为导向,坚持理论够用,将相关知识点分解到实际项目中,让学生通过对项目的分析和实现来掌握相关理论知识和编程技能,选择技术实用性、知识拓展性强的教学用例和实训项目,同时将计算机等级考试和专升本相关内容融入到相关的教学单元中。 (二)教学内容(课程大纲) 一、课程基本情况 课程类型:理论课+实践课 计划学时:理论课40课时实践课56课时 开课学期:第一学年 后续课程:《基于C语言的数据结构算法设计》、《VC++》、《VB》、《软件工程》、《Java程序设计》 课程性质:专业必修课

二、课程目标 1、素质目标 (1)、具有独立思考、独立设计、独立调试的基本能力 (2)、具有良好的分析问题、解决问题和再学习的能力 (3)、具有良好的完成工作任务、团队合作和沟通能力 (4)、培养严谨的工作作风和勤奋努力的工作态度 (5)、培养较强的掌握新技术、新方法和新系统的能力 (6)、具有健全的人格和行为习惯、具有心理承受能力和社会责任感 2、能力目标 (1)、能够根据数据处理的需求,熟练使用数值、字符、数组、指针和文件等各种数据类型编写程序 (2)、能够根据数据处理的需求,熟练运用顺序、选择、循环等结构化语言进行程序设计树的逻辑结构,描述其物理结构并实现相应算法 (3)、能够灵活、有效地运用典型的排序、查找等算法 (4)、能够采用模块化的方法进行程序设计 (5)、能够读懂软件开发项目的部分编程逻辑与技巧、基本的业务流程控制与核心算法 3、知识目标 (1)数据类型与表达式 (2)顺序结构程序设计 (3)选择结构程序设计 (4)循环结构程序设计 (5)数组、指针、结构体和文件等数据类型的定义与应用 (6)应用函数程序设计。 三、教材分析 中国铁道出版社出版的《C语言程序设计》,由恰汗·合孜尔主编,属于普通高等教育“十一五”规划教材。 本教材注重实例的安排,基本上相关概念都有相应的实例进行讲解和阐述,这样学生更容易理解和掌握所学知识,并且配有习题集和上机指导手册作为辅助教学资料,学生通过习题的练习和上机实训,加深了对所学知识的理解和应用。 四、课程内容与学时安排: 理论教育课时安排表

C语言程序设计期末考试试题及答案知识分享

C语言程序设计试题 (2008 /2009 学年第二学期) 一.选择题(满分30分,每题2分) 1.若a、b、c都定义为int类型且初值为0,则以下不正确的赋值语句是 D 。 A. a=b=c+8; B. a+=y+3; C. c++; D. a+b+c 2. 已知int j,i=1;执行语句“j=i++;”后,变量i的值是 B 。 A. 1 B. 2 C. –1 D. -2 3.执行下面程序: #include "stdio.h" void main() { int a=1,b=2,c=3; c=(a+=a+2),(a=b,b+3); printf(“%d,%d,%d”,a,b,c); } 则输出结果是: A 。 A. 2,2,4 B. 4,2,3 C. 5,5,3 D. 4,2,5 4.若要求在if后一对圆括号中表示a不等于0的关系,则能正确表示这一关系的表达式为 D 。 A. a< >0 B. !a C. a=0 D. a 5. for (j=0;j<11;j++);循环结束后,j的值是 B 。 A. 12 B. 11 C. 10 D. 9 6. C语言中函数返回值的类型由 D 决定的。 A. return语句中的表达式类型 B. 调用该函数的主调函数的类型 C. 调用函数时临时决定 D. 定义函数时所指定的函数类型 7. 下列说法中正确的是 B 。 A 在调用用户自定义函数时,必须对其进行声明。 B 函数可以返回一个值,也可以什么值也不返回。 C 说明函数时,必须明确参数的类型和返回值。 D 在程序设计中空函数没有什么作用。8. 若int i=10;执行下列程序后,变量i的正确结果是 D 。 switch ( i ) {case 0: i+=1; case 10: i+=1; case 11: i+=1; default: i+=1; } A. 10 B. 11 C. 12 D. 13 9. 下列语句中不正确的字符串赋值或初始化的是 C 。 A. char str[10]={"strings"}; B.char str[8]={'s','t','r','i','n ','g','s','\0'}; C. char str[10]; str= "strings"; D. char str[]= "strings"; 10. 有如下程序: #include void main() { int a=1,b=0,c=0; if (a

C语言程序设计课程设计报告

C语言程序设计课程设 计报告 内部编号:(YUUT-TBBY-MMUT-URRUY-UOOY-DBUYI-0128)

《C语言程序设计》课程设计报告 (2013— 2014学年第 3 学期) 题目: C语言课程设计 专业:软件工程 班级:软件工程技术2班 姓名学号: 1 林燕萍 指导教师:吴芸 成绩: 计算机科学与技术系 2014 年6月23日

目录 一、课程设计的目的与要求 (1) 二、方案实现与调试 (3) 2.1 掷骰子游戏 (5) 2.2 射击游戏 (7) 2.3 计算存款本息之和 (8) 2.4肇事逃逸 (10) 2.5 礼炮 (12) 2.6 汽车加油 (14) 2.7 大优惠 (16) 2.8 金币 (19) 三、课程设计分析与总结 (23) 附录程序清单 (25) 一、课程设计的目的与要求(含设计指标) C语言是一种编程灵活,特色鲜明的程序设计语言。C语言除了基知识,如概念,方法和语法规则之外更重要的是进行实训,以提高学习者的动手和编程能力,从应试课程转变为实践工具。这是学习语言的最终目的。结合多年来的教学经验,根据学生的学习情况,为配合教学过程,使“项目教学法”能在本质上促使学生有更大进步,特编写了该《C 语言程序设计任务书》,以在实训过程中给学生提供帮助。达到如下目的: 1.在课程结束之前,让学生进一步了解C程序设计语言的编程功能;

2.让学生扎实掌握C程序设计语言的相关知识; 3.通过一些有实际意义的程序设计,使学生体会到学以致用,并能将程序设计的知识与专业知识有效地结合,更全面系统地了解行业知识。 编写程序要求遵循如下基本要求: ①模块化程序设计 ②锯齿型书写格式 ③必须上机调试通过 二、方案实现与调试 2.1掷骰子游戏 2.1.1 题目内容的描述 1) 两人轮流掷骰子,每次掷两个,每人最多掷10次。 2) 将每人每次的分值累加计分 3) 当两个骰子点数都为6时,计8分;当两个点数相等且不为两个6时,计7分;当两个点数不一样时,计其中点数较小的骰子的点数。4) 结束条件:当双方都掷10次或经过5次后一方累计分数多出另一方的30%及以上。最后显示双方分数并判定优胜者。 2.1.2输入数据类型、格式和内容限制和输出数据的说明 数据类型:整型;内容限制:随机数的产生;输入数据结果:胜利的一方 2.1.3主要模块的算法描述

C语言程序设计期末考试试卷

一、单项选择题(本大题共20题,每题2分,共40分) 1、以下不是C语言的特点的是 A、C语言简洁、紧凑 B、能够编制出功能复杂的程序 C、C语言可以直接对硬件进行操作 D、C语言移植性好 2、以下不正确的C语言标识符是 A、ABC B、abc C、a_bc D、ab.c3、一个C语言程序是由。 A、一个主程序和若干子程序组成 B、函数组成 C、若干过程组成 D、若干子程序组成 4、一个算法应该具有“确定性”等5个特性,对另外4个特性的描述中错误的是 A、有零个或多个输入 B、有零个或多个输出 C、有穷性 D、可行性 5、设变量a是整型,f是实型,i是双精度型,则表达式10+‘a’+i*f值的数据类型为

A、int B、float C、double D、不确定6、在C语言中,char型数据在内存中的存储形式是。 A、补码 B、反码 C、源码 D、ASCII码 7、有如下程序,输入数据:12345M678<cR>后(表示回车),x的值是。 #include main(){ int x; float y; scanf("%3d%f",&x,&y); } A、12345 B、123 C、45 D、3458、若有以下定义int a,b; float x,则正确的赋值语句 是。 A、a=1,b=2 B、b++; C、a=b=5 D、b=int(x); 9、以下程序的执行结果是。 #include { int i=10,j=10;

printf("%d,%d\n",++i,j--); } A、11,10 B、9,10 C、11,9 D、10,910、巳知字母A的ASCII码是65,以下程序的执行结果 是。 #include main() { char c1='A',c2='Y'; printf("%d,%d\n",c1,c2); A、A,Y B、65,65 C、65,90 D、65,8911、下列运算符中优先级最高的是。 A、< B、十 C、% D、!=12、设x、y和z是int型变量,且x=3,y=4,z =5,则下面表达式中值为0的是。 A、’x’&&’y’ B、x<=y C、x||y+z&&y-z D、!((x<y)&&!z||1) 13、判断char型变量cl是否为小写字母的正确表达式 为。 A、’a’<=c1<=f’z’ B、(c1>=a)&&(c1<=z) C、(‘a’>=c1)(‘z’<=c1) D、(c1>=’a’)&&(c1<=’z’) 14、字符串"a"在内存中占据的字节个数为。

C语言程序设计课程作业

C语言程序设计课程作业_A 一、单选题 1. (4分)设有以下定义int k=7, x=12;,则能使值为3的表达式是() ? A. x%=(k%=5) ? B. x%=(k-k%5) ? C. x%=k ? D. (x%=k)-(k%=5) 答案D 解析C语言程序设计/数据类型与运算/整型算术表达式 2. (4分)以下程序的输出结果是? #include main() { int x=020,y=0x20,z=20; printf('%d,%d,%d ', x,y,z); } ? A. 20,20,20 ? B. 32,16,20 ? C. 16,32,20 ? D. 20,32,20 答案C 解析C语言程序设计/数据类型及运算 3. (4分)C语言中while和do while循环的主要区别是( ) ? A. do-while的循环至少无条件执行一次

? B. while循环控制条件比do-while的循环控制条件严格 ? C. do-while允许从外部转入到循环体内 ? D. do-while的循环体不能是复合语句 答案A 解析C语言程序设计/循环程序设计/while语句与do-while语句 4. (4分)执行语句scanf('%d,%d',&m,&n);使m和n的值分别为1和2,正确输入是( ) ? A. 1 ? B. 1 2 ? C. 1,2 ? D. 12,2 答案C 解析C语言程序设计/顺序程序设计/整型数据的格式输入 5. (4分)sizeof(float)是( ) ? A. 一个双精度型表达式 ? B. 一个整型表达式 ? C. 一种函数调用 ? D. 一个不合法的表达式 答案B 解析C语言程序设计/数据类型与运算/实型变量存储 6.

《C语言程序设计》教案设计(清华谭浩强)

第一章C语言及程序设计概述 本章要求: 了解C语言的特点、C语言与其它高级语言相比有什么异同; 了解C程序在PC机上的建立、编译和运行过程; 了解C语言程序设计思想的基本篇; 重点:①C语言的主要特点; ②C语言在PC机上的运行过程及上机操作过程; ③常用算法的应用 难点:无 一、C语言概述 C语言是目前国际上在各种计算机运行较为广泛流行的一种高级语言。 主要表现为: C语言:适合于作为系统描述语言——可用来写系统软件。 具有高级语言的特点,又有低级语言(汇编语言)的特点。 C语言:是AT&T贝尔实验室的Dennis Ritchie在1972年发明的。 C语言:是在B语言的基础上发展起来的。(ALGOL 60) C语言:最早开始是用于UNIX操作系统。(C语言和UNIX是相辅相成的) DBASE 、Microsoft Exel 、 Microsoft Word、PC-DOS等,则是用C语言加上若干汇编子程序编写的。 1983年:——制定的新标准,称为(美国国家标准化协会)ANSI C 1987年:——Turbo C1.0 (Borland) 1988年:TC 1.5(图形和文本窗口) 1989年:——Turbo C2.0 (DOS操作系统、查错、Tiny模式生成com文件) 1991年:——Turbo C++(3.0) 支持windows 3.X 说明:Turbo C语言可以在程序的任何地方嵌入汇编代码,提高速度,可以直接使用存储器和寄存器。 二.C语言的特点 1.语言简洁、紧凑、使用方便、灵活 C语言:——共有32个关键字,9种控制语句; 程序书写自由,主要用小写字母表示; 2.运算符丰富

C语言程序设计期末考试试题(含答案)

C语言程序设计 期末考试试题及其答案 一、单项选择题(本大题共20题,每题2 分,共40分) 1、以下不是C语言的特点的是( ) A、C语言简洁、紧凑 B、能够编制出功能复杂的程序 C、C语言可以直接对硬件进行操作 D、C语言移植性好 2、以下不正确的C语言标识符是( ) A、ABC B、abc C、a_bc D、ab.c 3、一个C语言程序是由( ) A、一个主程序和若干子程序组成 B、函数组成 C、若干过程组成 D、若干子程序组成 4、一个算法应该具有“确定性”等5个特性,对另外4个特性的描述中错误的是( ) A、有零个或多个输入 B、有零个或多个输出 C、有穷性 D、可行性 5、设变量a是整型,f是实型,i是双精度型,则表达式10+‘a’+i*f值的数据类型为( ) A、int B、float C、double D、不确定 6、在C语言中,char型数据在内存中的存储形式是( ) A、补码 B、反码 C、源码 D、ASCII码 7、有如下程序,输入数据:12345M678<cR>后(表示回车),x的值是( ) 。 #include main(){ int x; float y; scanf("%3d%f",&x,&y); } A、12345 B、123 C、45 D、345 8、若有以下定义int a,b; float x,则正确的赋值语句是( ) A、a=1,b=2 B、b++; C、a=b=5 D、b=int(x); 9、以下程序的执行结果是( )

#include { int i=10,j=10; printf("%d,%d\n",++i,j--); } A、11,10 B、9,10 C、11,9 D、10,9 10、巳知字母A的ASCII码是65,以下程序的执行结果是( ) #include main() { char c1='A',c2='Y'; printf("%d,%d\n",c1,c2); A、A,Y B、65,65 C、65,90 D、65,89 11、下列运算符中优先级最高的是( ) A、< B、十 C、% D、!= 12、设x、y和z是int型变量,且x=3,y=4,z=5,则下面表达式中值为0是( ) 。 A、’x’&&’y’ B、x<=y C、x||y+z&&y-z D、!((x<y)&&!z ||1) 13、判断char型变量cl是否为小写字母的正确表达式为( ) A、’a’<=c1<=f’z’ B、(c1>=a)&&(c1<=z) C、(‘a’>=c1) (‘z’<=c1) D、(c1>=’a’)&&(c1<=’z’) 14、字符串"a"在内存中占据的字节个数为( ) A、0 B、 1 C、 2 D、 3 15、下面有关for循环的正确描述是( ) A、for循环只能用于循环次数已经确定的情况 B、for循环是先执行循环体语句,后判定表达式 C、在for循环中,不能用break语句跳出循环体 D、for循环体语句中,可以包含多条语句,但要用花括号括起来 16、下面程序的运行结果是( ) #include main() {int num=0; while(num<=2) {num++; printf(“%d ,num); } } A、 1 B、 1 2 C、 1 2 3

C语言程序设计试题集及其答案

第一章基础知识 一.填空 1. 每个C程序都必须有且仅有一个________ 函数。 2. C语言程序开发到执行通常要经过6个阶段即编辑、预处理、________、链接、加载和执行。 3. 软件是程序,以及______、使用和维护所需要的所有文档。 4. 国标中规定:“计算机程序是按照具体要求产生的适合于计算机处理的_________”。 5. 程序设计语言按照书写形式,以及思维方式的不同一般分为低级语言和________两大类。 6. C语言是由________组成的。 7. C语言的函数可分为主函数main、标准库函数和_________。 8. 一个函数是由两部分组成的,即:________和函数体。 9. 编译是将C语言所编写的源程序________成机器代码,也称为建立目标代码程序的过程。 10. 程序是由某种程序设计语言编制出来,体现了编程者的控制思想和对计算机执行操作 的要求。不同的任务功能,就会需求不同的软件程序,如:控制计算机本身软硬件协调工作,并使其设备充分发挥效力,方便用户使用的系统软件程序,称为操作系统;而为办公自动化(OA)、管理信息系统(MIS)、人工智能、电子商务、网络互联等等应用而开发的软件程序,统称为_________。 11. 机器语言是以__________形式表示的机器基本指令的集合,是计算机系统唯一不需要翻译可以直接识别和执行的程序设计语言。 12. 与机器语言相比,使用汇编语言来编写程序可以用_______来表示指令的操作码和操作对 象,也可以用标号和符号来代替地址、常量和变量。 13. 在编译程序之前,凡以____开头的代码行都先由预处理程序预处理。 14. C程序的执行均是由执行_________开始。 15. 函数体即为包含在{}内的部分。它分为________和为完成功能任务由若干个C 语句 组成的执行部分。 16. C语言程序中一条简单语句是以________字符作为结束符的。 17. C语言是结构化、________的程序设计语言。 18. 由于计算机硬件不能直接识别高级语言中的语句,因此,必须经过“_______程序”,将用高级语言编写的程序翻译成计算机硬件所能识别的机器语言程序方可执行。 19. 用高级语言编写的程序需翻译成计算机硬件所能识别的机器语言程序方可执行。所以 说,用高级语言进行程序设计,其编程效率高,方便易用,但_______没有低级语言高。

《C语言程序设计》课程设计

《C语言程序设计》课程设计 刘力斌 一、意义和目的 C语言是光信息科学与技术专业的重要专业基础课。在很多后续课程中,都要使用到C语言。 学生通过对C语言的学习,已经具备了使用C语言编写简单的应用程序的能力。为了加强程序设计基础,开设课程设计课,使学生对C语言有更全面的理解,进一步提高运用C语言编程解决实际问题的能力,同时,为后续课程的学习夯实基础。 课程设计目的: 提高用程序设计解决实际问题的能力。 通过提出算法、指定输入输出来设计一个解决方案。 用C语言合理地开发两个简洁有效的程序代码来实现该设计。 测试程序是否工作且满足设计指标并评价其效率。 二、目标 完成本课程设计的学生应能在以下几方面证明你们的能力: A、分析问题。各种简单的与计算机有关的案例中所需要的输出结果,把大问题分解成小问题,使用自顶向下或类似设计方法给出模块化或计划。 B、提出算法执行特定任务。模块表示为算法,使用自顶向下或伪代码等设计手段将模块细化成更详细的成分,清楚地表明顺序、选择和重复等到控制结构。 C、把一个算法变为用C语言编写的结构化程序。 D、用合适的测试方法检查程序是否符合最初的要求,为不合适数据设计错误陷阱,并提供错误信息来帮助用户。 E、写出清晰的用户文档,确保用户或者通过遵循程序中的指示或者使用程序设计者编写的文档能成功地运行程序。 F、写出技术文档,对程序中主要标示符的含义或作用加以说明,并提供一个完整的程序流程图。 G、调试程序、测试数据过程成功。

三、要求 参加本课程设计的学生,应当认真完成本课程设计的全部过程。并以最终课程设计成果来证明其独立完成各种实际任务的能力。从而,反映出理解和运用本课程知识的水平和能力。 完成课程设计应提交如下文档: ①程序的总体设计和算法分析。 ②技术文档 ③用户文档 ④源程序代码清单。 ⑤测试数据和测试过程记录。 ⑥遇到的问题及解决方法分析。 四、选题 每人一个题,具体题目可以参考附录。 第一题:链表操作题(包括建立、插入、删除、打印等)(参考教材); 第二题:文件操作,具体题目最好是自拟。 如果选题确实有困难的同学,可参考后面参考题目来完成本课程设计(成绩要影响)。 五、评价 评价是检测学生理解问题和解决问题能力的一个重要手段,教师将根据学生提交的一套文件中,严格检查以下各项任务完成情况: 1、课程设计文档是否齐全。 2、程序的用户文档 如果在程序执行期间有足够的指导信息显示在屏幕上显示,这些用户文档可以是很简要的,也许只限于解释如何装入并运行程序。 3、问题或任务的陈述(描述问题,而且问题是合理原始的、应当包括输 入、输出及其预期范围。)是否正确。 4、问题的解决方案采取由顶向下设计的形式,在适当的地方使用伪代 码,把整个解决方案划分成若干模块。 5、程序完成后的代码应当加以注解。最少应清楚指出每一个模块。 6、用于检查程序的测试数据,或者对一个控制程序给出测试的例程。测 试应考虑探索通过程序的几条路径,在合适的地方选择打印输出来。 7、程序的技术文档

相关文档
相关文档 最新文档