武汉工程大学专升本《程序设计基础》doc.docx

上传人:b****8 文档编号:13113509 上传时间:2023-06-11 格式:DOCX 页数:12 大小:27.94KB
下载 相关 举报
武汉工程大学专升本《程序设计基础》doc.docx_第1页
第1页 / 共12页
武汉工程大学专升本《程序设计基础》doc.docx_第2页
第2页 / 共12页
武汉工程大学专升本《程序设计基础》doc.docx_第3页
第3页 / 共12页
武汉工程大学专升本《程序设计基础》doc.docx_第4页
第4页 / 共12页
武汉工程大学专升本《程序设计基础》doc.docx_第5页
第5页 / 共12页
武汉工程大学专升本《程序设计基础》doc.docx_第6页
第6页 / 共12页
武汉工程大学专升本《程序设计基础》doc.docx_第7页
第7页 / 共12页
武汉工程大学专升本《程序设计基础》doc.docx_第8页
第8页 / 共12页
武汉工程大学专升本《程序设计基础》doc.docx_第9页
第9页 / 共12页
武汉工程大学专升本《程序设计基础》doc.docx_第10页
第10页 / 共12页
武汉工程大学专升本《程序设计基础》doc.docx_第11页
第11页 / 共12页
武汉工程大学专升本《程序设计基础》doc.docx_第12页
第12页 / 共12页
亲,该文档总共12页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

武汉工程大学专升本《程序设计基础》doc.docx

《武汉工程大学专升本《程序设计基础》doc.docx》由会员分享,可在线阅读,更多相关《武汉工程大学专升本《程序设计基础》doc.docx(12页珍藏版)》请在冰点文库上搜索。

武汉工程大学专升本《程序设计基础》doc.docx

武汉工程大学专升本《程序设计基础》doc

武汉工程大学2007年

专升本《程序设计基础》考试大纲

一、考试基本要求

掌握高级程序设计语言的基本概念、基本理论及程序设计的基本方法与编程技巧,掌握进行科学计算的一般思路,具有一定的抽象思维和逻辑推理能力。

能利用所学知识,具备用计算机解决和处理实际问题的思维方法与基本能力。

二、考试方法

闭卷笔试。

三、考试时间

120分钟。

四、试卷分值

试卷满分100分。

五、题型及比例

单项选择题:

20%

填空题:

10%

读程序写结果:

20%

程序填空:

20%

编写程序:

30%

六、试卷考试内容及要求

1.C语言的基本概念

(1)了解C语言的发展及特点。

(2)掌握程序的基本结构与书写格式。

(3)掌握程序的基本概念及程序开发基本过程。

(4)理解结构化程序设计的思想和方法.

2.数据类型

(1)掌握C语言的字符集及常用词法符号。

(2)理解C语言的数据类型(基本类型、构造类型、指针类型、空类型)。

(3)掌握常量及变量的定义方法。

(4)掌握标准输入/输出函数的使用方式。

3.运算符和表达式

(1)掌握运算符的种类、运算优先级、结合性。

(2)掌握各种表达式类型(赋值表达式、算术表达式、逗号表达式、条件表达式、关系表达式、逻辑表达式等)及求值规则。

(3)掌握不同类型数据间的转换与运算。

4.语句

(1)掌握选择语句的使用方法。

(2)掌握循环语句的使用方法。

(3)掌握continue、break语句。

(4)理解循环的嵌套调用。

5.数组

(1)掌握一维数组定义、初始化和引用。

(2)掌握排序算法、查找算法和插入算法。

(3)理解二维数组的定义、初始化和引用。

(4)掌握字符数组的使用,了解字符串常用函数。

6.函数

(1)掌握常用库函数的正确调用方法。

(2)掌握自定义函数的定义方法。

(3)掌握形式参数与实际参数的区别及参数的传递方式。

(4)掌握函数的类型及其返回值。

(5)掌握函数的调用方法,理解函数的嵌套调用、递归调用。

(6)掌握局部变量和全局变量,理解变量的作用域和生存期。

(7)理解变量的存储类型。

(8)了解内部函数和外部函数。

7.指针

(1)掌握指针的概念及指针的定义。

(2)掌握指针与地址运算符及指针的运算。

(3)掌握指向变量、数组、字符串的指针变量。

(4)理解指针变量作函数参数和指针型函数。

(5)理解指针数组和指向函数的指针。

8.编译预处理

(1)掌握编译预处理的概念和特点。

(2)理解不带参数的宏定义及其使用。

(3)理解带参数的宏定义及其使用。

(4)掌握“文件包含”的概念和使用。

(5)了解条件编译及其使用。

9.结构与联合

(1)掌握结构类型数据的定义方法。

(2)掌握结构型数据的引用方法。

(3)了解联合类型数据的定义方法和引用方法。

(4)理解指向结构体的指针变量。

