您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > 《C语言程序设计》试卷及答案
第A-1页共5页继续教育学院函授期末考试试卷课程名称:C语言程序设计(A、B、C卷)考试方式:闭卷(开卷、闭卷)试卷份数:教学点:鄂州大学教学点类别:(本、专)科专业年级:题号一二三四五六七八总分阅卷教师得分一、选择题(20分)1.一个C的源程序要正确地运行,必须要有__。A)printf函数B)自定义的函数C)main函数D)不需要函数2.C应用程序中的变量__。A)可以先使用后定义B)必须先定义或声明后使用C)可不定义或声明直接使用D)可在任意位置定义或声明3.以下能对一维数组a进行正确初始化的语句是__。A)inta[10]=(0,1,3,4,0);B)inta[10]={};C)inta[]={0,0};D)inta(10)={10};4.已知x=43,ch=’A’,y=0;则表达式(x>=y&&ch<’B’&&!y)的值是。A)1B)语法错C)0D)“假”5.以下关于运算符优先顺序的描述中正确的是__。A)关系运算符<双目算术运算符<赋值运算符<双目逻辑运算符B)双目逻辑运算符<关系运算符<双目算术运算符<赋值运算符C)赋值运算符<双目逻辑运算符<关系运算符<双目算术运算符D)双目算术运算符<关系运算符<赋值运算符<双目逻辑运算符6.下面正确的字符常量是。A)“A”B)‘\\’’C)‘xy’D)‘y’7.若以下变量均是整型,且num=sum=7;则计算表达式sum=num++,sum++,++num后sum的值为__。A)7B)8C)9D)108.在C语言程序中,数组名代表的是____。A)数组的首地址B)数组全部元素的值C)数组的第一个元素D)数组元素的个数9.在C语言中,要求运算数必须是整型的运算符是__。A)/B)++C)%D)!=10.若有inta[4];int*p;且有p=&a[3];p++;*p=5;则________。A)会出现编译出错B)程序肯定能按预期正常运行C)可提高程序运行效率D)可能破坏系统中的其他数据或程序二、填空题(10分)1.数组a是一维整型数组,有10个元素,该数组下标的取值范围是从到(从小到大)。第A-2页共5页2.在C语言中常用的实型变量分为两种类型,它们是和double。3.表达式8/4*(int)2.5/(int)(1.25*(3.7+2.3))值的数据类型为。4.采用结构化程序设计方法设计的程序一般包含三种基本结构,请列出:,,。5.C语言中的标识符只能由三种符号组成,它们是,和。三、判断题(10分)(正确的打“√”;错误的打“x”。)()1.一个字符串存放在数组中,该字符串以‘\0’作为结束标志。()2.7&&3+12的值是15。()3.在C语言程序中函数的定义可以嵌套。()4.在C语言程序中,数组名做函数调用的实参时,传递给形参的是数组第一个元素的值。()5.C语言规定:在一个源程序中,main函数的位置必须在程序的最开始。四、下面各程序的输出是什么?(20分)1.#include<stdio.h>main(){inty=10;while(y––);printf(y=%d\n,y);}运行结果:2.#include<stdio.h>main(){unsignedfunc(unsigned,unsigned);unsignedx=3,y=3,c;c=func(x,y);printf(x=%u,y=%u,c=%u\n,x,y,c);}unsignedfunc(unsignedx,unsignedy){unsignedz=1,i;for(i=1;i<=x;i++)z=z*y;return(z);}运行结果:3.#include<stdio.h>main(){inta[]={10,12,37,4,5,3},﹡p;p=a;﹡(p+3)+=2;printf(%d,%d\n,﹡p,﹡(p+3));}运行结果:4.#include<stdio.h>main(){staticchara[]=”student”,b[]=”studing”;第A-3页共5页char*p1,*p2;intk;p1=a;p2=b;for(k=0;k=6;k++)if(*(p1+k)==*(p2+k))printf(“%c”,*(p1+k));}运行结果:五、为完成程序功能,请在下划线处填空。(20分)1.以下程序的功能是将字符串S中的数字字符放入d数组中,最后输出d中的字符串。例如,输入字符串abc123def456gh,执行程序后输出123456。请填空。#includestdio.h#includectype.hmain(){chars[80],d[80];inti,j;gets(s);for(i=0,j=0;s[i]!=;i++)if(){d[j]=s[i];j++;}d[j]=;puts(d);}2.以下程序是先输入数据给数组a赋值,然后按从a[0]到a[4]的顺序输出各元素的值,最后再按从a[4]到a[0]的顺序输出各元素的值。请填空。main(){inta[5];inti,﹡p;p=a;for(i=0;i<5;i++)scanf(“%d”,p++);;for(i=0;i<5;i++,p++)printf(“%d,”,﹡p);printf(“\n”);;for(i=4;i>=0;,p--)printf(“%d,”,﹡p);printf(“\n”);}3.斐波那契数列中的头两个数是0和1,从第三个数开始,每个数等于前两个数的和,即:0,1,1,2,3,5,8,13,21,...等。下面这个程序就是求斐波那契数列的前20个数。请在下划线处填空。#include<stdio.h>voidmain(){intf,f1,f2,i;f1=0;f2=_________;printf(%d\n%d\n,f1,f2);for(i=3;i<=20;_________){f=_________;printf(%d\n,f);第A-4页共5页f1=f2;f2=_________;}}六、编写程序:(20分)1.编程序计算s=!101ii,输出结果。2.编写一函数,统计字符串中字母、数字、空格和其他字符的个数,在主函数中输入字符串并输出统计结果。《C语言程序设计》试题标准答案及评分标准一、选择题(每小题2分,共20分)1-5:CBCAC6-10:DBACD二、填空题(每空1分,共10分)①09②float③int④顺序结构选择结构循环结构⑤字母数字下划线三、判断题(每小题2分共10分)①√②×③×④×⑤×四、阅读程序写出运行结果(每小题5分共20分)①-1②x=3,y=3,c=27③10,6④studn五、完成程序(每空2分共20分)①‘\0’或0s[i]=’0’&&s[i]=’9’‘\0’或s[i]或0②p=a或p=&a[0]p--或p=a+4或p=&a[4]或p-=1或p=p-1i--1i++f1+f2f六、编写程序:(仅供参考。每小题10分,共20分)1.编程序计算s=!101ii,输出结果。main(){longi,sum=0,jie=1;for(i=1;i=10;i++){jie=jie*i;sum=sum+jie;}printf(“%ld”,sum);}2.编写一函数,统计字符串中字母、数字、空格和其他字符的个数,在主函数中输入字符串并输出统计结果。intletter=0,number=0,spcbar=0,other=0;intcount(charstr[]){inti;for(i=0;str[i]!=’\0’;i++)if(str[i]=’a’&&str[i]=’z’||str[i]=’A’&&str[i]=’Z’)letter++;elseif(str[i]=’0’&&str[i]=’9’)number++;第A-5页共5页elseif(str[i]==’’)spcbar++;elseother++;returnother;}main(){charstring[80];scanf(“%s”,string);count(string);printf(“\nthenumberoflettersis%d\nnumber’sis%d\nspacebar’sis%d\ntheothersis%d\n”,letter,number,spcbar,other);}
本文标题:《C语言程序设计》试卷及答案
链接地址:https://www.777doc.com/doc-5179358 .html