第六章 数组(B)-【单招零距离】计算机专业综合(卷下)

2025-04-23
| 2份
| 6页
| 101人阅读
| 0人下载
江苏华阅万卷教育科技有限公司
进店逛逛

资源信息

学段 中职
学科 职教专业课
课程 C语言程序设计
教材版本 -
年级 -
章节 -
类型 作业-单元卷
知识点 数组
使用场景 中职复习
学年 2025-2026
地区(省份) 全国
地区(市) -
地区(区县) -
文件格式 ZIP
文件大小 809 KB
发布时间 2025-04-23
更新时间 2025-04-23
作者 江苏华阅万卷教育科技有限公司
品牌系列 -
审核时间 2025-04-23
下载链接 https://m.zxxk.com/soft/51747935.html
价格 2.00储值(1储值=1元)
来源 学科网

内容正文:

第六章数组(B) 第六章 数 组(B) 一、理论测试题(每小题12分,其中输出格式占2分,共60分) 1.写出下面程序的运行结果。 #include <stdio.h int main() char ch={"12ab56");int i,s=0; for(i=0;ch[i]>=0'&.&ch[i]<=9;i+=2) s=10¥s+ch[i]-0; printf("%d",s); 2.写出下面程序的运行结果。 include "stdio.h" #include "string.h" int main() {inti=014; int j=4.9; char a]="\141\x62R\bcd",b[]="abc"; printf("%os\t%od ",a,j); printf("size=%d\tcomp=%d ",sizeof(a),stremp(strepy(a,"abc12"),b)); printf("%dt%dn",(i=5+3,4+5,i+7),-i++); 3.写出下列程序的运行结果。(toupper功能:转大写) #include <stdio.h #include <ctype.h int main() { char words[20]="Jiang",ch; int sum=0,i; for(i=0;words[i];+) ch=toupper(words[i]); switch((ch-65)/5) case 0:sum+=1;break; case 1:sum++=2;break; case2:sum十=3;break; case 3:sum++=4;break; case 4:sum+=5;break; default:sum+=6; printf("%s\t",words); printf("sum=%d",sum); 4.写出下列程序的运行结果。 #include<stdio.h include<ctype.h int main() char s[]="one world one dream !" int i,inword=0; for(i=0;s];++i) if(isalpha(s[i)) if(inword==0) ·25· 单招零距离·计算机专业综合测试卷·下册 {s[i]-=32; inword=1; putchar(s[i]); else if(inword==1) inword=0; putchar(); putchar←!'); 5.当程序运行时从键盘输入20501001<cr>,其中<cr>表示回车键,请分析运行结果。 #include <stdio.h> int main() { char a[30]; inti=0,k=1,s=0; char c; gets(a); do {c=a[i]: switch(c) {case'1':k=k+2; case 50:s+=2;break; case'5':k++;continue; default:s++; case'0':k=k十2; s+十; while(aCi++]); printf("i=%d\ts=%d\tk=%d",i,s,k); 6.随机产生20个【29,92】互不相同的整数,放在数组a中,再从键盘上输入两个整数m 和n(且m<n),然后对数组a中第m到第n个数进行降序排序后输出。请在横线上填写合适 的内容。 #include <stdio.h> #include <stdlib.h include <time.h> int main() int x,a[10],i,j,m,n,t; srand((unsigned)time(NULL)); /*产生互不相同的随机数并输出*/ for(i=0;i<10;i++) {a[i]= (1) for(j=i-1j>=0j--) (2); printf("Before sort:"); for(i=0;i<10;i++) printf("%4d",ai); printf(" "); scanf("%d%d",&m,&n); /*将第m个数到第n个数排成降序后输出*/ for(i=m-1;i<n-1;i++) for(Gj=m-1;(3)j++) ·26· 第六章数组(B) if((4) t=aLj];a[j]=a[j+1];a[j+1]=t;) printf("After sort:") for(i=0:i<10;i++) printf("%4d",ai]); printf(" "); 二、技能测试题(第1题20分,第2、3题各30分,共80分) 1.程序填空题:函数fu的功能是:在形参s所指定字符串中的每个数字字符之后插入 一个$号。例如:形参s所指的字符串为:def35abh3 kjsdf?7。执行结果为:def3$5$adh3 $kisdf7$。 #include<stdio.h void fun(char s[] int i,j,n; char t1[80],t2[80]; for(i=0;s[i]!=\0;i++) /*米*米米米****SPACE*米米关0米米**米*/ if(s[i]>=0(1)s[i]<=9) {n=0; /米0米米米米米关关*米SPACE关关并米¥关0米米米米/ whilet(s[i+1+n]!=(2)) n十十; for(j=i+n+1;j>i;j--) /关米米米米米*米*米米SPACE关米米米米米米米米米米/ s[j+1]=(3) /米*米米米米*米*0兴SPACE米米米米米米米米米**/ s(4)]=$': i-i+1; int main() char s[80]="eba3af54cd23ak6"; printf(" The original string is:%s ",s); fun(s); printf(" The result is:%s ",s); 2.程序改错题:函数main()首先从键盘接收一串字符,以回车符结束串输入,并保存在变 量str1中,输入一个字符给变量ch;其次,调用fun()函数将字符串strl中的所有为ch字符 去掉;最后输出字符串strl。 #include <stdio.h void fun(char str[」,char ch) inti=0,j=0; while(str[i]!=0) {if(str[i]!=ch) /米米米米米米*米装*米0米米米装*著FOUND米米兴*¥米米米米米米米米著兴 ***关并 str[j++]=str[i++]; i+十; /*关米米*米米****0*米0米**F0UJND黄*关米米关米**关*0关关 米米**兴/ str[i]=\0'; int main() char str1[200,ch; ·27· 单招零距离·计算机专业综合测试卷·下册 int i=0; /米茶养米关米*米米*米0并米关米*茶FOUND*米米米关米关0米茶”关0黄0 并关并关并/ while(strl[i]=getchar()!= ') i++; str1[i]=\0; scanf("%c",&ch); fun(strl,ch); printf("%s ",str1); 3.程序设计题:编写程序,找出二维整型数组a[4][4]中每行元素的最大值,并将该元素 移动至该行首列。 编写函数: ①编写void findmax(inta[门[N],intn[门)函数,找出二维数组a中每行元素的最大值, 并将该元素的列下标存入数组n中,即第0行元素最大值的列下标存入[0],第3行元素 最大值的列下标存入n[3]。 ②编写void move(inta[][N],intn[门)函数,根据数组n中保存的数据,将a数组中每行 最大值元素移动到该行首列,要求移动后该元素与该行其他元素的相对位置不变。 例如,a数组的初始数据为: -21369 254011 -831016 47520 经过处理后a数组中数据为: 1369-2 254011 16-8310 20475 #include <stdio.h> #include <stdlib.h #define N4 void findmax(int a]N],int n){ /**********Pr0gram*****米米***/ /**米0关关00*关End关米米米英英00米米/ void move(int a[][N],int n[]){ /**米米米米米***Pr0gram米米*米**米米米米/ /**米米米米*米米米Ed米*米*米**米米米/ int main() int i,j; inta[N][N]={{-2,13,6,9},(25,4,0,11},{-8,3,10,16},{4,7,5,20},n[4; findmax(a,n); move(a,n); for(i=0;i<N;i++) for(j=0;j<N;j++) printf("%d\t",a); printf(" "); } ·28·  {newnum=newnum∗10+sum1%10;   sum1/=10;   }  if(newnum==sum)   printf("newnum=%ld是回文数",newnum);  else   printf("newnum=%ld 不 是 回 文 数",newG num); 第五章 循环结构(二) 一、理论测试题  1.5,30,91  2.sum1=-3,sum2=10  3.7,12,12  4.IloveBeiJing OlympicGames!loveOlympicGames!  5.①num ②100 ③0 ④sum1 二、技能测试题  1.(1)z%j==0 (2)x  2.(1)i=left==1? left+1:left; (2)break; (3)if(j>k)printf("%d\t",i);  3.  intx,num,p,left,right,mid,newnum;  scanf("%d",&x);  if(x>=10)    {num=x; p=1; while(num>=10) {num/=10; p=p∗10; }    left=x/p;right=x%10;    mid=x%p/10;    newnum=right∗p+mid∗10+left;    }  elsenewnum=x;  printf("x=%d,newnum=%d",x,newnum); 第六章 数 组(A) 一、理论测试题  1.1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 1 5 10 10 5 1  2.3 2 5  3.Japan chinafranch  4.i=0,k=2 sum=sum+s[i] k++,sum=0  5.if(a[j]==a[i])i--; for(j=0;j<20-i;j++) f==0&&l<=r p=m 二、技能测试题  1.(1)1 (2)a[i]%2==1 (3)break  2.(1)floatfun(intn) (2)for(i=2;i<=n;i++) (3)A =1.0/(1+A);  3.while(str[i+n-1]) {str[i-1]=str[i+n-1]; i++; } str[i-1]='\0'; 第六章 数 组(B) 一、理论测试题  1.1  2.abcd     4 size=7 comp=1 15 -12  3.Jiang sum=10  4.OneWorldOneDream !  5.i=9 s=15 k=16  6.(1)rand()%64+29 (2)i--或i--,break (3)j<n+m-2-i (4)a[j]<a[j+1] 二、技能测试题  1.(1)&& (2)0或'\0' (3)s[j] 􀅰3􀅰 总复习方案􀅰参考答案 (4)i或j+1  2.(1)str[j++]=str[i]; (2)str[j]='\0'; (3)while((str1[i]=getchar())! =' ')  3.(1)inti,j,max,maxl; for(i=0;i<N;i++) { max=a[i][0];maxl=0; for(j=1;j<N;j++)   if(a[i][j]>max)   { max=a[i][j],maxl=j;   }   n[i]=maxl; }  (2)inti,j,max,maxl; for(i=0;i<N;i++) { max=a[i][0];maxl=0; for(j=0;j<N;j++) if(a[i][j]>max) { max=a[i][j],maxl=j; } n[i]=maxl; } 第七章 函 数(A) 一、理论考试题  1.(1)标准输入输出头文件 (2)输入输出 (3)实际 (4)较大数是:5  2.7  3.Abc Bdefgabcd123 Abcd123abc Abc#$% #$% 12  4.a=1,b=2 b=11 b=14 a=1,b=2  5.(1)i=strlen(s)-1;i>=0;i-- (2)b (3)p[i]=j+48; (4)p[i]=’\0’; 二、技能考试题  1.(1)c2>c1或c1<c2 (2)c1==c2或c2==c1  2.(1)longfun(long)或longfun(longs) (2)longstep=1; (3)s=s/100;  3.voidGenStr(chars[],chart[]) {inti=0,n=0,len=0; len=strlen(s); while(i<len) {if(i%2==0) {if('A'<=s[i]&&s[i]<='Z'||'a'<=s [i]&&s[i]<='z') {t[n++]=s[i]; t[n++]=s[i]; } else  t[n++]=s[i]; } else  t[n++]=s[i]; i++; } t[n]='\0'; } intTestFanshu(chart[],intb[]) {intp=0,m=0,n=0,q=0,sum=0; inti=0,num=0; while(t[i]) {if('0'<=t[i]&&t[i]<='9') {sum=0; while('0'<=t[i]&&t[i]<='9') {sum=sum∗10+t[i]-'0'; i++; } p=sum; q=0; while(p) {q=q∗10+ p%10; p=p/10; } n=0; m=sum∗sum; while(m) {n=n∗10+ m%10; 􀅰4􀅰 单招零距离􀅰计算机专业综合测试卷􀅰下册

资源预览图

第六章 数组(B)-【单招零距离】计算机专业综合(卷下)
1
第六章 数组(B)-【单招零距离】计算机专业综合(卷下)
2
所属专辑
由于学科网是一个信息分享及获取的平台,不确保部分用户上传资料的 来源及知识产权归属。如您发现相关资料侵犯您的合法权益,请联系学科网,我们核实后将及时进行处理。