10.文件

(1)掌握定义和使用文件指针的方法。

(2)掌握文件的打开和关闭方法。

(3)掌握文件的读写方法。

七、考试内容大致比例

1.基础知识部分20%

2.数组20%

3.函数20%

4.指针15%

5.结构与联合20%

6.文件5%

八、试题难易度大致比例

1.容易题30%

2.中等难度题50%

3.较难题20%

九、参考书目

1.《C语言程序设计》,谭浩强编,清华大学出版社。

2.《程序设计基础》,吴文虎编,清华大学出版社。

《程序设计基础》考试样卷

一、单项选择题(每小题2分,共计20分,将答案写在题中横线上)

1.在C语言中,字符型数据在内存中的存储形式是▁▁▁▁▁。

A.补码B.反码C.原码D.ASCII码

2.下列变量名中合法的是▁▁▁▁▁。

A.B.C.TomB.3a66C._6a7bD.$ABC

3.以下语句输出的结果是▁▁▁▁▁▁。

#include

voidmain()

{

printf(“%d”,null);

}

A.0B.编译出错,变量无定义C.-1D.1

4.为避免在嵌套的条件语句if-else中产生二义性,C语言规定:

else子句总是与▁▁▁配对。

A.同一行上的ifB.其之后最近的if

C.其之前最近的ifD.缩排位置相同的if

5.以下程序的执行结果是▁▁▁▁▁▁。

#include

voidmain()

{inti,sum;

for(i=1;i<=3;sum++)sum+=i;

printf(“%d\n”,sum);}

A.6B.3C.死循环D.0

6.当执行以下程序时,▁▁▁▁▁▁。

#include

voidmain()

{

inty=-1;

do{y--;}

while(--y);

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

}

A.循环体将执行一次B.循环体将执行两次

C.循环体将执行无限次D.系统将提示有语法错误

7.若有定义inta[4][5],则元素a[2][3]是数组中第个元素。

A.13B.14C.8D.9

8.在函数调用语句fun1(fun2(x,y),(x,y),z=x+y);中,fun1的实际参数的个数是。

A.3B.7C.4D.5

9.以下叙述中不正确的是。

A.在不同的函数中可以使用相同名字的变量

B.函数中的形式参数是局部变量

C.在一个函数内定义的变量只在本函数范围内有效

D.在一个函数内的复合语句中定义的变量在本函数范围内有效

10.p1指向某个整型变量,要使指针p2也指向同一变量,哪一个语句是正确的。

A.p2=*&p1;B.p2=**p1;C.p2=&p1;D.p2=*p1;

二、填空题(每小题1分,共10分,把答案填在题中横线上)

1.一个C语言程序一般由若干个函数构成的,程序中至少应包含一个。

2.x是int类型变量,则执行下列语句x=7;x+=x-=x+x;后x的值是。

3.设有intx=13;则表达式(++x*1/3)的值是。

