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

下载本文档

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

文档简介

1、四川师范大学电脑科学学院20222022学年度第二学期期末考试C语言程序设计试卷 试卷A答卷说明:1、本试卷共6页,答题纸3页,4个大题,35个小题,总分值100 分,120分钟完卷。2、闭卷考试,所有的答案都必须写在答题纸上,判卷以答题纸上答案 为准。效 号 学线无题号-二二三四总分总分人分数3、本试卷适用于2022级1、2、3班。得分评卷人一、单项选择题(在每题的四个备选答案中,选出一个正确答案,并将正确答案的序号填在题干的括号内。每题1分,共20分)1、在C语言中,以下标识符中合法的是 ()A) . -intB).in1_3C). A_B!DD). const 2、不属于C语言根本数据类

2、型的是()D). un sig nedA). i ntB). unionC). char3、下面是对宏定义的描述。不正确的选项是()A) .宏不存在类型问题,宏名无类型,它的参数也无类型B) .宏替换不占用运行时间C) .宏替换只是字符串的简单替代D) .宏替换时先检查类型,类型一致时才可以替换4、C语言中,"xfds "在内存中占用的字节数是()A).3B).4C).5D).65、设 int x;那么执行 printf( " n%x,xAx)的结果是()A). ffffffff B). ffC). 0D). 16、对于while语句,错误的说法是 ()A).用条

3、件控制循环体的执行次数B).循环体至少要执行一次7、89、10、11、12、13、14、15、16、17、C).循环体有可能一次也不执行D).循环体中可以包含假设干条语句执行以下语句后输出的结果是()int a=8,b=7,c=6;if(a<b)if(b>c)a=c;c=b;prin tf("%d,%d,%dn",a,b,c); |A).6,7,7B).6,7,8C).8,7,6D).8,7,8设 int a=9,b=20 ;贝9 printf( " %d,%)'d-a,-b);的输出结果是()A).9, 19B).9, 20C).10, 19

4、D).10, 20设 static char x= 12345 ,y =' 0";那么'(,')3' , ' 4' , ' 5A).x数组的长度等于y数组的长度 B).x数组的长度大于y数组的长度C).x数组的长度少于y数组的长度 D).x数组与y数组的存储区域相同设int i,x33=1,2,3,4,5,6,7,8,9;那么下面语句的输出结果是()for(i=0;i<3;i+)printf( d',刈)2A).147B).159C).357D).369执行完以下语句后,n的值是()int n;for (n=0 ;

5、 n <100 ; n=2* n+1);A).125B).126C).127D).128有以下语句:int a=6;a+=a- =a*a;printf(“ 输出结果()A). -132B). -60C). -24D). 0为了连接两个字符串s1与s2,应当使用()A). strcat( s1 , s2 )B). strcpy( s1, s2 )C). strlen( s1, s2 )设int a,*p ;那么语句p=&a;中的运算符“ &的含义是()D). strcmp( s1, s2 )A).位与运算B).逻辑与运算C).取指针内容D).取变量地址下面输出的结果为()i

6、nt a=13, b=64; printf(“ , | (b>>3);A).13B).64C).1D).0以下定义正确的选项是()A).en um t=a,bx;B). en um t1,2x;C). enum ' +'' x;D). enum ta,bx;设有定义:struct uint a4;float b3; char c16;aa;那么 printf( " %d ,sizeof(aa)的输出是()A).32B).36C).12D).818、数据-54.78在文本文件中占用的字节个数是A).4B).5C).6D).819、在宏定义#defin

7、e pr 3.14*r中,请问宏名是A). pB). p(r) C).3.14*rD). p(r)*r20、要翻开一个已存在的用于修改的非空二进制文件“,正确语句是A). fp=fope n( "hello.txt ","r")C). fp=fope n( "hello.txt ","w")B). fp=fope n( "hello.txt ","ab+")D). fp=fope n( "hello.txt ","r+").效号 学线无

8、得分评卷人二、填空题仔细阅读每题的说明和源代码,并将正确答案写到答题纸上对应的题号 处。每题4分,共36分1.以下程序的功能是:从键盘上输入假设干个学生的成绩 低成绩,当输入负数时结束输入.请填空.,统计并输出最高成绩和最#in clude <stdio.h>int main (i nt argc, char* argv) float x,amax,am in; sca nf("%f", &x); amax=x; amin=x;while( 21) if(x>amax)amax=x;scan f("%f", &x);pr

