计算机二级上机试题
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
for(i=0;i<N;i++) if(max<a[i].s) max=a[i].s; for(i=0;i<N;i++) if(max=a[i].s) b[j++]=s[i]; return j; } 九、除字符串前导星号外,其他星号删除 void fun(char *a) { int i=0; char *p=a; while(*p&&*p=='*') { a[i]=*p; i++; p++; } while(*p) { if(*p!='*') {a[i]=*p;i++;} p++; } a[i]='\0'; } 十、统计字符串中小写字母的个数 void fun(char *tt,int pp[]) { int i; for(i=0;i<26;i++) pp[i]=0; for(;*tt!='\0';tt++) if(*tt>='a'&&*tt<='z') pp[*tt-'a']++; } 十一、删除字符串尾端的* void fun(char *a)
void fun(int a[],int n,int *max,int *d) { int i; *max=a[0]; for(i=0;i<n;i++) if(*max<a[i]) {*max=a[i];*d=i;} } 二六、除下标为奇数同时ASCII码为奇数的外,其余删除 void fun(char *s,char t[]) { int i,j=0,n; n=strlen(s); for(i=0;i<n;i++) if(i%2!=0&&s[i]%2!=0) { t[j]=s[i]; j++; } t[j]='\0'; } 二七、B=A+A'矩阵A加上他的转置 void fun(int a[3][3],int b[3][3]) { int i,j; for(i=0;i<3;i++) for(j=0;j<3;j++) b[i][j]=a[i][j]+a[j][i]; } 二八、将二维数据放入一维数组中 void fun(int (*s)[10],int *b,int *n,int mm,int nn) { int i,j; for(j=0;j<nn;j+) for(i=0;i<mm;i++) { b[*n]=*(*(s+i)+j)
*n=*n+1; } } 二九、找出分数低的学生的记录 int fun(STREC *a,STREC *b) { int i,j=0,min=a[0].s; for(i=0;i<N;i++) if(min>a[i].s) min=a[i].s; fori=0;i<N;i++) if(min==a[i].s) b[j++]=a[i]; return j; } 三十、组合字符串组 void fun(char a[M][N],char *b) { int i,j,k=0; for(i=0;i<M;i++) for(j=0;a[i][j]!='\0';j++) b[k++]=a[i][j]; b[k]='\0'; } 三一、删除一个字符的指定下标 void fun(char a[],char b[],int n) { int i,k=0; for(i=0;a[i]!='\0';i++) if(i!=n) b[k++]=a[i]; b[k]='\0'; } 三二、移动从0~p的数组到尾部 void fun(int *w,int p,int n) { int x,j,ch;
{ while(*a!='\0') a++; a--;/*字符串a指向字符串的尾部*/ while(*a=='x') a--; *(a+1)='\0'; } 十二、比较两个字符串返回较长的字符串 char *fun(char*s,char*t) { int i,j; for(i=0;s[i]!='\0';i++)/*求字符串的长度*/ for(j=0;t[j]!='\0';j++); if(i<=j) return t; else return s; } 十三、找指定学生的数据 STREC fun(STREC*a,char *b) { int i; STREC str={"\0",-1}; for(i=0;i<N;i++) if(strcmp(a[i].num,b)==0) str=a[i]; return str; } 十四、求cos(x)-x=0的实根 double fun() { double x0,x1; x1=0.0; do { x0=x1;
十八、删除字符串中下标为偶数的字符 void fun(char *s,char t[]) { int i,j=0,k=strlen(s); for(i=1;i<k;i=i+2) t[j++]=s[i]; t[j]='\0'; } 十九、删除字符串中除尾部*以外的所有* (形参p已经指向字符串中的最后一个字母) void fun(char*a,char*p) { char *t=a; for(;t<=p;t++) if(*t!='*') *(a++)=*t; for(;*t!='\0';t++) *(a++)=*t; *a='\0'; } 二十、按分数降序排列记录 void fun(STREC a[]) { int i,j; STREC t; for(i=1;i<N;i++) for(j=0;j<N-1;j++) if(a[j].s<s[j+1].s) {t=a[j];a[j]=a[j+1];a[j+1]=t;} } 二一、高于平均分的放到b数组中,高于平均分的人数通过n返回 double fun(STREC *a,STREC *b,int *n) { int i; double av=0.0; *n=0; for(i=0;i<N;i++)
一、删除字符串中的所有*号 void fun(char *a) { int i,j=0; for(i=0;a[i]!='\0';i++) if(a[i]!='*') a[j++]=a[i]; a[j]='\0'; } 二、实现两个字符串的连接 void fun(char p1[],char p2[]) { int i,j; for(i=0;p1[i]!='\0';i++) for(j=0;p2[j]!='\0';j++) p1[i++]=p2[j]; p1[i]='\0'; } 三、求八门课的平均成绩 void fun(STREC *a) { double ave=0.0; int i; for(i=0;i<N;i++) a->ave=a->ave+a->s[i]; a->ave/=N; } 四、带头结点的求平均成绩 double fun(STREC *h) { double ave=0.0; STREC *p=h->next; while(p!=NULL) { ave=ave+p->s; p=p->next; }
{int i,j=1; for(i=1;i<n;i++) if(a[j-1]!=a[i]) a[j++]=a[i]; return j; } 三七、删除字符串中的* void fun(char *a,char *h,char *p) {int i=0; char *q=a; while(q<h) {a[i]=*q;q++;i++;} while(q<p) {if(*q!='*') {a[i]=*q;i++;} q++; } while(*q) {a[i]=*q;i++;q++;} a[i]='\0'; } 三八、前端*不多于N个 void fun(char*a,int n) {int i=0;int k=0; char *p,*t; p=t=a; while(*t=='*') {k++;t++;} if(k>n) {while(*p) {a[i]=*(p+k-n); i++;p++} a[i]='\0'; } } 三九、将一个字符串转换成整数 long fun(char *p)
return ave/N; } 五、将所有大于1小于整数m的非素数存入xx所指数组中,非素数的个 数通过k返回 void fun(int m,int *k,int xx[]) { int i,j,n=0; for(i=4;i<m;i++) { for(j=2;j<i;j++) if(i%j==0) break if(j<i) xx[n++]=i; } *k=n; } 六、求字符串中指定字符的个数 int fun(char *ss,char c) { int i=0; for(;*ss!='\0';ss++) if(*ss==c) i++; return i; } 七、求n门课程的平均值 float fun(float *a,int n) { int i; float av=0.0; for(i=0;i<n;i++) av=av+a[i]; return(av/n); } 八、找出N名学生,分数最高的记录 int fun(STREC *a,STREC *b) { int i,j=0,max=a[0].s;
x1=cos(x0); } while(fabs(x0-x1)>=1e-6); return x1; } 十五、将字符穿的前端*移到尾部 void fun(char *a) { int i=0,n=0; char *p; p=a; while(*p来自百度文库='*') {n++;p++;} while(*p) {a[i]=*p;i++;p++;} while(n!=0) {a[i]='*';i++;n--;} a[i]='\0'; } 十六、求s=sqrt(ln(1)+...ln(m)) double fun(int m) { int i; double s=0.0; for(i=1;i<=m;i++) s=s+log(i); return sqrt(s); } 十七、删除字符串中前面和后面的* (n字符串的长度,h前导*的个数,e尾部*的个数) void fun(char *a,int n,int h,int e) { int i,j=0; for(i=h;i<n-e;i++) a[j++]=a[i]; a[j]='\0'; }
for(x=0;x<=p;x++) {ch=w[0]; for(j=1;j<n;j++) {w[j-1]=w[j];} w[n-1]=ch; } } 三三、将一个二维数组按列存入一维数组 void fun(char(*s)[N],char*b) {int i,j,k=0; for(i=0;i<N;i++) for(j=0;j<M;j++) b[k++]=s[j][i]; b[k]='\0'; } 三四、求s=1+1/(1+2)+...+1/(1+...n) double fun(int n) {int i,s1=0; double s=0.0; for(i=1;i<=n;i++) {s1=s1+i; s=s+1.0/s1; } return s; } 三五、删除字符串中ASCII为奇数的字符 void fun(char *s,char t[]) {int i,j=0,n; n=strlen(s); for(i=0;i<n;i++) if(s[i]%2==0) {t[j]=s[i]; j++;} t[j]='\0'; } 三六、删除相同的数 int fun(int a[],int n)
av=av+a[i].s; av=av/N; for(i=0;i<N;i++) if(av<=a[i].s) {b[*n]=a[i];*n=*n+1;} return av; } 二二、1到m之间能被7或11整除的所有整数 void fun (int m,int *a,int *n) { int i,j=0; for(i=1;i<=m;i++) if(i%7==0||i%11==0) a[j++]=i; *n=j } 二三、删除前端* void fun(char *a) { char *p=a; while(*p=='*')p++; for(;*p!='\0';p++,a++) *a=*p; *a='\0'; } 二四、找出成绩的最高分 double fun(STREC *h) { double max=h->s; while(h!=NULL) { if(max<h->s) max=h->s; h=h->next; } return max; } 二五、找出一维数组最大值和他的下标