c语言期末试卷

上传人:一*** 文档编号:82025934 上传时间:2022-04-28 格式:DOC 页数:7 大小:90KB
返回 下载 相关 举报
c语言期末试卷_第1页
第1页 / 共7页
c语言期末试卷_第2页
第2页 / 共7页
c语言期末试卷_第3页
第3页 / 共7页
点击查看更多>>
资源描述
C语言程序设计A试卷(B卷)班级 学号 姓名 一、选择题:(每题1分,共计20分)1、C语言规定:在一个源程序中,main函数的位置( C )。A)必须在最开始B)必须在系统调用的库函数的后面C)可以任意 D)必须在最后2、设a为5,执行下列语句后,b的值不为2的是( C )。 A) b=a/2 B) b=6-(-a) C) b=a%2 D) b=a3?2:13、 若a=-14,b=3,则条件表达式 ab? a:b+1的值为( )。A) -14 B) -13 C) 3 D) 44、 已知:int n,i=1,j=2;执行语句n=ij?i+:j+;则i和j的值是( )。A) 1,2 B) 1,3 C) 2,2 D) 2,35、函数调用语句func(exp1,exp2),(exp3,exp4,exp5);中,实参的个数为 ( )。A) 1 B) 2 C) 4 D) 5 6、以下正确的描述是( )。A)函数的定义可以嵌套,但函数的调用不可以嵌套。B)函数的定义不可以嵌套,但函数的调用可以嵌套。C)函数的定义和函数的调用均不可以嵌套。D)函数的定义和函数的调用均可以嵌套。7、 在C语言中,下面对函数不正确的描述是( )。A)当用数组名作形参时,形参数组值的改变可以使实参数组之值相应改变。B)允许函数递归调用。C)函数形参的作用范围只是局限于所定义的函数内。D)子函数必须位于主函数之前。8、 如果在一个函数中的复合语句中定义了一个变量,则以下正确的说法是( )。A)该变量只在该复合语句中有效B)该变量在该函数中有效C)该变量在本程序范围内均有效D)该变量为非法变量9、若x=4,则x*=x+2的值为( )。A) 36 B) 24 C) 18 D) 2010、下列能正确定义整型变量a、b和c并为其赋的值1的语句是( )。A) int a=b=c=1; B) int a,b,c=1 C) a=b=c=1; D) int a=1,b=1,c=111、以下关于宏替换的叙述不正确的是( )。A) 宏替换只是字符替换 B) 宏名无类型C) 宏替换不占用运行时间 D) 宏替换不占用编译时间 12、有以下程序段int a10=1,2,3,4,5,6,7,8,9,10,*p=&a3,b;b=p5;b中的值是( )。A) 5 B) 6 C) 8 D) 913、 以下程序中调用scanf函数给变量a输入数值的方法是错误的,其错误原因是( )。main()int *p,*q,a,b;p=&a;printf(input a:);scanf(%d,*p);A) *p表示的是指针变量p的地址B) *p表示的是变量a 的值,而不是变量a的地址C) *p表示的是指针变量p的值D) *p只能用来说明p是一个指针变量14、 若num、a、b和c都是int型变量,则执行表达式num=(a=4,b=16,c=32);后num的值为( )。A) 4 B) 16 C) 32 D) 5215、假设指针p已经指向某个整型变量x,则*p相当于( )。A) &x B) &p C) x D) *x16、 若有说明:int a10; 则对a数组元素的正确引用是( )。A) a10 B) a3.5 C) a5-3 D) a-117、 在C语言中, 一维数组的定义方式为:类型说明符 数组名( );A) 整型常量表达式 B) 表达式C) 整型常量 D) 整型表达式18、 以下能对一维数组a进行正确初始化的语句是( )。A) in a10=(0,0.0,0,0); B) int a10=; C) int a0; D)int a10=10*1;19、假设指针p1已经指向了某个整型变量,要使指针p2也指向同一个变量,则下面各项中正确的是( )。 A) p2=*p1 B) p2=*&p1C) p2=*p1 D) p2=&*p120、 以下关于do-while循环的不正确描述是( )。A)do-while的循环体至少执行一次B)do-while循环由do开始,用while结束,在while(表达式)后面不能写分号C)在do-while循环体中,一定要有能使while后面表达式的值变为零(假)的操作。D)do-while的循环体可以是复合语句。二、判断题(每题1分,共计10分)1、在一个函数内部的复合语句中定义的变量,只在该复合语句范围内有效。 ( )2、字符串作为一维数组存放在内存中。 ( )3、 字符数组中的一个元素存放一个字符。 ( )4、 字符数组中的最后一个字符必须是0。 ( )5、 形参为指针变量时,实参必须是数组名。 ( )6、 用数组名作函数参数时传递的是数组的值。 ( )7、 全局变量可以被任何一个函数中的任何一个表达式使用。 ( )8、 一个函数可以带回一个整型值、字符值、实型值等,也可以带回指针型的数据。( )9、 表达式i+与+i在任何场合功能完全相同。 ( )10、赋值表达式中,赋值号左边的变量和右边的表达式之值的数据类型可以不相同。( ) 三、填空题:(每空2分,共40分)1、 在C语言中,一个float型数据在内存中所占的字节数为 4 个字节, C源程序的基本单位是 函数 .2、 算法表示的时候使用的三种基本结构是 顺序,选择,循环 (3) 。 3、以下程序运行后的输出结果是 _ 25 21 37_ 。 main( ) int a,b,c; a=25; b=025; c=0x25; printf(%d %d %dn,a,b,c); 4、以下程序运行后的输出结果是 gae 。 main () char a =Language,b=Programe; char *p1,*p2; int k; p1=a; p2=b; for(k=0;k=7;k+) if(*(p1+k)=*(p2+k) printf(%c,*(p1+k); 5、 已有定义: int m; float n,k; char chl,ch2; 为使m=3, n=6.5, k=12.6, ch1=a, ch2=A, 输入数据的格式为: 3 6.5 12.6aA 则对应的scanf语句是 scanf(%d%f%f%c%c,&m,&n,&k,&ch1,&ch2) 6、计算sum=1+1/2+1/4+.+1/50的值,并显示出来。#include main() int i=2; float sum=1.0; while(i= 50 ) sum+=1/ (float)I ; i+=2; printf(sum=%fn, sum);7、下面程序的功能是把以下给定的字符按其矩阵格式读入数组str1中,并输出行列号之和是3的数组元素。 void main(void) char str143=A,b,C,d,E,f,G,h,I,j,K,i; int x,y,z; for(x=0;x4;x+) for(y=0; y3 ;y+) z=x+y; if ( z=3 ) printf(%cn,str1xy); 8、 通过函数求f(x)的累加和,其中f(x)x21main()printf(The sum=%dn,SunFun(10);SunFun(int n)int x,s=0;for(x=0;x=n;x+) s+=F(_ x _);return s;F( int x) return _ x*x+1_;9、以下程序运行后的输出结果是 _ 1*3*5*7*9 _。 main() char a=123456789,*p; int i=1; p=a; while(*p) if(i%2=0) *p=*; p+;i+; puts(a); 10、 若有以下定义和语句: int *p3,a9,i; for(i=0;i3;i+) pi=&a3*i;则*p0引用的是数组元素 a0 ; *(p1+1)引用的是数组元素 a4 。11、以下程序输入整数a,b的值,然后交换a,b的值,并输出交换后的结果。 void swap(int *a, int *b) int t; t=*a; _*a=*b_ _*b=t;_ main() int a,b; scanf(%d,%d,&a,&b); swap(&a,&b) printf(a=%d,b=%d,a,b); 12、下面程序的功能是用函数递归方法计算菲波那契数列,请填空完善之。 main() int n,m; scanf(%d,&n); m=_ fibo(n) _; printf(%d,m); int fibo(n); int n; if(n=1) _return(o)_; else if(n=2) return(1); else return (_fibo(n-2)+fibo(n-1)_);四、编程题(每题10分,共30分)1、打印出以下的杨辉三角形(要求打印出10行)(10分)11 11 2 11 3 3 11 4 6 4 11 5 10 10 5 11 6 15 20 15 6 1. . . . . . . . . . . . . . . . . . .main ( ) int i,j,row=0,colum=0,max,temp; int a44; for (i=0;i=3;i+) for (j=0;j=3;j+) scanf(%d,&aij); (2分) for (i=0;i=3;i+) for (j=0;j=3;j+) printf(%5d,aij); if (j=3) printf(n); (2分) max=a00; for (i=0;i=3;i+) for (j=0;jmax) max=aij; row=i; colum=j; (2分) temp=max;max=a00;a00=temp; (2 分)printf(max=%d,row=%d,colum=%dn,a00,row,colum);for (i=0;i=3;i+) for (j=0;jN)printf(“String too long,Input again!”); (1分)elseflag=0;sort(str); (1分) printf(“String sorted:n”);for (I=0;IN;i+) printf(“%c”,stri);void sort(char str ) (5分) int i,j;char t;for(j=1;jN;j+)for (i=0;(Istri+1) t=stri;stri=stri+1;stri+1=t;3、用递归的方法求N阶勒让德多项式的值,递归公式为: (10分) 1 (n= 0)Pn(x) x (n= 1) (2n1)*xPn-1(x)(n1)*Pn-2(x))/n (n=1)main( ) int x,n;float p(int,int); (2分)printf(“nInput n & x:”);scanf(“%d,%d”,&n,&x);printf(“n=%d,x=%d”,n,x); (2分)printf(“P%d(%d)=%6.2f”,n,x,p(n,x); (1分)float p(int n,int x) if (n=0) return(1);else if (n=1) return (x);elsereturn (2*n-1)*x*p(n-1),x-(n-1)*p(n-2),x)/n); (5分)诚 信 考 试 承 诺我承诺:追求真知,展示真我,诚实守信,杜绝作弊。承诺人:盐城师范学院20082009学年第1学期期末考试C语言程序设计A试卷答题纸(B卷)学院 班级 姓名 学号 题号一二三四五六总分得分本 题得 分一、选择题(本大题共20小题,每小题1分,共20分)1234567891011121314151617181920本 题得 分二、判断题(本大题共10空,每小题1分,共10分)12345678910本 题得 分三、填空题(本大题共20空,每空2分,共40分)(1) (2) (3) (4) (5) (6) (7) (8) (9) (10) (11) (12) (13) (14) (15) (16) (17) (18) (19) (20) 本 题得 分四:编程题(本大题共3小题,每小题10分,共30分)1、2、 3、第7页,共5页
展开阅读全文
相关资源
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!