C语言程序设计期末考试试题及答案_第1页
C语言程序设计期末考试试题及答案_第2页
C语言程序设计期末考试试题及答案_第3页
C语言程序设计期末考试试题及答案_第4页
C语言程序设计期末考试试题及答案_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、C语言程序设计(2021 /2021 学年第二:学段试1)题一二三四五六七八九总分碍分 1.假设 a、bA. a=b=(_ 一.选择题(总分值30分,每题2分)、c都定义为int类型且初值为0,那么以确的赋值语句是 _ c+8;B. a+=y+3;D.','g','s','0'8. 假设int i=10 ;执行以下程序后,变量 i的正确结果是 D switch ( i )(case 0: i+=1;case 10: i+=1;case 11: i+=1;default: i+=1;A. 10 B. 11C. 12 D. 139. 以下语句

2、中不正确的字符串赋值或初始化的是C .A. char str10=("strings" B.char str8=('s','t','r','i','nC. char str10; str= "strings" D. char str= "strings"10. 有如下程序:#include <stdio.h>void main()(int a=1,b=0,c=0;if (a<b)if (b<0) c=0;else c+;printf (&q

3、uot;%dn ,c);该程序的运行结果是D QA. 3B. 2C. 1D. 011. 在函数调用,对参数传递的说法正确的选项是A .A实参和形参各占一个独立的存储单元.B实参和形参始终共用一个相同的存储单元.C可以由用户指定实参和形参是否共用一个存储单元.D可以由系统指定实参和形参是否共用一个存储单元12. 以下正确的程序段是 C.A. char str1 = "12345", str2 = "abcdef" strcpy(str1, str2);B. char str10, *st="abcde" strcat(str, st);

4、C. char str10= " ", *st="abcde" strcat(str, st);D. char *st1="12345", *st2="abcde" strcat(st1, st2);13. 假设有定义:int *p4;那么标识符p B.A. 是一个指向整型变量的指针B. 是一个指针数组名C. 是一个指针,它指向一个含有四个整型元素的一维数组D. 说明不合法装 C. c+;D.a+b+c|2.int j , i=1 ;执行语句"j=i+ ;"后,变量i的值是B .A. 1 B.

5、2 C.- 1 D. -23.执行下面程序:#include "stdio.h"void main()订 int a=1,b=2,c=3;c=(a+=a+2),(a=b,b+3);printf( "%d,%d,%d ,a,b,c);线那么输出结果是:A.A. 2,2,4 B. 4,2,3 C. 5,5,3 D. 4,2,5,4.假设要求在if后一对圆括号中表示 a不等于0的关系,那么能正确表示这一关系的表达式 为D .A. a< >0 B. !a C. a=0 D. a:5. for (j=0;j<11;j+);循环结束后,j 的值是 B.A.

6、12B. 11C. 10D. 96. C语言中函数返回值的类型由D 决定的.:A. return语句中的表达式类型B.调用该函数的主调函数的类型:C.调用函数时临时决定 D.定义函数时所指定的函数类型;7.以下说法中正确的选项是B .-A在调用用户自定义函数时,必须对其进行声明.:B函数可以返回一个值,也可以什么值也不返回.:C说明函数时,必须明确参数的类型和返回值.D在程序设计中空函数没有什么作用.14.15.中,以下程序的运行结果是C.typedef union(long a1;int b2;char c8; TEST;TEST m;main()(printf("%dn ,siz

7、eof(m);A. 32 B. 16 C. 8 D. 24设有以下结构体类型:struct st(charname8;int num;floats4;student50;并且结构体数组student中的元素都已有值,假设要将这些元素写到硬盘文件file.txt以下不正确的形式是C.A. fwrite(student , sizeof (struct st ), 50, fp );B. fwrite(student , 50*sizeof(struct st), 1, fp );C. fwrite(student , 25*sizeof(struct st), 25, fp );D. for (

8、i=0 ; i<50 ; i+ )fwrite (student+i , sizeof (struct st ), 1, fp );#include <stdio.h>void main()int i=2,j=5,s;s=i;for (;-j;)s=s*10+i;printf ("%cf ,s);10.写出程序的执行结果:i=10, j=11main () int i=0, j=0 ;while (i<10)i+ ;while (j+<10);printf( " i=%d, j=%dn , i , j);得分三、读程序写结果(总分值 16分,每

9、题4分)得分、填空题(总分值 20分,每空2分)1. 每个C语言编写的程序必须有一个,并且只能有一个主 函数.2. 设x和y均为int型变量,且x=1,y=2,那么表达式3+x/y的值为 33. 假设有定义:int a =2,4,6,8,10,12,*p=a;那么 *(p+1)的值是 4<4. 设x=0xAB,假设要通过x|y使x低4位置1,高4位不变,那么y= 0x0F5. 测试char型变量m的最高位数据是否为1的表达式是a&0x80.6. 假设x=2 , y=-3那么x&&y的结果是 .7. 与二进制数101等值的十进制数为5.8. 定义int i=1;执行

10、语句 while(i+<5); 后,i的值为 6.9. 下面程序的运行结果为22222.1.判断下面程序的运行结果.#include<stdio.h>void main()int a=0,b=1;int fun(int a,int b);printf("%dn",fun(a,b);printf("%dn",fun(a,b);int fun(int m, int n)static s=1;s+;return(s*(m+n);2程序运行的结果为:3#include "stdio.h"struct ks(int a;int

11、 *b;s4,*p;void main()(int n=1,i;printf("n");for(i=0;i<4;i+)(si.a=n;si.b=&si.a;n=n+1;p=&s0;p+;printf("%d,%dn",(+p)->a,(p+)->a);2.以下程序的输出结果是g.#include"stdio.h"structchain(int x;int y;struct chain *p;m2;void main()(m0.x=1;m0.y=2;m1.x=3;m1.y=4;m0.p=&m1;

12、m1.p=m;printf("%d,%dn,(m0.p)->x,(m1.p)->y);3.下面程序的运行结果是7654321.#include <stdio.h>#include <string.h>fun(char *w, int n)四、程序设计总分值 34分void (char t,*s1,*s2;s1=w;s2=w+n-1;while(s1<s2)(t=*s1;*s1=*s2;*s2=t;s1+;s2-;voidmain()(1.编写一个程序,判断某一年是否为闰年.(6分)#include <stdio.h>void ma

13、in()(int year;printf( "input year=");scanf( "%d ,&year);if (year%4=0&&year%100!0)|year%400=0)printf( "%4d is a leap year n ,year);elseprintf( "%4d is not a leap year n " ,year);char p="1234567;fun(p, strlen(p);puts(p);4.下面程序的输出结果为4, 24 .将一个整数字符串转换为一个整数,

14、如 "-1234"转换为-1234.(10分)#include <stdio.h>#include <string.h>intchnum(char *p);voidmain()char s6;int n;gets(s);if(*s='-')n=-chnum(s+1);elsen=chnum(s);printf("%dn,n);chnum(char *p)int num=0,k,len,j;len=strlen(p);for( ;*p!= '0'p+)k=*p-'0'j=(-len);while

15、(j->0)k=k*10;num=num+k;return(num);-1112. 用 一昌_ 1十1 _【A A公式求兀的近似值,直至!J最后一项的绝对值小于435710-6为止,请编程实现.(8分)#include math.hvoid main()int s;float n,t,pi;t=1; pi=0; n=1.0; s=1;while(fabs(t)>1E-6)pi=pi+t;n=n+2;s=-s;t=s/n;pi=pi*4;printf( pi=%10.6fn ,pi);3. 编写程序,利用子函数实现计算字符串的长度.(10分)#include <stdio.h&

16、gt;intlength(char *s);voidmain()chara100;inti;printf("Please input the string:n");gets(a);i=length(a);printf("nThe length of string is %d",i);int length(char *s)char *p=s;while(*p)p+;return(p-s);庄子云: 入生天地之间,假设白驹过隙,突然而已.是呀,春秋置换,日月交替,这从指尖悄然划过的时光,没有一点声响,没有一刻停留,仿佛眨眼的功夫,半生已过.人活在世上,就像暂

17、时寄宿于尘世,当生命的列车驶到终点,情愿也罢,不情愿也罢,微笑也罢,苦笑也罢,都不得不向生命挥手作别.我们无法挽住时光的脚步,无法改变人生的宿命.但我们可以拿起生活的画笔,把自己的人生涂抹成色彩靓丽的颜色.生命如此短暂,岂容随意挥霍!只有在该辛勤耕耘的时候播洒汗水,一程风雨后,人生的筐篓里才能装满硕果.就算是烟花划过天空,也要留下短暂的绚烂.只有让这仅有一次的生命丰盈充实,才不枉来尘世走一遭.雁过留声,人过留名,这一趟人生旅程,总该留下点儿什么!生活是柴米油盐的平淡,也是行色匆匆的奔波.一粥一饭来之不易,一丝一缕物力维艰.前行的路上,有风也有雨.有时候,风雨扑面而来,打在脸上,很疼,可是,我们不能向生活低头认输,咬牙抹去脸上的雨水,还有泪水,甩开脚步,接着向前.我们需要呈现最好的自己给世界,需要许诺最好的生活给家人.所以,生活再累,不能后退.即使生活赐予我们一杯不加糖的苦咖啡,皱一皱眉头,也要饮下.人生是一场跋涉,也是一场选择.我们能抵达哪里,能看到什么样的风景,能成为什么样的人,都在于我们的选择.如果我们选择面朝大海,朝着阳光的方向挥手微笑,我们的世界必会收获一片春暖花开.如果我们选择小桥流水,在不动声色的日子里种篱修菊,我们的世界必会收获一隅静谧恬淡.选择临风

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论