综合测试卷一-【单招零距离】计算机专业综合(卷下)

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

资源信息

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

内容正文:

综合测试卷一 综合测试卷一 一、理论测试题(每小题12分,共5小题,共60分) 1.阅读下列程序,回答下列问题。 10#include <stdio.h 20#include <ctype.h 30#include <math.h 4 Oint qushu(char s[☐,intt]); 50int main() 60{char str[]={"yul6asd25¥*4$"}: 70 int num[20],i,n; 80 n=qushu(str,num): 90 for(i=0;i<n:i++) 100 printf("%d ",numi): 110》 120int qushu(char s[],int t]) 130int i,n=0,sum: 140for(i=0:s[i门:i++) 150{ if(isdigit(si)) 160 sum=0; 170while(isdigit(s)) 180sum=sum¥10+s[i++]-0': 190t[n++]=sqrt(sum); 2009 210 220 return n; 230} (1)190句的sqrt()函数的功能是 (2)40句的作用是 (3)isdigit()函数的功能是 (4)该程序执行的结果是 2.阅读下列程序,写出运行结果。 #include <stdio.h ·61· 单招零距离·计算机专业综合测试卷·下册 int main() {char a[]="495032",c; int i,k=1,s=0; for(i=0;(c=a[i])!=\0';i++) switch(c) {case'1':k=k+2; default:s++; case 50:s+=2:break; case'3':k+;continue; case'4:k=k十2; } s十+; printf("i=%d\ts=%d\tk=%d ",i,s,k); } 3.阅读下列程序,写出运行结果。 #include <stdio.h define NUM 5 int c=2; void sub(int a) { static int b=4; c十=a十十; b+=c; printf("b=%d,a=%d ",b,a); } int main() int i=1; do sub(NUM-i); while(++i<=2); printf("c=%d",c); 4.下列程序的功能是:从键盘上输人学生3门课的成绩,找出平均成绩不及格的学生并删除。 #include <stdio.h> ·62· 综合测试卷一 #define N5 int main() float scores[N][3],avestu[N]: int i,j,k,mm; /*1一一输入学生成绩*: printf(”输入成绩: "); for(i=0;i<N;i++) for(j=0:j<3:j++) scanf( ①): 」*2一计算学生平均成绩* for(i=0;i<N;i++) { avestu[i]= ② for(j=1:j<3;j++) avestu[i]+=scores[i]]; avestu[i]/=3; *3一一显示学生单科及平均成绩*/ printf("学生成绩表: "): for(i=0;i<N;i++) {for(j=0:j<3;j++) printf("%8.2f\t",scores[]); printf("%8.2f ",avestuli]); } printf(" "): /4一查找并删除平均成绩不及格学生记录/ mm=N-1; for(i=mm;i>=0;i--) if(avestui]60) mm=mm-1; for( ③ {for(k=0:k<3;k++) scores[j][k]=scores[j+1]k]; avestu[j]=④ ·63· 单招零距离·计算机专业综合测试卷·下册 /*5一输出平均成绩及格学生成绩/ for(i=0;i<=mm;i++) {forj=0:j<3;j++) printf("%8.2ft",scoresti]): printf("%8.2f ",avestu[i]): } 5.从键盘输入字母、数字、空格、TAB等一系列字符,以回车符结束,存人文本文件le xt中。重新打开文件,逐一读取文件所有字符,统计其中可显示字符及空白(空格、制表符)字 符的个数,请在答题处填写合适的内容。 #include <stdio.h #include <stdlib.h int main() FILE fp; char ch: int white=0;/*空白符计数器*/ int count=0;/*可显示字符计数器*/ /*1一建立文件*/ if(① )exit(0); while((ch=getchar())!= ') fpute(②): fclose(fp); /*2一打开文件*/ if((fp=fopen("file.txt","r"))==NULL) {printf("不能打开文件!"): exit(1); } ¥3一统计空白符及可显示字符数关 while( ③!=EOF)/¥逐个读取字符直到文件尾*, if(④ ) white++; else count=count+1; ·64· 综合测试卷一 fclose(fp); printf("文件中有%d个可显示字符。n",count); printf("文件中有%d个空白字符。n",white).: } 二、技能测试题(第1题20分,第2、3题各30分,共80分) 1.程序填空题:已知时、分、秒,以hh:mm:ss形式输出。 例如:时、分、秒分别为5、6、25,输出为:05:06:25 #include<stdio.h #include<string.h include<ctype.h int handel(char a],int n) int i=0; for(;n>0;) /0关关关关关*米关¥¥关关并关并*SPACE米并关¥关关¥兴共米¥兴0米兴¥/ a ]=n%60: n=n/60: int main() {inth=5,m=6,s=25,n,t,j: char a[10]={0}: t=s+m¥60+h*3600: handel(a,t); n=0; for(Gj=3;j>=1:j--) { /*米米米关关*关关米关关*关¥并*SPACE*兴兴兴米兴***关米米关关兴*/ ifc ) printf("0"): printf("%d",aj); if(n++<2) printf(":"); ·65· 单招零距离·计算机专业综合测试卷·下册 } 2.程序改错题:随机输入一个小于30的正整数n,若n为偶数,则重新输人,直到n为奇 数为止,然后输出菱形图形。 例如:若输入的值为7时,输出的菱形为: 米 *0关 米 #include<stdio.h> #include<string.h> #include<math.h void output(unsigned n) {inti,j:char a[30][60]={""}: for(i=0;i<n;i++) /兴兴米米兴**兴兴*0兴米兴**FOUND兴兴米米米*米¥关**米米*兴*/ if(i<n2)》 for (j=i;j<n-1;j++) a[i]G-i]="; for (j=0;j<2*i+1;j++) a[i门[n-i-1十j门=*': } else for(j=0;j<2*n;j++) /*米关米关关*关关*关关*兴**F)UND兴兴并米米米关关关关关米关兴** a[i]]=a[n-i]]; for(i=0;i<n;i++)puts(a[i门); } int main() unsigned n; ·66· 综合测试卷一 do{printf("请输人一个小于30的正整数:"): scanf("%d",&.n): /兴关关头关关兴关兴*米米¥关¥*FOUND¥¥关¥关 }while(n%2&.&.n<30); output(n); 3.程序设计题:找出一维数组a中回文整数,保存在a数组前面,非回文数保存在a数组 的后面。 回文数字和非回文数字的相对位置不能改变。再对所有非回文数进行如下处理:用距离 该数最近的2的正整数次幂取代该数。如果距离相同,则取小于该数最近的2的正整数次幂 取代该数,例如48距离32和64相同,则用32取代48。 程序运行结果如下: a数组中原始数据为 48808 9123 121 2048 找出回文数后为 808 9121481232048 最终结果为 8089121 321282048 (I)编写函数int find(inta[□),从一维数组a的N个元素中找出回文整数,保存在a数组 的前面,非回文数保存在a数组的后面。回文数字和非回文数字的相对位置不能改变。函数 返回第一个非回文数在a中的下标。 (2)编写函数void change(inta[],intn),将a数组中下标n至N一1的所有元素进行处 理,用距离该数最近的2的正整数次幂取代该数,保存在该数原来位置上。如果距离相同,则 取小于该数最近的2的正整数次幂取代该数。 #include<stdio.h #include<string.h> #include<math.h #include<ctype.h #include<stdlib.h> #define N 6 int find(int a]) {/米米¥¥米米米Pr0gram**米米米米** ·67· 单招零距离·计算机专业综合测试卷·下册 void change(int a],int n) {/*米0**米关*米*Pr0grm***米米***** /00米米0***0米Ed米00米*著*0米米/ int main() { inta[N]={48,808,9,123,121,2048};inti,n; printf("a数组中原始数据为"); for(i=0;i<N;++i) printf("%6d",ai]): printf(" "): n=find(a); printf("找出回文后数据为"): for(i=0;i<N:++i) printf("%6d",a[门); printf(" "): change(a,n): printf("最终结果为 "): for(i=0;i<N:+++i) printf("%6d".ai]): printf(" "): fclose(fp); ·68·综合测试卷一 一、理论题  1.①平方根 ②函数声明 ③判断是否是数字字符 ④4 5 2  2.i=6 s=16 k=4  3.b=10,a=5 b=19,a=4 c=9  4.①"%f",&score[i][j] ②score[i][0] ③j=i;j<=mm;j++ ④avestu[j+1]  5.①(fp=fopen("file.dat","w"))==NULL ②ch,fp ③(ch=getc(fp)) ④ch=='||ch=='\t' 二、技能题  1.(1)++i (2)a[j]<10  2.(1)if(i<=n/2) (2)a[i][j]=a[n-i-1][j]; (3)}while(n%2==0||n>=30);  3.参考程序如下:  intfind(inta[])  {inti,j,head,p,t;   for(head=0,i=N-1;i>=head;)    {  p=a[i];      t=0;      while(p)      { t=t∗10+p%10;        p/=10;      }      if(t==a[i])      { for(j=i-1;j>=0;--j)          a[j+1]=a[j];        a[0]=t;        ++head;      }      else --i;    }    returnhead;  }  voidchange(inta[],intn)  { inti,right,left;    for(i=n;i<N;++i)    { left=8; right=16;      while(right<a[i])      { left=right;        right∗=2;      }      a[i]=(a[i]-left<=right-a[i]? left: right);    }  } 综合测试试卷二 一、理论测试题  1.①isdigit() ②220 ③Prime()函数的声明 ④12 9 34  2.Olympics sum=23  3.①chars[] ②s[i]==s[i+1] ③count1==w ④ToSeeOrder(str)  4.①strmaxlen ②num>maxlen ③ch[k--] ④left++,right--  5.alpha=C A或a出现次数为3 B或b出现次数为2 C或c出现次数为4 X或x出现次数为1 二、技能测试题  1.(1)i+=2 (2)i∗j<=N  2.(1)if(s[i-1]=='-')sign=-1;elsesign=1; (2)sum=sum∗10+s[i++]-'0'; (3)p=p∗0.1;  3.voidabstract(charstr[][30],inta[][30],intcount[])  {  /∗∗∗∗∗∗∗∗∗∗∗∗Program∗∗∗∗∗∗∗∗∗∗∗∗/  inti,j,sum,n,k; 􀅰7􀅰 总复习方案􀅰参考答案

资源预览图

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