计算机类
公务员类
工程类
语言类
金融会计类
计算机类
医学类
研究生类
专业技术资格
职业技能资格
学历类
党建思政类
计算机等级考试(NCRE)
全国计算机应用水平考试(NIT)
计算机软件水平考试
计算机等级考试(NCRE)
全国高校计算机等级考试CCT
行业认证
信息素养
计算机等级考试二级
计算机等级考试一级
网络工程师(计算机等级考试四级)
计算机等级考试二级
数据库工程师(计算机等级考试四级)
计算机等级考试三级
信息安全工程师(计算机等级考试四级)
嵌入式系统开发工程师(计算机等级考试四级)
软件测试工程师(计算机等级考试四级)
C语言程序设计
Python语言程序设计
WPS Office高级应用与设计
C语言程序设计
C++语言程序设计
Java语言程序设计
Visual Basic语言程序设计
Web程序设计
Access数据库程序设计
MySQL数据库程序设计
Visual FoxPro数据库程序设计
办公软件高级应用
问答题给定程序MODI1. C中函数fun的功能是:将字符串中的字符按逆序输出,但不改变字符串中的内容。 例如,若字符串为abcd,则应输出:dcba。 请改正程序中的错误,使它能计算出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构! #include <stdio. h> /**********found**********/ fun(char a) {if (*a) {fun(a+1); /************found************/ printf("%c" *a); } } main( ) { char s[10]="abcd"; printf("处理前字符串=%s/n处理后字符串=", 8); fun(s), printf("/n"); }
进入题库练习
问答题请编写函数fun,其功能是:计算并输出例如,在主函数中从键盘给n输入20后,输出为:s=534.188884。注意:要求n的值大于1但不大于100。部分源程序在文件PROG1.C中。请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。#include<math.h>#include<stdio.h>doublefun(intn){}main(){intn;doubles;printf("/n/nInputn:");scanf("%d",s=fun(n);printf("/n/ns=%f/n/n",s);NONO();}NONO(){/*请在此函数内打开文件,输入测试数据,调用fun函数,输出数据,关闭文件。*/FILE*rf,*wf;intn,i;doubles;rf=fopen("in.dat","r");wf=fopen("out.dat","w");for(i=0;i<10;i++){fscanf(rf,"%d",s=fun(n);fprintf(wf,"%lf/n",s);}fclose(rf);fclose(wf);}
进入题库练习
问答题规定输入的字符串中只包含字母和*号。请编写函数fun,其功能是:将字符串尾部的*号全部删除,前面和中间的*号不动。 例如,字符串中的内容为:“* * * *A*BC*DEF*G* * * * * * *”,删除后,字符串中的内容应当是:“* * * *A*BC*DEF*G”。在编写函数时,不得使用C语言提供的字符串函数。 注意:部分源程序在文件PROG1.C中。 请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。 #include <stdio.h> void fun(char *a) { } main( ) {char s[81];void NONO(); printf("Enter a string:/n");gets(s); fun(s); printf("The string after deleted:/n");puts(s); NONO(); } void NONO() {/*本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。*/ FILE * in,*out; int i; char s[81]; in=fopen("in.dat","r"); out=fopen("out.dat","w"); for(i=0;i<10;i++){ fscanf(in,"%s",s); fun(s); fprintf(out,"%s/n",s); } fclose(in); fclose(out); }
进入题库练习
问答题请编写函数proc(),该函数的功能是:将str所指字符串中ASCII值为偶数的字符删除,串中剩余字符形成一个新串放在t所指的数组中。 例如,若str所指字符串中的内容为aBcdefg789,其中字符B的ASCII码值为偶数……字符8的ASCII码值为偶数……都应当删除,其他依此类推。最后t所指的数组中的内容应是aceg79。 注意:部分源程序给出如下。 请勿改动main()函数和其他函数中的任何内容,仅在函数proc()的花括号中填入所编写的若干语句。 试题程序: #include<stdlib.h> #include<stdio.h> #include<string.h> #include<conio.h> void proc(char*str,char t[]) { } void main() { char str[100],t[100]; system("CLS"); printf("/nPlease enter string S:"); scanf("%s",str); proc(str,t); printf("/nThe result is:%s/n",t); }
进入题库练习
问答题编写函数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的作用是:不断从终端读入整数,由变量a统计大于0的个数,用变量c来统计小于0的个数,当输入0时结束输入,并通过形参pa和pb把统计的数据传回主函数进行输出。 请在程序的下画线处填入正确的内容并把下画线删除,使程序得出正确的结果。 注意:源程序存放在BIANK1.C中。不得增行或删行,也不得更改程序的结构! 试题程序: #include<stdio.h> void fun(int*px,int*PY) { /*********found*********/ int 【1】 ; scanf("%d",&k); /*********found*********/ while 【2】 {if(k>0)a++; if(k<0)b++; /*********found*********/ 【3】 ; } *px=a;*Py=b; } main() { int x,y; fun(&x,&y); printf("x=%d y=%d\n",x,y); }
进入题库练习
问答题给定程序MODI1.C中fun函数的功能是:求出以下分数序列的前n项之和。和值通过函数值返回main函数。例如,若n=5,则应输出:8.391667。请改正程序中的错误,使它能得出正确的结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!1#include<stdio.h>2/**********found**********/3fun(intn)4{inta=2,b=1,c,k;5doubles=0.0;6for(k=1;k<=n;k++)7{s=s+1.0*a/b;8/**********found**********/9c=a;a+=b;b+=c;10}11return(s);}12main()13{intn=5;14printf(''\nThevalueoffunctionis:%1f\n'',fun(n));15}
进入题库练习
问答题请编写函数fun, 函数的功能是: 将放在字符串数组中的M个字符串(每串的长度不超过N), 按顺序合并组成一个新的字符串。函数fun中给出的语句仅供参考。 例如, 字符串数组中的M个字符串为 AAAA BBBBBBB CC 则合并后的字符串的内容应是: AAAABBBBBBBCC。 提示:strcat(a,b)的功能是将字符串b复制到字符串a的串尾上,成为一个新串。 注意:部分源程序在文件PROG1.C中。 请勿改动主函数main和其它函数中的任何内容, 仅在函数fun的花括号中填入你编写的若干语句。 给定源程序: #include #define M 3 #define N 20 void fun(char a[M][N], char *b) { /* 以下代码仅供参考 */ int i; *b=0; } main() { char w[M][N]={"AAAA","BBBBBBB","CC"}, a[100]; int i ; printf("The string:/n"); for(i=0; i printf("/n"); fun(w,a); printf("The A string:/n"); printf("%s",a);printf("/n/n"); NONO(); }
进入题库练习
问答题给定程序中,函数fun的功能是:统计出带有头结点的单向链表中结点的个数,存放在形参n所指的存储单元中。 请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。 注意:源程序存放在 下的BLANK1.C中。 不得增行或删行,也不得更改程序的结构! #include<stdio.h> #include<stdlib.h> #define N 8 typedef struct list { int data; struct list *next; } SLIST; SLIST *creatlist(int *a); void outlist(SLIST*); void fun(SLIST *h, int *n) {SLIST *p; /**********found**********/ ______=0; p=h->next; while(p) { (*n)++; /**********found**********/ p=p->______; } } main() { SLIST *head; int a[N]={12,87,45,32,91,16,20,48}, num; head=creatlist(a); outlist(head); /**********found**********/ fun(______, printf("/nnumber=%d/n", num); } SLIST *creatlist(int a[]) {SLIST *h, *p, *q; int i; h=p=(SLIST *)malloc(sizeof(SLIST)); for(i=0; i<N; i++) {q=(SLIST *)malloc(sizeof(SLIST)); q->data=a[i]; p->next=q; p=q; } p->next=0; return h; } void outlist(SLIST *h) {SLIST *p; p=h->next; if(p==NULL)printf("The list is NULL!/n"); else {printf("/nHead"); do {printf("->%d", p->data); p=p->next;} while(p!=NULL); printf("->End/n"); } }
进入题库练习
问答题请编写函数fun,它的功能是计算下列级数和,和值由函数值返回。例如,当n=10,x=0.3时,函数值为1.349859。注意:部分源程序在文件PROG1.C中。请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。试题程序:#include<conio.h>#include<stdio.h>#include<math.h>#include<stdlib.h>double fun(double x,int n){}void main(){ FILE *wf; system("CLS"); printf("%f",fun(0.3,10));/*******************/ wf=fopen("out.dat","W"); fprintf(wf,"%f",fun(0.3,10)); fclose(wf);/*******************/}
进入题库练习
问答题编写函数fun,其功能是:根据以下公式计算s,并将计算结果作为函数值返回,n通过形参传人。例如,若n的值为11时,函数的值为1.833333。注意:部分源程序给出如下。请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。试题程序:#include<stdlib.h>#include<conio.h>#include<stdio.h>#include<string.h>floatfun(intn)voidmain()intn;floats;system("CLS");printf("/nPleaseenterN:");scanf("%d",s=fun(n);printf("Theresultis:%f/n",s);
进入题库练习
问答题请编写函数fun, 函数的功能是: 移动一维数组中的内容; 若数组中有n个整数, 要求把下标从0到p(含p,p小于等于n-1)的数组元素平移到数组的最后。 例如, 一维数组中的原始内容为: 1,2,3,4,5,6,7,8,9,10; p的值为3。移动后, 一维数组中的内容应为: 5,6,7,8,9,10,1,2,3,4。 注意:部分源程序在文件PROG1.C中。请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。 给定源程序: #include #define N 80 void fun(int *w, int p, int n) { } main() { int a[N]={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15}; int i,p,n=15; printf("The original data:/n"); for(i=0; iprintf("/n/nEnter p: ");scanf("%d", fun(a,p,n); printf("/nThe data after moving:/n"); for(i=0; iprintf("/n/n"); NONO(); }
进入题库练习
问答题下列给定程序中,函数fun的功能是:先把形参a所指数组中的最小值放在元素a[0]中,把a所指数组中的最大值放在a[1]元素中;再把a所指数组元素中的次小值放在a[2]中,把a所指数组元素中的次大值放在a[3],依次类推。 例如,若a所指数组中的数据最初排列为:9,1,4,2,3,6,5,8,7;则按规则移动后,数据排列为:1,9,2,8,3,7,4,6,5。形参n中存放a所指数组中数据的个数。 规定fun函数中的max存放当前所找的最大值,px存放当前所找最大值的下标。 请在下划线处填入正确的内容并将下划线删除,使程序得出正确的结果。 注意:部分源程序给出如下。 不得增行或删行,也不得更改程序的结构! 试题程序: #include<stdio.h> #define N 9 void fun(int a[],int n) int i,j,max,min,px,pn,t; for(i=0;i<n-1;i+=2) /********found********/ max=min= (1) ; px=pn=i; for(j=i+1;j<n;j++) /********found********/ if(max< (2) ) (max=a[j];px=j;) /********found********/ if(min> (3) ) (min=a[j];pn=j;) if(pn!=i) (t=a[i]=a[i]=min;a[pn]=t; if(px=i)px=pn; if(px!=i+1) (f=a[i+1];a[i+1]=max; a[px]=t;) void main() int b[N]=(9,1,4,2,3,6,5,8,7),i; printf("/nThe original data:/n"); for(i=0;i<N;i++) printf("%4d",b[i]); printf("/n"); fun(b,N); printf("/nThe data after moving:/n"); for(i=0;i<N;i++) printf("%4d",b[i]); printf("/n");
进入题库练习
问答题编写程序,实现矩阵(3行、3列)的转置(即行列互换)。 例如,若输入下面的矩阵: 100 200 300 400 500 600 700 800 900则程序输出: 100 400 700 200 500 800 300 600 900 注意:部分源程序在文件PROGI.C中。 请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。 试题程序:#include < stdio.h >#include < conio.h >#include < stdlib.h >voici fun (int array[3][3]) {}void main () { FILE *wf;int i,j,int array [3] [3] = { {100,200,300 },{400,500,600 }, {700,800,900 } };system "'CLS ") ;for(i=0;i < 3;i++){for(j=0;j < 3;j++)printf ("% 7d ",array[i][j]):printf ("/n ") ;}fun (array) ;printf ("converted array:/n ") ;for(i=0;i < 3;i++){for(j=0; j < 3;j++)printf ( "%7d ", array [ i][j]);printf ("/n ") :}/*********found*********/wf = fopen ("out.dat", "w") ;for(i=0;i < 3;i++){for(j=0;j < 3;j++)fprintf ( wf, "% 7d ",array[ i] [ j ] ) ; fprintf (wf, "/n") ; fclose (wf);/*********found*********/}
进入题库练习
问答题给定程序MODI1.C中函数fun的功能是:为一个偶数寻找两个素数,这两个素数之和等于该偶数,并将这两个素数通过形参指针传回主函数。 请改正函数fun中指定部位的错误,使它能得出正确的结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!1 #include<stdio.h>2 #include<math.h>3 void fun(int a,int *b,int *c)4 { int i,j,d,y;5 for(i=3;i<=a/2;i=i+2) {6 /**********found**********/7 y=1;8 for(j=2;j<=sqrt((double)i);j++)9 if(i%j==0)y=0;10 if(y==1){11 /**********found**********/12 d==a-i;13 for(j=2;j<=sqrt((double)d);j++)14 if(d%j==0)y=0;15 if(y==1)16 {*b=i;*c=d;}17 }18 }19 }20 main()21 { int a,b,c;22 do23 {printf(''\nInput a:''); scanf(''%d'',&a);}24 while(a%2);25 fun(a,&b,&c);26 printf(''\n\n%d=%d+%d\n'',a,b,c);27 }
进入题库练习
问答题请编写函数fun,该函数的功能是:判断字符串是否为回文,若是,则函数返回1,主函数中输出”YES”,否则返回0,主函数中输出” NO”。回文是指顺读和倒读都一样的字符串。 例如,字符串LEVEL是回文,而字符串123312就不是回文。 注意:部分源程序在文件PROG1.C中。 请勿改动主函数maln和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。试题程序:#include < stdio .h >#define N 80int fun (char * str){main () { char s[N] ; FILE * out; char * test[] ={"1234321","123421", "123321", "abcdCBA" } ; int i; printf ("Enter a string : "); gets (s) ; printf ("/n/n") ; puts (s) ; if (fun (s)) printf ("YES/n") ; else printf ("NO/n") ;/******************/ out = fopen ("out.dat"'"w") ; if (fun (test[i] )) fprintf (out, "YES/n") ; else fprintf (out, "NO/n") ; fclose (out) ;/******************/ }
进入题库练习
问答题请编写函数fun,其功能是分别统计形参t所指二维数组中字母A和C的个数。 注意:请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。 试题程序: #include<stdio.h> #include<stdlib.h> #define M 14 void NONO(); void fun(char(*t)[M],int*a,int*c) { } void get(char(*s)[M]) {int i,j; for(i=0;i<M;i++) {for(j=0;j<M;j++) {s[i][j]=65+rand()%12;printf("%c",s[i][j]);} printf("/n"); } } main() {char a[M][M]; int x,y; get(a); fun(a, printf("A=%d C=%d/n",x,y); NONO(); } void NONO() {/*本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。*/ FILE *fp,*wf; int i,j,x,y; char a[M][M]; fp=fopen("c:/test/in.dat","r"); wf=fopen("c:/test/out.dat","w"); for(i=0;i<M;i++) {for(j=0;j<M;j++) {fscanf(fp,"%c",} } fun(a, fprintf(wf,"A=%d/n",x); fprintf(wf,"C=%d/n",y); fclose(fp); fclose(wf);
进入题库练习
问答题请编写函数fun,其功能是求出数组的最大元素在数组中的下标并存放在k所指的存储单元中。 例如,输入如下整数:876 675 896 101 301 401 980 431 451 777 则输出结果为:6,980 注意:部分源程序在文件PROG1.C文件中。 请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。1 #include<stdio.h>2 void fun(int *s,int t,int *k)3 {4 }5 main()6 {7 int a[10]={876,675,896,101,301,401,980,431,451,777},k;void NONO();8 fun(a,10,&k);9 printf(''%d,%dkn'',k,a[k]);10 NONO();11 }12 void NONO()13 {/*本函数用于打开文件,输入测试数据,调用fun函数,输出数据,关闭文件。*/14 int a[10],i,k,j;15 FILE *rf,*wf;16 rf=fopen(''in.dat'',''r'');17 wf=fopen(''out.dat'',''w'');18 for(i=0;i<10;i++) {19 for(j=0;j<10;j++)fscanf(rf,''%d'',21 fprintf(wf,''%d,%d\n'',k,a[k]);22 }23 fclose(rf);24 fclose(wf);}
进入题库练习
问答题下列给定程序中函数fun的功能是:统计substr所指的字符串在str所指的字符串中出现的次数。 例如,若字符串为aass 1kaaas,子字符串为as,则应输出2。 请改正程序中的错误,使它能得出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构! 试题程序: #include <stdio.h> int fun(char *str, char *substr) { int i, j, k, num=0; /********** found**********/ for(i=0, str[i], i++) for(j=i, k=0; substr[k]==str[j]; k++, j++) /********** found**********/ If(substr[k+1]=='\0') { num++; break; } return num; } main() { char str[80], substr[80]; printf(Input a string:); gets(str); printf(Input a substfing: ); gets(substr); printf(%d\n, fun(str, substr)); }
进入题库练习
问答题函数fun的功能是进行字母转换。若形参ch中是小写英文字母,则转换成对应的大写英文字母;若ch中是大写英文字母,则转换成对应的小写英文字母;若是其它字符则保持不变;并将转换后的结果作为函数值返回。 请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。 注意:源程序存放在考生文件夹下的BLANK1.C中。不得增行或删行,也不得更改程序的结构! 给定源程序: #include #include char fun(char ch) { /**********found**********/ if ((ch>='a')___1___(ch<='z')) return ch -'a' + 'A'; if ( isupper(ch) ) /**********found**********/ return ch +'a'-___2___ ; /**********found**********/ return ___3___; } main() { char c1, c2; printf("/nThe result :/n"); c1='w'; c2 = fun(c1); printf("c1=%c c2=%c/n", c1, c2); c1='W'; c2 = fun(c1); printf("c1=%c c2=%c/n", c1, c2); c1='8'; c2 = fun(c1); printf("c1=%c c2=%c/n", c1, c2); }
进入题库练习