4.若a=13、b=25、c=-17,条件表达式((y=(a

a:

b)

y:

c的值为。

5.在函数内部定义只在本函数内有效的变量是。

6.函数直接或者间接地自己调用自己,被称为函数的。

7.在C语言中,要读取某个数据文件里的数据,首先要将该文件处于打开状态,即对该文件进行操作。

8.定义语句为chara[]=”hangzhou”,*p=a,语句for(inti=0;*p!

=’\0’;p++,i++);

执行后i的值为。

9对宏定义语句“#definef(x,y)printf(x,y)”的引用f(”%d\n”,m);置换展开后为。

10.释放由p所指向的内存区的语句为。

三、读程序写结果(每小题5分,共20分,把答案填在题中“运行结果”处)

1.下列程序的输出结果是:

#include

voidmain()

{inty=3,x=3,z=1;

printf(“%d%d\n”,(++x,y++),z+2);}

运行结果:

 

2.以下程序的执行结果是:

#include

voidmain()

{structstud

{

charname[20];

intage;

charsex;

}student={"louis",10,'m'};

printf("%s,%d,%c",student.name,student.age,student.sex);

}

运行结果:

 

3.以下程序运行后,输出结果是:

#include

voidmain()

{

inty=18,i=0,j,a[8];

do

{a[i]=y%2;i++;

y=y/2;

}while(y>=1);

for(j=i-1;j>0;j--)

printf(“%d”,a[j]);

printf("\n");}

运行结果:

 

4.以下程序运行后,输出结果是:

#include

voidmain()

{

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

int*p=a;

printf("%d,",*++p);

printf("%d,",*p++);

printf("%d",a[2]);

}

运行结果:

 

四、程序填空。

根据下列各题题意填空,填写在程序中的划线处。

(每空2.5分,共20分)

1.输入2个整数,输出它们的最小公倍数和最大公约数。

#include

voidmain()

{intm,n,gbs,gys;

scanf(

);

for(gbs=m;

;gbs=gbs+m);

gys=

}

2.输入若干个学生的姓名、学号、数学、英语、计算机成绩到文件中student.dat。

#include

voidmain()

{

charname[8],numb[8];

scanf("%d",&n);

for(i=1;i<=n;i++){

scanf("%s%s%d%d%d",name,numb,&m,&e,&c);

fprintf(fp,"%s%s%d%d%d\n",name,numb,m,e,c);

}

;

}

五、编写程序(每小题10分,共30分)

1.编程,统计在所输入的50个实数中有多少个正数、多少个负数、多少个零。

2.编程,用递归方法求n!

3.编写一个函数print,打印一个学生的成绩数组,该数组中有5个学生的数据记录,每个记录包括num,name,score[3],用主函数输入这些记录,用print函数输出这些记录。

《程序设计基础》考试样卷参考答案与评分标准

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

1

2

3

4

5

6

7

8

9

10

D

C

B

C

C

C

B

A

D

A

二、填空题(每小题1分,共10分,把答案填在题中横线上)

1.一个C语言程序一般由若干个函数构成的,程序中至少应包含一个main()函数。

2.x是int类型变量,则执行下列语句x=7;x+=x-=x+x;后x的值是-14。

3.设有intx=13;则表达式(++x*1/3)的值是4。

4.若a=13、b=25、c=-17,条件表达式((y=(a

a:

b)

y:

c的值为-17。

5.在函数内部定义只在本函数内有效的变量是内部变量。

6.函数直接或者间接地自己调用自己,被称为函数的__递归调用_。

7.在C语言中,要读取某个数据文件里的数据,首先要将该文件处于打开状态,即对该文件进行open(或打开文件)操作。

8.定义语句为chara[]=”hangzhou”,*p=a;,语句for(inti=0;*p!

=’\0’;p++,i++);

执行后i的值为8。

9对宏定义语句“#definef(x,y)printf(x,y)”的引用f(”%d\n”,m);置换展开后为printf(”%d\n”,m);。

10.释放由p所指向的内存区的语句为free(p)。

三、读程序写结果(每小题5分,共20分,把答案填在题中“运行结果”处)

1.运行结果:

33

2.运行结果:

louis10m

3.运行结果:

1001

4.运行结果:

2,2,3

四、程序填空。

根据读下列各题题意填空,写入在程序中的划线处。

(每空2.5分,共20分)

1.

(1)”%d%d”,&m,&n

(2)gbs%n!

=0

(3)m*n/gbs;

(4)printf(”%d%d\n”,gbs,gys);

2.

(1)FILE*fp;

(2)intm,e,c,i,n;

(3)fp=fopen(”student.dat”,”w”);

(4)fclose(fp);

五、编写程序(每小题10分,共30分)

1.编程,统计在所输入的50个实数中有多少个正数、多少个负数、多少个零。

参考程序如下:

#include"stdio.h"

#defineN50

voidmain()

{floatx;unsignedints1,s2,s3,i;//正确定义变量,得2分。

s1=s2=s3=0;

for(i=1;i<=N;i++){//正确使用循环,得2分。

scanf("%f",&x);//正确输入数据,得1分。

if(x<0)s1++;elseif(x==0)s2++;elses3++;//三个计数器每个正确累加,得3分。

}

printf("负数%u个,零%u个,正数%u个\n",s1,s2,s3);//正确输出,得2分。

}

2.编程,用递归方法求n!

参考程序如下:

#include

longfact(intm)//函数头部定义正确,得1分。

{longp;

if(m==0||m==1)p=1;//正确定义结束条件,得1分。

elsep=m*fact(m-1);//正确写出递归表达式,得2分。

return(p);//正确返回结果,得1分。

}

voidmain()

{

intn;

longx;

scanf(“%d”,&n);//输入,得1分。

x=fact(n);//正确调用函数,3分。

printf(“n!

=%ld”,x);//输出,得1分。

}

3.编写一个函数print,打印包含学生成绩的数组,该数组中有5个学生的数据记录,每个记录包括num,name,score[3],用主函数输入这些记录,用print函数输出这些记录。

参考程序如下:

#include

structstudent{charnum[7],name[9];intscore[3];};//正确定义结构体,得1分。

voidprint(structstudent*s,intn)//函数头部定义正确,得2分。

{inti;

for(i=0;i

(*(s+i)).score[0],(*(s+i)).score[1],(*(s+i)).score[2]);

//正确利用循环结构输出结果,得3分。

return;

}

voidmain()

{structstudentt[4];inti;

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

scanf("%s%s%d%d%d",&t[i].num,&t[i].name,&t[i].score[0],

&t[i].score[1],&t[i].score[2]);//正确利用循环结构输入数据,得2分。

print(t,4);//正确调用函数,得2分。

}

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > IT计算机 > 电脑基础知识

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2