c语言程序设计题目湖南大学,C语言程序设计试卷蔡益红.doc

C语言程序设计试卷蔡益红.doc

考试中心填写湖 南 大 学 课 程 考 试 试 卷课程名称C语言程序设计 ;试卷编号( ) ;考试时间120分钟 年 月 日考 试 用专业班级题 号一二三四五六七八九十总 分应得分101020202020100实得分评分评卷人一、选择题(每题2 分,共10分)1以下叙述中正确的是 A 构成C程序的基本单位是函数B 可以在一个函数中定义另一个函数C main函数必须放在其它函数之前D 所有被调用的函数一定要在调用之前进行定义2设a和b均为double型变量,且a5.5、b2.5,则表达式(int)ab/b的值是 A)6.500000 B)6 C 5.500000 D 6.0000003已知i、j、k为int型变量,若从键盘输入1,2,3回车,使i的值为1、j的值为 2、k的值为3,以下选项中正确的输入语句是 A scanf“2d2d2d”,i,j,k;B scanf“d d d”,i,j,k;C scanf“d,d,d”,i,j,k;D scanf“id,jd,kd”,i,j,k;4.若x 为unsigned int 型变量,则执行下列语句后x值为( )x 65535; printf“dn”,x;A)65535 B)1 C)无定值 D)-15. 定义全局变量时,若变量的的存储类别缺省,则默认的存储类型是( )。A)auto B) register C)extern D) static二、判断题(每题 1 分,共10分)1、 C程序中的函数不能嵌套调用,但可嵌套定义。 ( )。2、 当形式参数为指针变量名时,实际参数可为指针变量名、数组名或其它类型变量的首地址()。3、 若有说明static int a34;,则数组a中各数组元素可在程序的编译阶段得到初值0()。4、 若用数组名作为函数调用时的实参,则实际上传递给形参数组的是数组的第一个元素的值()。5、共用体变量的地址和它的各成员的地址都是同一起始地址。 ()。6、语句int *p int,int;定义了一指针变量p,指向一个包含有两个int型形参的函数,其返回值也为int型数据。 ( )。7、文件指针与文件内部位置指针意义相同。( )。8、在定义枚举类型数据时,枚举元素是变量。( )。9、continue语句只能冲破一层循环。 ( )。 10、结构体类型数据可以嵌套定义。 ( )。装订线(答题不得超过此线)学号姓名第 1 页(共 6 页)三、写出程序运行结果(每题 5 分,共20分)1main int a15,b21,m0; switcha3 case 0m;break; case 1m; switchb2 defaultm; case 0m;break; printf“dn”,m; 程序运行后的输出结果是 2float funint x, int yreturn xy;main int a2,b5,c8; printf3.0fn,funintfunac,b,a-c;程序运行后的输出结果是3void funchar *c,int d *c*c1;dd1; printfc,c,,*c,d;main char aA,bab,a; printfc,cn,a,b;程序运行后的输出结果是4. struct stu char num10; float score3; ;main struct stu s320021,90,95,85, 20022,95,80,75, 20023,100,95,90,*ps; int i; float sum0; fori0;i3;i sumsump-scorei; printf6.2fn,sum;程序运行后的输出结果是第 2 页(共 6 页)四、程序改错(每题5分,共20分)1以下程序的功能是按顺序读入10名学生4门课程的成绩,计算出每位学生的平均分并输出,程序如下main int n,k; float score ,sum,ave; sum0.0; forn1;n10;n fork1;k4;k scanff,score; sumscore; avesum/4.0; printfNOdfn,n,ave; 上述程序运行后结果不正确,调试中发现有一条语句出现在程序中的位置不正确。这条语句是哪条并将其移到正确的位置。2以下函数的功能是计算s11/21/31/n,程序运行后结果不正确,错误的语句是哪条并改之。mainfloat s0.0; int i; fori1;i3;i ss1/i; printff,s;3. 以下函数的功能是输出有10个元素的整型数组a的元素值。程序运行后结果不正确,只增加一条语句使其完成要求功能。main int a10, *pa , i; for i0; i10; i scanfd,p; printfn; for i0; i10; i, p printfd ,*p;4. 以下函数的功能是打印1到5的阶乘值。程序运行后结果不正确,只修改一条语句使其完成要求功能。int facn int n; int f 1; f f * n ; return f ; main int i; for i1; i5; i printf“ddn”, i, faci; 第 3页(共6页)五、程序填空(在【 】中填空,每题5 分,共20分)1fun函数的功能是首先对a所指的N行N列的矩阵,找出各行中的最大的数,再求这N个最大值中的最小的那个数作为函数值返回。请填空。includestdio.hdefine N 4int funint*aN int row,col,max,min; forrow0;rowN;row formaxarow0,col1;colN;col if【 】 maxarowcol; if row0 minmax; else if【 】 minmax; return min;2函数sstrcmp的功能是对两个字符串进行比较。当s所指字符串和t所指字符串相等时,返回值为0;当s所指字符串大于t所指字符串时,返回值大于0;当s所指字符串小于t所指字符串时,返回值小于0(功能等同于库函数strcmp)。请填空。includestdio.hint sstrcmpchar *s,char *t while*s*t*s-*t 【 】 s;t;return 【 】3下面的程序是用指针来交换两个数据,请将缺省语句填上。void exchange int *p ,int *q int t; t*p; *p*q; *qt;main int a,b,*x,*y; a10;b20; xa; 【 】【 】printf“d dn”,*x, *y;4. 下面的程序是将字符串a按反向存入字符串b中并输出。如串a为12345,则串b为54321main char *aabcdefg,b80,*pb; int n,m,k; kstrlena; nk-1; m0; while n0第 4 页(共 6 页) *pm 【 】 n; 【 】*pk*ak;printfs n,a;printfs n,b; 六、编写函数完善下面程序(每题10分,共20分)1.编写在字符串中寻找关键字符的子函数include stdio.hchar *searchchar *tagstr, char *cmain char *stringI am a student,c; printfPlease enter the character; scanfc,c; /*输入关键字符*/ ifsearchstring,c printfFound,searchstring,c; else printfNot Foundn;2. 用指向函数的指针作形参,设计一个函数process, 每次实现不同的功能,当用不同的函数名作实参调用process时,process再去调用相应的函数。include stdio.hmain int max , min , add ,process;int a, b;printfenter a and b;scanfd, d, a, b;printfmax;processa, b, max;printfmin; processa,b,min;printfsum;processa, b, add; 第 5 页(共 6页)maxx, yint x, y;int z;if xy zx;else zy; returnz;minx, yint x, y;int z;if xy zx;else zy; returnz;addx, yint x, y;int z;zxy;returnz;process 第 6 页(共 6 页)考试中心填写湖 南 大 学 课 程 考 试 答 题 纸课程名称C语言程序设计 ;试卷编号( ) ;考试时间120分钟 年 月 日考 试 用专业班级题 号一二三四五六七八九十总 分应得分101020202020100实得分评分评卷人一、选择题(每题2 分,共10分)1 2 3 4. 5. 二、判断题(每题 分,共10分)1 2 3 4. 5. 6 7 8 9. 10. 三、写出程序运行结果(每题 5 分,共20分)1 2 3 4. 。四、程序改错(每题5分,共20分)1程序中的位置不正确的语句是 ;改为(说明新位置) 。2错误的语句是 ;改为 。3在 增加一条语句 。4将语句 改为 。五、程序填空(每题5 分,共20分)(每题按原程序次序填空)1【 】【 】。2【 】【 】。3【 】【 】。4【 】【 】。六、编写函数完善下面程序(每题10分,共20分)2.process 1char *searchchar *tagstr, char *c装订线(答题不得超过此线)学号姓名考试中心填写C语言程序设计参考答案课程名称C语言程序设计 ;试卷编号( ) ;考试时间120分钟 年 月 日考 试 用专业班级题 号一二三四五六七八九十总 分应得分101020202020100实得分评分评卷人一、选择题(每题2 分,共10分)1 A 2 D 3 C 4. D 5. C 二、判断题(每题 分,共10分)1 2 3 4. 5. 6 7 8 9. 10. 三、写出程序运行结果(每题 5 分,共20分)1 1 2 9 3 b,B A,b 4. 270.00 。四、程序改错(每题5分,共20分)1程序中的位置不正确的语句是sum0;(说明新位置) 删除sum0;并改内循环为forsum0.0,k1;k4;k 。2错误的语句是是ss1/i; ;改为 ss1.0/i; 。3在 第二个for循环之前增加 增加一条语句 pa; 。4将语句 int f 1; 改为 static int f 1; 。五、程序填空(每题5 分,共20分)(每题按原程序次序填空)1【 arowcolmax 】【 minmax 】。2【 0 】【 *s-*t; 】。3【 yb ; 】【 exchangex,y ; 】。4【 *an; 】【 m; 】。六、编写函数完善下面程序(每题10分,共20分)2.process x, y, fun int x, y; int *fun ; int result; result*funx,y; printfdn, result; 1char *searchchar *tagstr, char *cchar *ptagstr; while*p0 if *p*creturn *p;p; return NULL;装订线(答题不得超过此线)学号姓名

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值