ImageVerifierCode 换一换
格式:DOCX , 页数:13 ,大小:34.59KB ,
资源ID:21721779      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/21721779.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(c语言试题月考Word文档下载推荐.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

c语言试题月考Word文档下载推荐.docx

1、%d,aj);n); A、10000 B、10010 C、00110 D、10100【解析】 本题中包含两个循环语句,do语句是分别给数组元素赋值,得a0=0,a1=1,a2=0,a3=0,a4=1,结束后变量i的值变为5。再执行for语句时是采用由后到前输出数组元素的值。3、已有如下定义和输入语句,若要求a1,a2,c1,c2的值分别为10,20,A和B,当从第一列开始输入数据时,正确的数据输入方式是( D )(注:表示回车、表示空格) int a1,a2; char c1,c2; scanf(“%d%d”,&a1,&a2); scanf(“%c%c”,&c1,&c2); A)1020AB

2、B)1020 AB C)10 20 AB D)1020AB4、设x 和y均为int 型变量,则执行以下循环后, y 的值为(C)#include stdio.hmain() int x,y;for (y=1,x=1;y=10) break; if(x%2=1) x+=5; continue; x-=3; printf(,y);A、2 B、 4 C、6 D、10【解析】根据程序可知,程序每次循环状态如表所示循环次数本次循环开始时的x的值本次循环结束时的x的值执行一轮循环后变量y的值6345循环执行到第6次时,由于x10所以退出循环。因此本题答案为C5、运行以下程序的输出结果是( A )#incl

3、udevoid main( ) char s16=123450ttt;%d %dn,strlen(s),sizeof(s);A、 5 16 B、 9 16 C、 5 13 D、 13 16【解析】本题主要考查字符串处理函数strlen( ),sizeof( ),strlen( )是长度测试函数,在测试过程中如遇到字符串结束标志符时自动停止读取,题中第6个字符为字符串结束标志符就停止,所以有效字符数为5。sizeof( )函数是求某一数据类型所占的内存空间的长度,此题中测试的是字符数组s所占内存空间的长度,而数组s的长度在定义时已明确指出为16,所以sizeof( )测出的值是16。所以本题答案

4、为A。6、运行以下程序的输出结果是( B ) int i,a10=0,1,2,3,4,5,6,7,8,9;for(i=1;ivoid main() char i,s5=abc,defghijkxyz;3;i+)%sn,si);A abc B defgh C defghijk D defghijk defgh ijk ijk xyz ijk【解析】此题考查字符串数组的含义,字符串数组实质是数组中每一个元素又都是存放一个字符串的数组,所以可以将一个字符数组视为一个二维字符数组。其中的元素按行占连续的存储单元,且其中有些存储单元是空闲的,各字符串并不是一串连着一串存放,总是从每行的第0个元素开始存放

5、一个新的串。此题中第二行由于数组长度刚好与字符个数相等,即长度不够,则字符串结束标志符O未能存入s中,而是存在s数组之后的一个单元里,所以本题的存放形式如图示。S0abc0S1defghS2ijkS3z题中使用了printf()函数的s格式符来输出字符串,实现时从数组的第一个字符开始逐个字符输出,直到遇到第一个0为止(其后即使还有字符亦不输出)。10、某店一个月的收入和支出总共记录了 N个数据,。,其中入记为正数,支出记为负数。该店用右边的程序框图计算月总收入S和月净盈利V,那么在图中空白的判断框和处理框中,应分别填入下列四个选项中的( C )(A)A0,VST(B) A0,VST (C) A

6、0, VST (D)A0,VST 【解析】月总收入为S,因此A0时归入S,判断框内填A0,支出T为负数,因此月盈利VST。二、填空题(4分*5=20分)1、有int a=3,b=4,c=5,x,y;,则以下表达式的值为 0 。! (x=a)&(y=b)&【解析】对于C语言中逻辑表达式有且只有“1”和“0”两个逻辑值,在运算过程中按从左至右的顺序进行运算,但要考虑运算符的优先级别。2、以下程序对输入两个整数,按从大到小顺序输出.请在 内填入正确内容. int x,y,z;scanf(“%d,%d”,&x,&y);if ( xy ) z=x; x=y;y=z;pringf(“%d,%d”,x,y)

