计算机类
公务员类
工程类
语言类
金融会计类
计算机类
医学类
研究生类
专业技术资格
职业技能资格
学历类
党建思政类
计算机等级考试(NCRE)
全国计算机应用水平考试(NIT)
计算机软件水平考试
计算机等级考试(NCRE)
全国高校计算机等级考试CCT
行业认证
信息素养
计算机等级考试二级
计算机等级考试一级
网络工程师(计算机等级考试四级)
计算机等级考试二级
数据库工程师(计算机等级考试四级)
计算机等级考试三级
信息安全工程师(计算机等级考试四级)
嵌入式系统开发工程师(计算机等级考试四级)
软件测试工程师(计算机等级考试四级)
C语言程序设计
Python语言程序设计
WPS Office高级应用与设计
C语言程序设计
C++语言程序设计
Java语言程序设计
Visual Basic语言程序设计
Web程序设计
Access数据库程序设计
MySQL数据库程序设计
Visual FoxPro数据库程序设计
办公软件高级应用
问答题请编写一个函数,用来删除字符串中的所有*。 例如,输入abc*de*f*gh,则输出为abcdefgh。 注意:部分源程序给出如下。 请勿改动main()函数和其他函数中的任何内容,仅在函数proc()的花括号中填入所编写的若干语句。 试题程序: #include<stdio.h> #inciude<ctype.h> #include<conio.h> #include<stdlib.h> void proc(char*str) { } void main() { char str[81]; system("CLS"); printf("Input a string:"); gets(str); puts(str); proc(str); printf("***str:%s/n",str); }
进入题库练习
问答题学生的记录由学号和成绩组成,N名学生的数据已存放在主函数的结构体数组s中,请编写函数fun,它的功能是:把低于平均分的学生数据放在b所指的数组中,低于平均分的学生人数通过形参n传回,平均分通过函数值返回。 [注意] 部分源程序给出如下。 请勿改动主函数main和其他函数中的任何内容,仅在fun函数的花括号中填入所编写的若干语句。 [试题源程序] #include<stdio.h> #define N 8 typedef struct char num[10]; double s; STREC; double fun(STREC *a, STREC *b, int *n) void main() STREC s[N]="GA05", 85, "GA03", 76, "GA02", 69, "GA04", 85, "GA01", 91, "GA07", 72, "GA08", 64, "GA06", 87; STREC h[N], t; FILE *out; int i, j, n; double ave; ave=fun(s, h, &n); printf("The %d student data which is lower than %7.3 f:/n", n, ave); for(i=0; i<n; i++) printf("%s %4.1f/n", h[i]. num, h[i].s); printf("/n"); out=fopen("out.dat", "W"); fprintf(out, "%d/n%7.3f/n", n, ave); for(i=0; 2<n-1; i++) for(j=i+1; j<n; j++) if(h[i]. s>h[j].s) t=h[i]; h[i]=h[j]; h[j]=t; for(i=0; 2<n; i++) fprintf(out, "%4.1f/n", h[i].s); fclose(out);
进入题库练习
问答题给定程序MODI1.C中函数fun的功能是:统计字符串中各元音字母(即:A、E、I、O、U)的个数。注意:字母不分大、小写。例如:若输入:THIs is a boot,则输出应该是:1、0、2、2、0。 请改正程序中的错误,使它能得出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!1 #include<stdio.h>2 void fun(char *s,int num[5])3 { int k,2=5;4 for(k=0;k<i;k++)5 /**********found**********/6 num[i]=0;7 for(;*s;s++)8 { i=-1 ;9 /**********found**********/10 switch(s)11 {case 'a':case 'A':{i=0;break;}12 case'e':case'E':{i=1;break;}13 case 'i':case 'T':{i=2;break;}14 case 'o':case'0':{i=3;break;}15 case'u':case'U':{i=4;break;}16 }17 if(>=0)18 num[i]++;19 }20 }21 main()22 { char s1[81];int num1[5],i;23 printf(''\nPlease enter a string:'');gets(s1);24 fun(s1,num1);25 for(i=0;i<5;i++)printf(''%d'',num1[i]);printf(''\n'');26 }
进入题库练习
问答题编写函数fun,其功能是计算:s作为函数值返回。在C语言中可调用log(n)函数求ln(n)。log函数的引用说明为:doublelog(doublex)。例如,若m的值为20,则fun函数值为6.506583。注意:部分源程序已给出。请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。试题程序:#include<stdlib.h>#include<conio.h>#include<stdio.h>#include<math.h>doublefun(intm){inti;doubles=0.0;for(i=1;i<=m;i++)s=s+log(i);/*计算s=ln(1)+ln(2)+ln(3)+…+ln(m)*/returnsqrt(s);/*对s求平方根并返回*/}voidmain(){system("CLS");printf("%f/n",fun(20));}
进入题库练习
问答题 编写一个函数fun,它的功能是:实现两个字符串的连接(不使用库函数strcat),即把p2所指的字符串连接到p1所指的字符串后。 例如,分别输入下面两个字符串: FirstString-- SecondString 程序输出: FirstString--SecondString 注意:部分源程序存在文件PROG1.C中。 请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。 给定源程序: #include<stdio.h> void fun(char p1[], char p2[]) { } main() { char s1[80], s2[40]; printf("Enter s1 and s2:/n"); scanf("%s%s", s1, s2); printf("s1=%s/n", s1); printf("s2=%s/n", s2); printf("Invoke fun(s1, s2):/n"); fun(s1, s2); printf("After invoking:/n"); printf("%s/n", s1); }
进入题库练习
问答题给定程序中,函数fun的功能是:把形参s所指字符串中最右边的n个字符复制到形参t所指字符数组中,形成一个新串。若s所指字符串的长度小于n,则将整个字符串复制到形参t所指字符数组中。 例如,形参s所指的字符串为:abedefgh,n的值为5,程序执行后t所指字符数组中的字符串应为:defgh。 请在程序的下画线处填入正确的内容并把下画线删除,使程序得出正确的结果。 注意:不得增行或删行,也不得更改程序的结构!试题程序:#include<stdio.h>#include<string.h>#define N 80void fun(char*s,int n,char*t){ int len,i,j=0; len=strlen(s);/******found******/ if(n>=len)strepy(____1____); else { for(i=len—n;i<=len一1;i++)/******found******/ t[j++]=__2__;/******found******/ t[i]=____3____; }}main(){ char s[N],t[N];int n; printf(“Enter a string:”); gets(s); printf(“Enter n:”); seanf(“%d”,&n); fun(s,n,t); printf(“The string t:”); puts(t);
进入题库练习
问答题下列给定程序中,函数fun的功能是:在形参s所指字符串中寻找与参数c相同的字符,并在其后插入一个与之相同的字符,若找不到相同的字符则不做任何处理。 例如,若s所指字符串为“baaeda”,c中的字符为a,执行后s所指字符串为“baaaacdaa”。 请在程序的下画线处填入正确的内容并将下画线删除,使程序得出正确的结果。 注意:部分源程序给出如下。 不得增行或删行,也不得更改程序的结构! 试题程序: #include<stdio.h> void fun(char*s,char c) { int i,j,n; /*********found*********/ for(i=0;s[i]!= 【1】 ;i++) if(S[i]==c) { /*********found*********/ n= 【2】 ; while(s[i+1+n]!='\0') n++; for(j=i+n+1 ; j>i; j--) s[j+1]=s[j]; /*********found*********/ s[j+1]= 【3】 ; i=i+1; } } main() { char s[80]="baaccla",c; printf("\nThe string:%s\n",s); printf("\nInput a character:"); scanf("%c",&c); fun(s,c); printf("\nThe result is:%s\n",s); }
进入题库练习
问答题给定程序中,函数fun的功能是:判定形参a所指的N×N(规定N为奇数)的矩阵是否是“幻方”,若是,函数返回值为1;不是,函数返回值为0。“幻方”的判定条件是:矩阵每行、每列、主对角线及反对角线上元素之和都相等。 例如,以下3×3的矩阵就是一个“幻方”: 4 9 2 3 5 7 8 1 6 请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。 注意:源程序存放在考生文件夹下的BLANK1.C中。 不得增行前删行.也不得更改程序的结构!1 #include<stdio.h>2 #define N 33 int fun(int(*a)[N])4 { int i,j,m1,m2,row,colum;5 m1=m2=0;6 for(i=0;i<N;i++)7 {j=N-i-1;m1+=a[i][i]; m2+=a[i][j];}8 if(m1!=m2)return 0;9 for(i=0 ; i<N;i++){10 /**********found**********/11 row=colum=__1___;12 for(j=0;j<N;j++)13 { row+=a[i][j];colum+=a[j][i];}14 /**********found**********/15 if((row!=colum) __2__ (row!=m1)) return 0;16 }17 /**********found**********/18 return __3__;19 }20 main()21 { int x[N][N],i,j;22 printf(''Enter number for array:\n'');23 for(i=0;i<N;i++)24 for(j=0;j<N;j++)scanf(''%d'',&x[i][j]);25 printf(''Array:\n'');26 for(2=0;i<N;i++)27 {for(j=0;j<N;j++) printf(''%3d'',x[i][j]);28 printf(''\n'');29 }30 if(fun(x))printf(''The Array isa magic square.\n'');31 else printf(''The Array isn't a magic square.\n'');32 }
进入题库练习
问答题请编写一个函数unsigned fun (unsigned w),w 是一个大于 10的无符号整数,若w是n(n≥2)位的整数,则函数求出w的后 n-1位的数作为函数值返回。 例如:w值为5923,则函数返回923;若w值为923,则函数返回23。 注意:部分源程序给出如下。 请勿改动主函数main和其他函数中的任何内容,仅在函数fun 的花括号中填入所编写的若干语句。 试题程序: #include<conio. h> #include<stdio. h> unsigned fun(unsigned w) main() unsigned x; clrscr (); printf("Enter a unsigned integer number: "); scanf ("%u", printf("The original data is:%u/n",x); if (x<10) printf ("Data error! "); else printf ("The result :%u/n", fun(x) );
进入题库练习
问答题 给定程序MODI1.C中函数fun的功能是:把主函数中输入的3个数,最大的放在a中,最小的放在c中,中间的放在b中。 例如,输入的数为:55 12 34,输出结果应当是:a=55.0,b=34.0,c=12.0。 请改正程序中的错误,使它能得出正确结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。 #include <stdio.h> void fun(float *a,float *b,float *c) { /**********found**********/ float *k; if(*a<*b) { k=*a;*a=*b;*b=k;} /**********found**********/ if(*a>*c) { k=*c;*c=*a;*a=k;} if(*b<*c) { k=*b;*b=*c;*c=k;} } main() { float a,b,c; printf("Input a b c:");scanf("%f%f%f", printf("a=%4.1f,b=%4.1f,c=%4.1f/n/n",a,b,c); fun( printf("a=%4.1f,b=%4.1f,c=%4.1f/n/n",a,b,c); }
进入题库练习
问答题请编写函数fun,函数的功能是:判断字符串是否为回文?若是,函数返回1,主函数中输出:YES;否则返回0,主函数中输出NO。回文是指顺读和倒读都一样的字符串。 例如,字符串LEVEL是回文,而字符串123312就不是回文。 注意:部分源程序在文件PROG1.C中。 请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。 #include #2nclude #define N 8 0 int fun(char。str) { } main() { char s[N];void NONi(); printf("Enter a siririg:");gets(s); printf("/n/n");puts(s); if(fun(s))printf(”YES/n”); else printf("NO/n"); NONO(); } void NONO() {/*请在此函数内打开文件,输入测试数据,调用fun函数,输出数据,关闭文件。 */ FILE*rf, *wf; int i ; char s[N]; rf=fopen("in.dat","r"); wf=fopen("out.dat","w"); for(i=0; i<1 0; i++) { fsCanf(rf,"%s",s); if(fun(s))fprintf(wf,"%s YES/n",s); else fprintf(wf,"%s NO/n",s); } fclose(rf); fclose(wf); }
进入题库练习
问答题给定程序MODIl.C中函数fun的功能是:从整数1到55之间,选出能被3整除、且有一位上的数是5的那些数,并把这些数放在b所指的数组中,这些数的个数作为函数值返回。规定,函数中a1放个位数,a2放十位数。 请改正程序中的错误,使它能得出正确结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。 #include<stdio.h> int fun(int*b) { int k,a1,a2,i=0; for(k=10;k<=55;k++){ /**********found**********/ a2=k/10; a1=k-a2/10: if((k%3==0&&a2==5)‖(k%3==0&&a1==5)) { b[i]=k;i++;} } /**********found**********/ return k: } main() {int a[100],k,m: m=fun(a); printf("The result is:\n"); for(k=0;k<m;k++)printf("%4d",a[k]);printf("\n"); }
进入题库练习
问答题函数fun的功能是:将s所指字符串中除了下标为偶数、同时ASCII值也为偶数的字符外,其余的全都删除;串中剩余字符所形成的一个新串放在t所指的数组中。 例如,若s所指字符串中的内容为“ABCDEFG123456”,其中字符A的ASCII码值为奇数,因此应当删除:其中字符B的ASCII码值为偶数,但在数组中的下标为奇数,因此也应当删除:而字符2的ASCII码值为偶数,所在数组中的下标也为偶数,因此不应当删除,其他依此类推。最后t所指的数组中的内容应是:”246”。 注意:部分源程序存在文件PROG1.C中。 请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入要编写的若干语句。 #include<stdio.h> #include<string.h> void fun(char*s,char t[]) { } main() { char s[100],t[100]; void NONO(); printf("/nPlease enter string S:");scanf("%s",s); fun(s,t); printf("/nThe result is:%s/n",t); NONO(); } voidNONO() {/*本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。*/ char s[100],t[100]; FILE*rf,*wf; int i; rf=fopen("in.dat","r"); wf=fopen("out.dat","w"); for(i=0;i<10;i++){ fscanf(rf,"%s",s); fun(s,t); fprintf(wf,"%s/n",t); } fclose(rf); fclose(wf); }
进入题库练习
问答题m个人的成绩存放在score数组中,请编写函数fun,它的功能是:将低于平均分的人数作为函数值返回,将低于平均分的分数放在below所指的数组中。 例如,当score数组中的数据为10、20、30、40、50、60、70、80、90时,函数返回的人数应该是4,below中的数据应为10、20、30、40。 注意:部分源程序给出如下。 请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。 试题程序: #include<stdlib.h> #include<conio.h> #include<stdio.h> #include<string.h> int fun(int score[],int m,int below[]) { } void main() { int i,n,below[9]; int score[9]={10,20,30,40,50,60,70,80,90}; system("CLS"); n=fun(score,9,below); printf("/nBelow the average score are:"); for(i=0;i<n;i++) printf("%d",below[i]); }
进入题库练习
问答题给定程序中,函数fun的功能是:计算下式前n项的和作为函数值返回。例如,当形参n的值为10时,函数返回:-0.204491。请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。注意:源程序存放在考生文件夹下的BLANK1.C中。不得增行或删行,也不得更改程序的结构!#include<stdio.h>doublefun(intn){inti,k;doubles,t;s=0;/**********found**********/k=___________(1);for(i=1;i<=n;i++){/**********found**********/t=___________(2);s=s+k*(2*i一1)*(2*i+1)/(t*t);/**********found**********/k=k*___________(3);}returns;}main(){intn=-1:while(n<0){printf("Pleaseinput(n>0):");scanf("%d",&n);}printf("\nTheresultis:%f\n",fun(n));}
进入题库练习
问答题给定程序MODI1.C中的函数Creatlink的功能是创建带头结点的单向链表,并为各结点数据域赋0到m—l的值。 请改正函数Creatlink中指定部位的错误,使它能得出正确的结果。 注意:不要改动mam函数,不得增行或删行,也不得更改程序的结构! #include #include typedef struct aa { int data; struct aa *nextf } NODE; NODE *Creatlink(int n,int m) {NODE *h=NULLr *p,*s; int i; p= (NODE) malloc (sizeof (NODE)) ; h=p; p—>next=NULL; for (i=1; idata=rand () %m; s—>next=p—> next; p—>next=s; p=p—>next; } return p; } outlink(NODE *h) {NODE *p; p=h—>next; printf ("/n/nTHE LIST :/n/n HEAD ") ; while (p) { printf ("—>%d ",p—>data) ; p=p—>next; } main () {NODE *head; head=Creatlink{8,22) ; outlink (head) ; }
进入题库练习
问答题请编写函数fun(),其功能是;计算井输出下列多项式值。 S=(1-1/2)+(1/3-1/4)+…+(1/(2n-1)-1/2n) 例如,若主函数从键盘给n输入8后,则输出为 S-0.662872。 注意;部分源程序给出如下。 请勿改动主函数main 和其他函数中的任何内容,仅在函数fun 的花括号中填入所编写的若干语句。 试题程序; # include<stdio. h> double fun(int n) main () int n; double s; printf("/nInput n: "); scanf ("%d", s=fun (n); printf ("/ns=%f/n ", s);
进入题库练习
问答题给定程序中,函数fun的功能是:求ss所指字符串数组中长度最短的字符串所在的行下标,作为函数值返回,并把其串长放在形参n所指变量中。ss所指字符串数组中共有M个字符串,且串长<N。 请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。 注意:源程序存放在考生文件夹下的BLANK1.C中。 不得增行或删行,也不得更改程序的结构!1 #include<stdio.h>2 #include<string.h>3 #define M 54 #define N 205 int fun(char(*ss)[N],int *n)6 { int i,k=0,len=N;7 /**********found**********/8 for(i=0;i< __1__;i++)9 {len=strlen(ss[i]);10 if(i==0) *n=len;11 /**********found**********/12 if(len __2__ *n)13 {* n=len;14 k=i ;15 }16 }17 /**********found**********/18 return(__3__);19 }20 main()21 { char ss[M][N]={''shanghai'',''guangzhou'',''beijing'',''tianjing'',''chongqing''};22 int n,k,i;23 printf(''\nThe original strings are:\n'');24 for(i=0;i<M;i++)puts(ss[i]);25 k=fun(ss,&n);26 printf(''\nThe length of shortest string is:%d\n'',n);27 printf(''\nThe shortest string is:%s\n'',ss[k]);28 }
进入题库练习
问答题给定程序中,函数fun的功能是:在3×4的矩阵中找出在行上最大、在列上最小的那个元素,若没有符合条件的元素则输出相应信息。 例如,有下列矩阵: 1 2 13 4 7 8 10 6 3 5 9 7 程序执行结果为:find: a[2][2]=9 请在程序的下划线处填入正确的内容并把下划线删除, 使程序得出正确的结果。 注意:源程序存放在考生文件夹下的BLANK1.C中。 不得增行或删行,也不得更改程序的结构! 给定源程序: #include #define M 3 #define N 4 void fun(int (*a)[N]) { int i=0,j,find=0,rmax,c,k; while( (i { rmax=a[i][0]; c=0; for(j=1; j if(rmax /**********found**********/ rmax=a[i][j]; c= __1__ ; } find=1; k=0; while(k /**********found**********/ if (k!=i k++; } if(find) printf("find: a[%d][%d]=%d/n",i,c,a[i][c]); /**********found**********/ __3__ ; } if(!find) printf("not found!/n"); } main() { int x[M][N],i,j; printf("Enter number for array:/n"); for(i=0; i for(j=0; j printf("The array:/n"); for(i=0; i { for(j=0; jprintf("/n/n"); } fun(x); }
进入题库练习
问答题下列给定程序中,函数fun的功能是:传入一个整数m,计算如下公式的值。 t=1/2-1/3-…-1/m 请改正程序中的错误,使它能得出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构! 试题程序: #include <stdlib.h> #include<conio.h> #include <stdio.h> double fun(int m) double t=1.0; int i; for(i=2; i<=m; i++) /******************found*******************/ t=1.0-1/i; /******************found*******************/ ; void main() int m; printf("/nPlease enter 1 integer number:/n"); scanf("%d", &m); printf("/n/nThe result is %1f/n", fun(m));
进入题库练习