好文档 - 专业文书写作范文服务资料分享网站

C语言程序设计(本科C卷及答案)(1)(1)

天下 分享 时间: 加入收藏 我要投稿 点赞

题号 得分 一 二 三 四 五 六 总分 printf(\A) 0 0 0

B) 0 1 0

C) 1 1 0

D) 0 1 1

8、程序段如下:则以下说法中正确的是( )。(第5章)

考试形式:■闭卷 □开卷 ■笔试 □机试 答卷要求:试卷答案需填写至答题卡内

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

1 2 3 4 5 6 7 8 9 10 C D A B B A D A C C 11 12 13 14 15 C D A C B 1、C语言源程序文件是一个后缀为( )的文件。(第1章) A) .bas

B) .java

C) .c

D) .pas

2、下列哪个图形不属于传统流程图的符号( )(第2章) A)

B)

C)

D)

3、下列标识符中,不合法的用户标识符为( )。(第3章) A) a+4

B) If

C) then D) _123

4、下面运算符优先级最高的是( )。(第3章)

A) * B) ! C) -(减号) D) = 5、以下哪个是不正确的转义字符(

)。(第3章)

A) '\\\\'

B) '077'

C) '\\0'

D) '\\n' 6、若int n,x=1,y=0,则条件表达式n=x

B) 1

C) 2

D) 表达式错误

7、分析以下程序, 下列说法正确的是( )。(第4章) int main()

{ int i=10,m=0,n=0,k=0; switch(i/10)

{ case 0: m++;n++;break; case 10: n++; break; default: k++;n++; }

int k=-10; while(k<0) k=k+1; A) while循环执行10次

B) while循环执行11次 C) 循环体语句一次也不执行

D) 循环是无限循环

9、下列程序段执行后k值为( )。(第5章) int k=0,i;

for(i=0;i<=20;i+=3) k=k+1;

A)5

B)6

C)7

D)8

10、若有定义int a[5],i=4;则对数组元素的非法引用是( )。(第6章) A) a[i]

B) a[i-1]

C) a[i+1]

D) a[i-4]

11、以下能正确定义数组并正确赋初值的语句是( )。(第6章) A) int a[2][]={1,2,3,4}; B) int a[2][3]={1,2,3,4,5,6,7}; C) int a[][3]= {1,2,3,4,5,6};

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

12、C语言规定,函数返回值的类型是由( )。(第7章) A) return语句中的表达式类型所决定 B) 调用该函数时的主调函数类型所决定 C) 调用该函数时系统临时决定

D) 在定义该函数时所指定的函数类型决定

13、以下函数调用语句中实参的个数为( )。(第7章)

func((v1,v2),(v3,v4,v5),v6);

A) 3 B) 4 C) 5 D) 6

14、有如下程序段,执行该程序段后a 的值为( )。(第8章)

int *p,a=10,b=2;

p=&a; a=*p+b;

A) 10 B) 11

C) 12

D) 编译出错15、有如下说明,则数值为9 的表达式是( )。(第8章)

int a[10]={1,2,3,4,5,6,7,8,9,10},*p=a;

A) *p+9

B) *(p+8)

C) *p+=9

D) p+8

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

1 函数 2 1/3*n(4*n-1)(4*n-1) }

2、(第4章和第5章)

下面程序是求1..300之间能被3整除的数。 3 1 4 50 5 4 1、C语言程序是由若干个 组成。(第1章) 2、若有声明double n;,则数学公式对应的C语言表达式形式为________。(第

3章)

3、执行语句“a=0,b=1,c=2;if(a>0 && b>0) c++; else c--;\后,变量c值为______。(第4章)

4、执行语句“for(s=0,i=1;i<11;i++) {if(i==5) continue; s+=i; }\后,s值为______。(第5章)

5、在执行int a[][3]={1,2,3,4,5,6};语句后,a[1][0]的值是_________。(第6章)

三、程序改错题。指出下列程序错误代码并改正,使其能正确运行。(每题只有2处错,指出1处得1分,改正得2分,每处 3分,共 12 分)题号 错误代码 改正后 (1) scanf(\%d,%d\ scanf(\%d,%d\ 1 (2) printf(\%d\\n,a+b\); printf(\%d\\n\); (1) for (i=1;i<=300;i++); for (i=1;i<=300;i++) 2 (2) if (n%3) if (n%3==0) 1、(第3章)

下面程序是输出a、b两个数,输出a+b的和。 #include <> int main(){ int a,b;

scanf(\%d,%d\

printf(\%d\\n,a+b\);

int main() { int i; for (i=1;i<=300;i++); if (n%3)

printf(\

return 0;

}

四、程序分析题,根据下列程序,写出其运行结果。共 12 分)

1、(第3章) int main()

{ int x=4,y=0,z; x*=3+2;

printf(\ x*=y=z=4;

printf(\}

2、(第4章和第5章) #include <>

int main()

{ int i;

for(i=1;i<=5;i++) { if(i%2)

putchar('<'); else

continue; putchar('>'); }

putchar('#');

(每小题 4 分,输出结果:______ 20 80

输出结果:______ < >< >< >#

}

3、(第6章)

void main()

输出结果:______ { int a[4][4],i,j,k; for (i=0;i<4;i++) 0 for (j=0;j<4;j++) 1 0 a[i][j]=i-j; 2 1 0 for (i=0;i<4;i++)

{

3 2 1 0

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

printf(\ printf(\ } }

五、程序填空题(每空 3 分,共 12 分)

第1空 Sn+hn 第2空 hn/2 第3空 a[i]>a[maxIndex] 第4空 maxIndex 1、一球从 100米高度自由落下,每次落地后反跳回原来高度的一半,再落下,求它在第十次落地时,共经过多少米第十次反弹多高(第4和5章) int main() {

float Sn=,hn=Sn/2; int n;

for (n=2;n<=10;n++) {

Sn= 【第1空】; hn= 【第2空】; }

printf(\第10次落地时共经过%f米\\n\ printf(\第10次反弹%f米\\n\}

2、下面的函数是实现找出一维数组中最大元素的下标。(第6和7章) int findMaxIndex(int a[],int n) {

int i;

int maxIndex; maxIndex=0; for(i=0;i

maxIndex=i;

return 【第4空】;

}

六、编程题(第1题 12 分,第2题12分,共 24 分)1、有三个数a、b、c,由键盘输入,输出其中最大的数。 (1)画出该程序的流程图;(6分) (2)编写程序。(6分) 参考答案 (1)

(2)

#include <>

int main() { int a,b,c; int max; scanf(\ if (a>b) max=a; else max=b; if (c>max) max=c; printf(\ return 0; }

2、编写程序,对n个整数逆序存放。n个整数和n在主程序中输入,最后在主函数中输出。(要求使用指针变量指向数组的方法) 例如:8 6 9 1 3,逆序后结果是:3 1 9 6 8 参考答案 #include <> #define N 20

void revert(int a[],int n) { int *p,i; int t; p=a; for (i=0;i

int main() { int i,n; int a[N]; scanf(\ for (i=0;i

revert(a,n);

for (i=0;i

}

C语言程序设计(本科C卷及答案)(1)(1)

题号得分一二三四五六总分printf(\A)000B)010C)110D)0118、程序段如下:则以下说法中正确的是()。(第5章)考试形式:■闭卷□开卷■笔试□机试答卷要求:试卷答案需填写至答题卡内一、单项选择题(每
推荐度:
点击下载文档文档为doc格式
2to2p9r76q0zdc523xwm17c19373ml00gle
领取福利

微信扫码领取福利

微信扫码分享