




已阅读5页,还剩5页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
一程序阅读题1.若运行时输入100,写出以下程序的运行结果。main ( ) int a ;?scanf(“%d”,&a);?printf(“%s”,(a%2!=0)?”No”:”Yes”);答案: Yes2.写出以下程序的运行结果。main ( ) int a=2,b=7,c=5;?switch (a0) ?case 1: switch (b0) ?case 1: printf(“”); break ;?case 2: printf(“!”); break ;?case 0: switch (c=5) ?case 1: pritnf(“*”) ; break ;?case 2: printf(“#”) ; break ;?default : printf(“#”) ; break ;?default : printf(“&”);?printf(“n”);答案: *&3.写出下面程序运行的结果。main ( ) int i,b,k=0 ;?for (i=1; i50) break ;? while (a=14) ;?printf(“a=%d y=%dn”,a,y) ;答案:a=16 y=60数组部分:1.写出下面程序的运行结果。?main ( )? int a66,i,j ;?for (i=1; i6 ; i+)?for (j=1 ; j6 ; j+)?aij=(i/j)*(j/i) ;?for (i=1;i6 ; i+) ?for (j=1 ; j=bi) ci=ai-32 ;?else ci=bi-32 ;?i+;?ci=0;?puts(c);答案:AQM3.当运行下面程序时,从键盘上输入AabD,则写出下面程序的运行结果。?main ( )? char s80;?int i=0;?gets(s);?while (si!=0) ?if (si=a)?si=z+a-si ;?i+;?puts(s);答案:AzyD二程序判断题1.下面程序将输入的大写字母改写成小写字母输出,其他字符不变;请判断下面程序的正误,如果错误请改正过来。main ( ) char c;?c = getchar ( ) ;?c = (c=A | | c=A | | c=A& c=Z) ? c+32 : c ;?2.下面程序输入两个运算数x,y和一个运算符号op,然后输出该运算结果的值,例如输入3+5得到结果8;请判断下面程序的正误,如果错误请改正过来。?main ( )?float x,y,r;?char op ;?scanf(“%f%c%f”,&x,&op,&y);?switch (op) ?case + : r=x+y ;?case - : r=x-y ;?case * : r=x*y ;?case / : r=x/y ;?printf(“%f”,r);答案: 每个Case 分之后面加Break;三程序填空题1、以下程序输出x,y,z三个数中的最小值,请填(2)空使程序完整。main ( ) int x=4,y=5,z=8 ;?int u,v;?u = xy ? 【1 】 ;?v = uz ? 【2 】 ;?printf (“%d”,v);答案: 【1】 x:y 【2】 u:z2、下述程序用“碾转相除法”计算两个整数m和n的最大公约数。该方法的基本思想是计算m和n相除的余数,如果余数为0则结束,此时的被除数就是最大公约数。否则,将除数作为新的被除数,余数作为新的除数,继续计算m和n相除的余数,判断是否为0,等等,请填(3)空使程序完整。main ( ) int m,n,w;?scanf(“%d,%d”,&m,&n);?while (n) ?w=【1 】;?m=【2 】;?n=【3 】;?printf(“%d”,m);答案:【1】w=m%n; 【2】m=n; 【3】n=w;3、下面程序的功能是输出1至100之间每位数的乘积大于每位数的和的数,请填(3)空使程序完整。main ( ) int n,k=1,s=0,m ;?for (n=1 ; ns) printf(“%dd”,n);?答案: 【1】 m=n; 【2】 m!=0 【3】m=m/10;4、下面程序按公式(课本169页习题6.5) 求和并输出结果,请填(3)空使程序完整。main ( ) ?【1 】;?int k ;?for (k=1 ; k=100 ; k+)?s+=k ;?for (k=1 ; k=50 ; k+)?s+=k*k ; ?for (k=1 ; k=10 ; k+)?s+=【2 】;?printf(“sum=【3 】”,s);答案:【1】 float s=0; 【2】1/k 【3】%f数 组 部 分:一、程序判断:1.下面程序为数组输入数据并输出结果;判断下面程序的正误,如果错误请改正过来。?main ( )? int a3=3*0 ;?int i;?for (i=0; i4; i+) scanf(“%d”,&ai);?for (i=0; i4; i+) printf(“%d”,ai);答案:?for (i=0; i3; i+) (只有3个数组元素,下标02)2.下面程序为数组输入数据并输出结果;判断下面程序的正误,如果错误请改正过来。?main ( )? int a3=1,2,3 , i;?scanf(“%d%d%d”,&a);?for (i=0; i3; i+) printf(“%d”,ai);答案:scanf(%d%d%d,&a0,&a1,&a2);3.下面程序的功能是:先将在字符串s中的字符按逆序存放到t串中,然后把s中的字符按正序连接到t串的后面。例如,当s中的字符串为:“ABCDE”时则t中的字符串应为:“EDCBAABCDE”;判断下面程序的正误,如果错误请改正过来。?main ( )? char s80,t200; int i,sl ;?gets(s); sl = strlen(s);?for (i=0; isl; i+) ti = ssl-i; 改为:ti = ssl-i-1;?for (i=0; isl; i+) tsl+i = si; ts1+i=0; 加上语句:ts1+i=0;?puts(t);答案:见右边修改语句4.下面程序的功能是:将n各无序整数从小到大排序;判断下面程序的正误,如果错误请改正过来。?main ( )? int a100, i, j, p, t, n=20 ;?for (j = 0; jn ; j+) scanf(“%d”, &aj), 改为: ;?for (j = 0;jn-1 ; j+)? p = j;?for ( i=j+1; iai) t=i; t 改为:p?if (p!=j)? t = aj; aj = ap; ap=t; ?for ( j = 0; jn ; j+ ) printf(“%d ”, &aj);答案:见右边修改语句5.下面程序的功能是:统计子字符串substr在字符串str中出现的次数。例如,若字符串为aaas lkaaas,子字符串为as,则应输出2;判断下面程序的正误,如果错误请改正过来。?main ( )? char substr80,str80;?int i,j,k,num=0;?gets(substr); gets(str);?for (i = 0, stri, i+)?for (j=i,k=0;substrk=strj;k+,j+)?if (substrk+1!=0) ?num+;?break;?printf(“num=%d”, num);答案: 程序修改如右框所示。二、程序填空题1.下面程序可求出矩阵a的主对角线上的元素之和,请填(2)空使程序完整。?main ( )? int a33=1,3,5,7,9,11,13,15,17 , sum=0, i, j ;?for (i=0 ; i3 ; i+)?for (j=0 ; j3 ; j+)?if (【1 】)?sum=sum+【2 】;?printf(“sum=%d”,sum);答案: 【1】i= =j 【2】aij2.下面程序将十进制整数base转换成n进制,请填(3)空使程序完整。main ( ) int i,base,n,j,num20 ;?scanf(“%d”,&n);?scanf(“%d”,base) ;?do ?i+;?numi=【1 】;?n=【2 】;? while (n!=0);?for (【3 】) ;?printf(“%d”,numj) ;答案: 此程序有点小错误,红色文字为改正错误,蓝色文字为填空答案.3.下面程序的功能是输入10个数,找出最大值和最小值所在的位置,并把两者对调,然后输出调整后的10个数,请填(3)空使程序完整。main ( ) int a10,max,min,i,j,k ;?for (i=0; i10; i+)?scanf(“%d”,&ai);?max=min=a0;?for (i=0; i10; i+) ?if (aimax) max=ai; 【2 】; ? /*循环完后,最小的数组元素下标放在变量j中,最大的放在变量k中*/?【3 】; /* 借助中间变量max,将最大最小两数组元素交换*/?for (i=0; i10; i+)?printf(“%d”,ai);答案: 【1】j =i 【2】k=i 【3】max=aj;aj=ak;ak=max; 4.下面程序用“插入法”对数组a进行由小到大的排序,请填(3)空使程序完整。经典算法提示:简单插入排序算法的基本思想使将数组处理n-1次,第k次处理是将第k个元素插入到目前的位置。第k次的元素是这样插入的:在第k次处理时,前面的元素a0,a1,ak-1必定已排成了升序,将ak与ak-1,ak-2,a0逐个比较(由后向前),若有ajak,则ak插入到aj之后,否则ak维持原位不变。main ( ) int a10=191,3,6,4,11,7,25,13,89,10 ;?int i,j,k ; ?for (i=1; i=0 & kaj ) /* kaj 改为: kaj */?【2 】;?j-;?【3 】=k ;?for (i=0; i10; i+) printf(“%d”,ai);答案: 【1】 i-1 【2】aj+1=aj 【3】aj+1 5.下面程序用“两路合并法”把两个已按升序(由小到大)排列的数组合并成一个新的升序数组,请填(3)空使程序完整。main ( ) int a3=5,9,10 ;?int b5=12,24,26,37,48 ;?int c10,i=0,j=0,k=0 ;?while (i3 & i5)?if (【1 】) ?ck=bj ; k+ ; j+ ;? else ?ck=aj ; k+ ; i+ ;?while (【2 】) ? ck=aj ; i+ ; k+ ; ?while (【3 】) ? ck=bj ; j+ ; k+ ; ?for (i=0; ik; i+) printf(“%d ”,ci);6.下面程序的功能是将二维数组a中每个元素向右移一列,最右一列换到最左一列,移后的结果保存到b数组中,并按矩阵形式输出a和b,请填(3)空使程序完整。?数组a 数组main ( ) int a23 =4,5,6,1,2,3, b23, i,j;?for (i=0; i2 ; i+)?for (j=0; i3 ; j+ ) ?printf(“%5d”,aij);?【1 】;?printf(“n”);?for (【2 】) bi0=ai2;?for (i=0; i2 ; i+) ?for (j=0; i3 ; j+) ?printf(“%5d”,bij);?【3 】;?printf(“n”);?答案:此程序有错误, 正确的程序见右框7.下面程序的功能是在一个字符串中查找一个指定的字符,若字符串中包含该字符则输出该字符在字符串中第一次出现的位置(下标值),否则输出1,请填(2)空使程序完整。# include main ( ) char c=a ; /* 需要查找的字符*/ ?char t50 ; ?int i,j,k;?gets(t) ;?i = 【1 】;?for (k=0; ki; k+)?if (【2 】)? j = k ; break ;?else j=-1;?printf(“%d”,j);答案:【1】 strlen(t) 【2】 tk= =c8.下面程序用“顺序查找法”查找数组a中是否存在某一关键字,请填(2)空使程序完整。main ( ) int a10=25,57,48,371,123,291,18,22,44;?int i=0,x ;?scanf(“%d”,&x);?【1 】;?while (ai!=x & i10) i+ ;?if (【2 】) printf(“found=%dn”,i);?else printf(“cant found!n”);答案:【1】不需要填 【2】 i109.以下程序是求矩阵a,b的乘积,结果存放在矩阵C中并按矩阵形式输出,请填(3)空使程序完整。main ( ) int a23=2,10,9,4,5,119, b22=-1,-2,-3,-4;?int i,j,k,s,c32;?for (i=0; I3; i+)?for (j=0; j2; j+) ?【1 】;?for (k=0; k2; k+) s+=【2
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- GB/T 21759-2025化学品慢性毒性试验方法
- 2025年合肥庐江县绣溪城市服务有限公司招聘2人考前自测高频考点模拟试题及答案详解参考
- 2025广东佛山市顺德区公办中小学招聘教师92人(编制)考前自测高频考点模拟试题及一套完整答案详解
- 2025湖南永州市零陵区第二批公开引进急需紧缺专业人才(医疗岗9人)模拟试卷及答案详解参考
- 安全培训教师含义课件
- 2025年后链轮项目合作计划书
- 2025江西南昌市青山湖区招聘社区工作者(专职网格员)45人模拟试卷及答案详解一套
- Indazole-Standard-生命科学试剂-MCE
- IID432-生命科学试剂-MCE
- H-PEG6-VH4127-NH2-生命科学试剂-MCE
- 手术部(室)医院感染控制标准WST855-2025解读课件
- 酒店法律培训课件
- 公证一般程序课件
- 2025年食品安全员考试题库(含答案)
- 口腔补牙课件
- 2025至2030年中国茄尼醇行业市场需求预测及投资战略规划报告
- 2025年四川省事业单位考试公共基础知识真题及答案解析
- 保障农民工工资课件
- 婴儿呛奶海姆立克急救法
- 扁桃体癌护理查房记录
- 壶腹部肿瘤的治疗及护理
评论
0/150
提交评论