7、;【解析】本题是要求按从大到小的顺序输出,程序中的z是用来交换x,y的中间变量,根据后一空中z=x;可知只有当x的值小于y的值时才会进行交换。3、以下程序是选出能被3整除且至少有一位是5的两位数,打印出所有这样的数及其个数。请填空。sub(int k,int n)a2= k%10; a2= k%10 ; a2=k/10 ;a1= k/10; a2=(k-a2)/10; a2=k-a2*10 ;if(k%3=0 &a2=5)|(k%3=0&a1=5) printf(,k);n+;return n;else return -1;int n=0,k,m;for(k=10;k=99;k+) m=sub

8、(k,n);if(m!=-1) n=m;nn=%d,n);【解析】本程序是要求选出能被3整除且至少有一位是5的两位数,根据这一特点就说明要成立必须包含两个方面(1)能被3整除;(2)其中个位或者十位上有个数字5且同时成立,题中if语句中的条件中包含的第一个方面,所以只需从这个两位数中分别分离出个位或十位与其结合就可以。154551545775n=6三、阅读程序写结果(5分*5=25分)1、3,1 4,3 2,4 1,2int x,y,z;x=y=2;z=3;y=x+-1;%d,%dt,x,y);y=+x-1;y=z- +1;,z,y);y=-z+1;【解析】本题主要考查自增与自减运算符的应用及

9、变量在按顺序执行过程中其值是否发生改变,变量的值一经改变必须使用改变后的值进行下一步的运算,同时一定要考虑其输出格式。4,7,102、 int i,a34=1,2,3,4,5,6,7,8,9,10,11,12;printf( %d,ai3-i);【解析】此题主要考查二维数组中的元素值与下标号的对应关系。3、void fun( int x,int y,int z )z=x+y; int a=12;f(5,6,a);%dn,a);【解析】本题是考查函数参数的传递关系,题中的参数是传值的关系,所以形参的改变不会影响实参。故输出时a的值为12。4、63 int i,j=3,a=1,2,3,4,5,6,

10、7,8,9,10;for(i=0;5;i+) ai=i*(i+1);4;i+) j+=ai*3;,j);【解析】本题考查(1)二维数组元素与该元素下标号的对应关系;for循环语句的运行特点;题中所包含的两个for循环语句和一个输出语句这,这三条语句是并列关系而不是嵌套关系,且第一个for循环的作用是改变下标号为0,1,2,3,4的元素的值,分别对应为0,2,6,12,20,其它的元素值不变。第二个for语句是求出当变量i改变时求出变量j的值,但要注意变量j值的改变后,要用变化后的值而不能用原有的初值,同时最后只有一个值,因为每循环一次并没有输出。5、#include main() int x;

11、 scanf(”%d”,&x); if(x-5) printf(”%d”,x); else printf(”%d”,x+); 程序运行后,如果从键盘输入5,则输出结果是( )【解析】本题考查双分支if结构的变化关系及自增、自减的变化特点。四、改错题(指出错误行为2分,更改正确后得3分,分值为25分)阅读程序,修改程序中的错误,不得增行和删行,也不得更改程序结构。请指出错误所在的行号,并给出该行修改后的程序代码。1、以下程序中函数fun的功能是:计算正整数num各位上的数字之积。例如,若输入252,则输出应该是20。若输入202,则输出应该是0。#include long fun(long nu

12、m)long k; do k*=num%10; num=10; while(num); return(k); int n;Please enter a number: scanf(%ld, n);n%ldn,fun(n);错误行: 更正:long k=1;num=10;num/=10;scanf(, &n);【解析】本题要求是“计算正整数num各位上的数字之积”,所以必须要分解各位上的数字,其中求余是取个位上的数,除法是取整求出前两位数,下一轮循环再分解取整求出的前两位数。根据这一点来对照(1)求积时某一变量的初值必须为1。(2)各种运算符的写法(3)输入语句要注意什么?2、下列给定的程序中,

13、函数fun的功能是:计算并输出k以内最大的10个能被13或17整除的自然数之和。k的值由主函数传入,若k的值为500,则函数的值为4622。int fun(int k) int m=0,mc=0, j; while(k=2)&(mc#define N 81void fun(char *s) int i,n=strlen(s)-1; char t; for(i=0;n;i+,【 n- 】)或n;或n-=;1或n=n-1; t=si; 【 si=sn】; *(s+i)=*(s+n); 【 sn=t 】; *(s+n)=t; char aN;Enter a string: gets(a);The original string is: puts(a); fun(a);The string after modified:【解析】本题是“把字符串中的内容逆置”,所以只要把相应下标的值通过中间变量进行传递就可以。

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1