9、in tf("namax= %fn ami n=%fn ",amax,am in);return 0;21:22:2.下面程序的功能是比拟字符数组 a和字符数组b中的两个字符串是否相等比拟对 应字符,全部相同输出 0,如果不同,返回第一个不相同的字符差值,并输出。3.就以下程序空缺的地方进行填空。#i nclude <stdio.h>#in clude <ctype.h> int main (i nt argc, char* argv) char str81,*sptr;int i;for(i=0;i<80;i+)stri=getchar();

10、 if(stri='n') break;stri= ( _25);sptr=str;while(*sptr)putchar( 26);return 0;26:#i nclude <stdio.h>int main(v oid)char a100="Hello World!" char b100="Hello Che ngdu!"23;/*完成对应字符的比拟,并判定一个字符串是否 结束了 */while(24)i+;printf("%dn", ai-bi);return 0;4.以下程序对一个3 X3的矩阵进

11、行行列互换。#i nclude <stdio.h>int main (i nt argc, char* argv)int i,j,temp;int a33=1,2,3,4,5,6,7,8,9;for( i=0 ; i<3; i+)for( j=0; (27)i; j+)temp=aij,(28), (29);prin tf("n the result array is:n");for(i=0;i<3;i+)prin tf("n );for(j=0;j<3;j+)prin tf("%5d",aij);return 0

12、;25:27:得分评卷人三、阅读以下程序,将输出结果写到答题纸上对应的题号处。本大题共4小题,每题5分,共20分二效 号 学线无30题:#in elude <stdio.h>int fun (i nt x)int y=0; static int z=3;z+;+y; retur n( x+y+z);void mai n()int i,x=2;for(i=0;i<2;i+)prin tf("%5d",fu n(x+);31题:#in clude <stdio.h>int main (void) char str1OO="l am a p

13、ig."char *p= &str7;int i;for (i=0; stri != '0'i+, p+ ) if( *p>='a' && *p<'z')(*P)+;else if( *p = 'z')*p = 'a'puts( str );return 0;内线封密32题:#i nclude <stdio.h>int a仁300,a2=400;void sub1(i nt x,i nt y)a1=x;x=y;y=a1;void mai n()int a3=

14、100,a4=200;sub1(a3,a4);sub1(a1,a2);prin tf("%d,%d,%d,%dn",a1,a2,a3,a4);33题:#in clude <stdio.h> int gcd(i nt m,i nt n)if(m=n)return m;else if(m>n)return gcd(m-n,n);elsereturn gcd(m, n-m);void mai n()prin tf("Gcd=%dn",gcd(24,36);得分评卷人四、程序设计题,将源代码标准地书写在答题纸上第34小题10分,第35小题各14

15、分,共24分。34设计函数实现将一个字符串中小写字母转化为大写字母。11135.计算e 1的值并输出设n=20。1!2!n!四川师范大学电脑科学学院20222022学年度第二学期期末考试C语言程序设计试卷试卷A参考答案与评分标准、单项选择题:每题1分,共20分12345678910BBDDABCAAC11121314151617181920CBADCDBCAB二、填空题:每空4分,共36分21: x >= 0 22: x < amin23:int i=0 24: (ai = bi) && ai != '0'25:0' 26:*sptr+27:

16、 j <i28:aij = aji29: aji三 temp三、阅读程序题:每题5分,共20分30:7931: I am a qjh.32: 100,400,100,20033: Gcd=12四、程序设计题:第34小题10分,第35小题各14分,共24分34设计函数实现将一个字符串中小写字母转化为大写字母。10分#i nclude <stdio.h>1分#in clude <ctype.h>1分/*转换函数4分,其中:循环正确1分,判断、转换正确各1分,其余1分*/void Con vert(char * str)while (*str != '0')if(islower(*str)*str = toupper(*str);str+;1分*/*主函数4分,其中:变量定义初始化正确1分,函数调用正确2分,输出正确void mai n()char str = "123123asadAsadMNer"Con vert(str); prin tf("%sn ,str);其它答案可根据情况酌情给分。11135计算e 1的值并输出(设n=20)。 14分1!21!n!#in clude <std

温馨提示

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

评论

0/150

提交评论