计算机类
公务员类
工程类
语言类
金融会计类
计算机类
医学类
研究生类
专业技术资格
职业技能资格
学历类
党建思政类
计算机等级考试(NCRE)
全国计算机应用水平考试(NIT)
计算机软件水平考试
计算机等级考试(NCRE)
全国高校计算机等级考试CCT
行业认证
信息素养
计算机等级考试二级
计算机等级考试一级
网络工程师(计算机等级考试四级)
计算机等级考试二级
数据库工程师(计算机等级考试四级)
计算机等级考试三级
信息安全工程师(计算机等级考试四级)
嵌入式系统开发工程师(计算机等级考试四级)
软件测试工程师(计算机等级考试四级)
C语言程序设计
Python语言程序设计
WPS Office高级应用与设计
C语言程序设计
C++语言程序设计
Java语言程序设计
Visual Basic语言程序设计
Web程序设计
Access数据库程序设计
MySQL数据库程序设计
Visual FoxPro数据库程序设计
办公软件高级应用
改错题 给定程序中fun函数的功能是:将n个无序整数从小到大排序。 请改正程序中的错误,使它能得出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构! 给定源程序: #include<stdio.h> #include<stdlib.h> void fun(int n,int*a) {int i,j,p,t; for(j=0;j<n-1;j++) {p=j; /**********found**********/ for(i=j+1;i<n-1;i++) if(a[p]>a[i]) /**********found**********/ t=i; if(p!=j) {t=a[j];a[j]=a[p];a[p]=t;} } } void putarr(int n,int*z) {int i; for(i=1;i<=n;i++,z++) {printf('%4d',*z); if(!(i%10))printf('\n'); }printf('\n'); } main() {int aa[20]={9,3,0,4,1,2,5,6,8,10,7},n=11; printf('\n\nBefore sorting %d numbers:\n',n); putarr(n,aa); fun(n,aa); printf('\nAfter sorting %d numbers:\n',n); putarr(n,aa); }
进入题库练习
改错题 下列给定的程序中,函数proc()的功能是:用选择法对数组中的n个元素按从大到小的顺序进行排序。 请修改程序中的错误,使它能得出正确的结果。 注意:不要改动main()函数,不得增行或删行,也不得更改程序的结构。 试题程序: #include<stdio.h> #define M 20 void proc(int a[],int n) { int i,j,t,P; for(j=0;j<n-1;j++) //****found**** { p=j for(i=j;i<n;i++) if(a[i]<a[p]) //****found**** p=j; t=a[p];a[p]=a[j];a[j]=t; } } void main() { int arr[M]={9,6,8,3,-1},i,m=5; printf('排序前的数据:'); for(i=0;i<m;i++)printf('%d',arr[i]); printf('\n'); proc(arr,m); printf('排序后的顺序:'); for(i=0;i<m;i++)printf('%d',arr[i]); printf('\n'); }
进入题库练习
改错题 下列给定程序中函数fun的功能是:用选择法对数组中的n个元素进行升序排列。 请修改程序中的错误,使它能得出正确的结果。 注意:不要改动main函数,不得增行和删行,也不得更改程序的结构! 试题程序: #include <stdio.h> #define N 20 void fun(int a[],int n) { int i,j,t,p; for(j=0;j>n-1;j++) { /********found********/ p=j for(i=j;i<n;i++) if(a[i]<a[p]) /********found********/ p=j; t=a[p];a[p]=a[j];a[j]=t; } } void main() { int a[N]={9,6,8,3,-1},i,m=5; printf('排序前的数据:'); for(i=0;i<m;i++) printf('%d',a[i]); printf('\n'); fun(a,m); printf('排序后的顺序:'); for(i=0;i<m;i++) printf('%d',a[i]); printf('\n'); }
进入题库练习
改错题 下列给定程序中,函数fun的功能是:求S的值。 S=(22/(1×3))×(42/(3×5))×(62/(5×7))×…×(2k)2/((2k-1)×(2k+1)) 例如,当k为10时,函数的值应为1.533852。 请改正程序中的错误,使它能得出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构! 试题程序: #include<stdlib.h> #include<conio.h> #include<stdio.h> #include<math.h> /********found********/ double fun(int k) { int n;float s,w,p,q; n=1; s=10; while(n<=k) { w=2.0*n; P=w-1.0; q=w+1.0; s=s*w*w/p/q; n++; } /********found********/ return s } void main() {system('CLS'); printf('%f\n',fun(10)); }
进入题库练习
改错题 给定程序MODI1.c中函数fun的功能:交换主函数中两个变量的值。例如,变量a中的值原为8,b中的值原为3;调用函数后,a中的值为3,b中的值为8。 请改正程序中的错误,使它能计算出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构! 给定源程序如下: #include stdio.h /*********found**********/ void fun(int x,int y) { int t; /*********found**********/ t=x;x=y;y=t; } main() { int a,b; a=8;b=3; fun(a,b); printf('%d, %d\n',a,b); }
进入题库练习
改错题 下列给定程序中函数fun的功能是:用选择法对数组中的n个元素进行升序排列。 请修改程序中的错误,使它能得出正确的结果。 注意:不要改动main函数,不得增行和删行,也不得更改程序的结构! 试题程序: #include <stdio.h> #define N 20 void fun(int a[],int n) { int i,j,t,p; for(j=0;j>n-1;j++) { /********found********/ p=j for(i=j;i<n;i++) if(a[i]<a[p]) /********found********/ p=j; t=a[p];a[p]=a[j];a[j]=t; } } void main() { int a[N]={9,6,8,3,-1},i,m=5; printf('排序前的数据:'); for(i=0;i<m;i++) printf('%d',a[i]); printf('\n'); fun(a,m); printf('排序后的顺序:'); for(i=0;i<m;i++) printf('%d',a[i]); printf('\n'); }
进入题库练习
改错题给定程序中函数fun的功能是:根据以下公式求π值,并作为函数值返回。例如,给指定精度的变量eps输入0.0005时,应当输出Pi=3.140578。请改正程序中的错误,使它能得出正确结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。给定源程序:#include<math.h>#include<stdio.h>doublefun(doubleeps){doubles,t;intn=1;s=0.0;/************found************/t=0;while(t>eps){s+=t;t=t*n/(2*n+1);n++;}/************found************/return(s);}main(){doublex;printf('\nPleaseenteraprecision:');scanf('%lf',x);printf('\neps=%lf,Pi=%lf\n\n',x,fun(x));}
进入题库练习
改错题 给定程序中函数fun的功能是:将m(1≤m≤10)个字符串连接起来,组成一个新串,放入pt所指存储区中。 例如:把3个串:'abc','CD','EF'连接起来,结果是'abcCDEF'。 请改正程序中的错误,使它能得出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构! 给定源程序: #include <stdio.h> #include <string.h> void fun(char str[][10],int m,char *pt) { /**********found**********/ Int k,q,i; for(k=0;k<m;k++) { q=strlen(str [k]); for(i=0;i<q;i++) /**********found**********/ pt[i]=str[k,i]; pt+=q; pt[0]=0; } } main() { int m,h; char s[10][10],p[120]; printf('\nPlease enter m:'); scanf('%d',m); gets(s[0]); printf('\nPlease enter%d string:\n',m); for(h=0;h<m;h++) gets(s[h]); fun(s,m,p); printf('\nThe result is:%s\n',p); }
进入题库练习
改错题给定程序中函数fun的功能是:用下面的公式求π的近似值,直到最后一项的绝对值小于指定的数(参数num)为止:例如,程序运行后,输入0.0001,则程序输出3.1414。请改正程序中的错误,使它能输出正确的结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!给定源程序:#include<math.h>#include<stdio.h>floatfun(floatnum){ints;floatn,t,pi;t=1;pi=0;n=1;s=1;/**********found**********/While(t>=num){pi=pi+t;n=n+2;s=-s;/**********found**********/t=s%n;}pi=pi*4;returnpi;}main(){floatn1,n2;printf('Enterafloatnumber:');scanf('%f',n1);n2=fun(n1);printf('%6.4f\n',n2);}
进入题库练习
改错题 给定程序MODI1.c中函数fun的功能:找出100~n(n≤1000)的三位数字相等的所有整数,把这些整数放在s所指数组中,个数作为函数值返回。 请改正函数fun中指定位置的错误,使它能得出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程程序的结构! 给定源程序如下: #include stdio.h #define N 100 int fun(int *s, int n) { int i,j,k,a,b,c; j=0; for(i=100; in; i++) { /**************found**************/ k=n; a=k%10; k/=10; b=k%10; k/=10; /**************found**************/ c=k%10 if( a==b a==c ) s[j++]=i; } return j; } main() { int a[N], n, num=0, i; do { printf('\nEnter n( =1000 ) : '); scanf('%d',n); } while(n 1000); num = fun( a,n ); printf('\n\nThe result :\n'); for(i=0; inum; i++)printf('%5d',a[i]); printf('\n\n'); }
进入题库练习
改错题 给定程序MODI1.C中函数fun的功能是:输出M行M列整数方阵,然后求两条对角线上元素之和,返回此和数。 请改正程序中的错误,使它能得出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构! 给定源程序: #include<stdio.h> #define M 5 /**********found**********/ int fun(int n, int xx[][]) { int i, j, sum=0; printf('\nThe %d x %d matrix:\n', M, M); for(i=0; i<M; i++) { for(j=0; j<M; j++) /**********found**********/ printf('%f', xx[i][j]); printf('\n'); } for(i=0; i<n; i++) sum+=xx[i][i]+xx[i][n-i-1]; return(sum); } main() { int aa[M][M]={{1, 2, 3, 4, 5}, {4, 3, 2, 1, 0}, {6, 7, 8, 9, 0}, {9, 8, 7, 6, 5}, {3, 4, 5, 6, 7}}; printf('\nThe sum of all elements on 2 diagnals is %d.', fun(M, aa)); }
进入题库练习
改错题 下列给定的程序中,fun函数的功能是:将p所指的字符串中每个单词的最后一个字母改成大写(这里的“单词”是指有空格隔开的字符串)。 例如,若输入:“I am a student to take the examination”, 则应输出:“I aM A studenT tO takE thE examinatioN”。 请改正程序中的错误,使它能得出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构! 试题程序: #include<stdlib.h> #include<string.h> #include<conio.h> #include<ctype.h> #include<stdio.h> void fun(char*p) { int k=0; for(;*p;p++) if(k) { /**********found**********/ if(p=='') { k=0; /**********found**********/ *p=toupper(*(p-1)); } } else k=1; } void main() { char chrstr[64]; int d; system('CLS'); printf('\nPlease enter an English sentence within 63 letters:'); gets(chrstr); d=strlen(chrstr); chrstr[d]=''; chrstr[d+1]=0; printf('\nBefore changing:\n%s',chrstr); fun(chrstr); printf('\nAfter changing:\n%s',chrstr); }
进入题库练习
改错题 下列给定程序中,函数fun的功能是:先将s所指字符串中的字符按逆序存放到t所指字符串中,然后把s所指串中的字符按正序连接到t所指串之后。 例如,当s所指的字符串为“ABCDE”时,t所指的字符串应为“EDCBAABCDE”。 请改正程序中的错误,使它能得出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构! 试题程序: #include<stdlib.h> #include<conio.h> #include<stdio.h> #include<string.h> void fun(char *s,char *t) { /********found********/ int i; s1=strlen(s); for(i=0;i<s1;i++) /********found********/ t[i]=s[s1-i]; for(i=0;i<s1;i++) t[s1+i]=s[i]; t[2*s1]='\0'; } main() { char s[100],t[100]; system('CLS'); printf('\nPlease enter string s:'); scanf('%s',s); fun(s,t); printf('The result is:%s\n',t); }
进入题库练习
改错题 下列给定程序中,函数fun的功能是:将大写字母转换为对应小写字母之后的第5个字母;若小写字母为v~z,则使小写字母的值减21。转换后的小写字母作为函数值返回。例如,若形参是字母A,则转换为小写字母f;形参是字母w,则转换为小写字母b。 请改正函数fun中的错误,使它能得出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构! 试题程序: #include<stdio.h> #include<ctype.h> char fun(char c) { if(c>='A' c<='Z') /**********found**********/ c=c-32; if(c>='a' c<='u') /**********found**********/ c=c-5; else if(c>='v' c<='z') c=c-21; return c; } main() { char c1,c2; printf('\nEnter a letter(A-Z):'); c1=getchar(): if(isupper(c1)) { c2=fun(c1); printf('\n k nThe letter %c change to%c\n',c1,c2); } else { printf('\nEnter(A-Z)!\n'); } }
进入题库练习
改错题 下列给定程序中,函数fun的功能是:判断一个整数是否为素数,若是素数返回1,否则返回0。 在main函数中,若fun返回1输出YES,若fun返回0输出NO。 请改正程序中的错误,使它能得出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构! 试题程序: #include<stdlib.h> #include<conio.h> #include<stdio.h> int fun(int m) { int k=2; while(k<=m&&(m%k)) /********found********/ k++ /********found********/ if(m=k) return 1; else return 0; } void main() { int n; system('CLS'); printf('\nPlease enter n:'); scanf('%d',&n); if(fun(n))printf('YES\n'); else printf('NO!\n'); }
进入题库练习
改错题给定程序中函数fun的功能是:求s的值。例如,当k为10时,函数值应为:1.533852。请改正程序中的错误,使程序能输出正确的结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!给定源程序:#include<stdio.h>#include<math.h>/************found************/voidfun(intk){intn;doubles,w,p,q;n=1;s=1.0;while(n<=k){w=2.0*n;p=w-1.0;q=w+1.0;s=s*w*w/p/q;n++;}/************found************/returns}main(){printf('%f\n',fun(10));}
进入题库练习
改错题 下列给定程序中,函数fun的功能是:找出100~n(不大于1000)三个位上的数字都相等的所有整数,把这些整数放在s所指的数组中,个数作为函数值返回。 请改正程序中的错误,使它能得出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。 试题程序: #include<stdio.h> #define N 100 int fun(int*s,int n) { int i,j,k,a,b,c; j=0; for(i=100;i<n;i++) { /**********found**********/ k=n; a=k%10; k/=10; /**********found**********/ b=k/10; c=k/10; if(a==b a==c) s[j++]=i; } return j; } main() { int a[N],n,num=0,i; do { printf('\nEnter n(<=1000):'); scanf('%d',n); }while(n>1000); num=fun(a,n); printf('\n\nThe result:\n'); for(i=0;i<num;i++) printf('%5d',a[i]); printf('\n\n'); }
进入题库练习
改错题 给定程序中函数fun的功能是:判断一个整数是否是素数,若是返回1,否则返回0。在main()函数中,若fun返回1输出YES,若fun返回0输出NO!。 请改正程序中的错误,使它能得出正确的结果。 注意:不要改动main函数。不得增行或删行,也不得更改程序的结构! 给定源程序: #include<stdio.h> int fun(int m) { int k=2; while(k<=m(m%k)) /**********found**********/ k++ /**********found**********/ if(m=k) return 1; else return 0; } main() { int n; printf('\nPlease enter n:'); scanf('%d', n); if(fun(n))printf('YES\n'); else printf('NO!\n'); }
进入题库练习
改错题 给定程序MODI1.c中函数fun的功能:从低位开始取出长整型变量s中偶数位上的数,依次构成一个新数放在t中。高位仍在高位,低位仍在低位。 例如,当s中的数为7654321时,t中的数为642。 请改正程序中的错误,使它能得出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构! 给定源程序如下: #include stdio.h /************found************/ void fun (long s, long t) { long sl=10; s /= 10; *t = s % 10; /************found************/ while ( s 0) { s = s/100; *t = s%10*sl + *t; sl = sl * 10; } } main() { long s, t; printf('\nPlease enter s:'); scanf('%ld', s); fun(s, t); printf('The result is: %ld\n', t); }
进入题库练习
改错题 下列给定程序中,函数fun的功能是:从低位开始依次取出长整型变量s中偶数位上的数,构成一个新数放在t中。高位仍在高位,低位仍在低位。 例如,当s中的数为7654321时,t中的数为642。 请改正程序中的错误,使它能得出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构! 试题程序: #include<stdio.h> /********found********/ void fun(long s,long t) (long s1=10; s/=10; *t=s%10; /********found********/ while(s<0) {s=s/100; *t=s%10*s1+*t; s1=s1 *10; } } main() {long s,t; printf('\nPlease enter s:');scanf('%ld',&s); fun(s,&t); printf('The result is:%ld\n',t); }
进入题库练习