计算机类
公务员类
工程类
语言类
金融会计类
计算机类
医学类
研究生类
专业技术资格
职业技能资格
学历类
党建思政类
计算机等级考试(NCRE)
全国计算机应用水平考试(NIT)
计算机软件水平考试
计算机等级考试(NCRE)
全国高校计算机等级考试CCT
行业认证
信息素养
计算机等级考试二级
计算机等级考试一级
网络工程师(计算机等级考试四级)
计算机等级考试二级
数据库工程师(计算机等级考试四级)
计算机等级考试三级
信息安全工程师(计算机等级考试四级)
嵌入式系统开发工程师(计算机等级考试四级)
软件测试工程师(计算机等级考试四级)
C语言程序设计
Python语言程序设计
WPS Office高级应用与设计
C语言程序设计
C++语言程序设计
Java语言程序设计
Visual Basic语言程序设计
Web程序设计
Access数据库程序设计
MySQL数据库程序设计
Visual FoxPro数据库程序设计
办公软件高级应用
问答题编程题 请编写一个函数fun(),它的功能是:比较两个字符串的长度,(不得调用C语言提供的求字符串长度的函数),函数返回较短的字符串。若两个字符串长度相等,则返回第1个字符串。 例如,输入nanjing nanchang (为回车键),函数将返回nanjing。 注意:部分源程序给出如下。 请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。 试题程序: #include char *fun(char *s, char *t) { } main() { char a[20],b[10],*p,*q; int i; printf("Input 1th string: "); gets(a); printf("Input 2th string: "); gets(b); printf("%s",fun(a,b)); }
进入题库练习
问答题函数fun的功能是:将两个两位数的正整数a、b合并成一个整数放在c中。合并的方式是:将a数的十位和个位数依次放在c数的千位和十位上,b数的十位和个位数依次放在c数的百位和个位上。例如,当a=45,b=12时,调用该函数后C=4152。注意:部分源程序给出如下。请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。试题程序:#include<conio.h>#include<stdio.h>void fun(int a,int b,long*c){}main(){ int a,b; long c; printf("Input a,b:"); scanf("%d%d",&a,&b); fun(a,b,&C); printf("The result is:%d\n",c);}
进入题库练习
问答题 学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组s中,请编写函数fun,它的功能是:把低于平均分的学生数据放在b所指的数组中,低于平均分的学生人数通过形参n传回,平均分通过函数值返回。 注意:部分源程序在文件PROG1.C中。 请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。 #include <stdio.h> #define N 8 typedef struct { char num[10]; double s; } STREC; double fun(STREC *a,STREC *b,int *n) { } 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, printf("The %d student data which is lower than %7.3f:/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;i<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;i<n;i++) fprintf(out,"%4.1f/n",h[i].s); fclose(out); }
进入题库练习
问答题请编写一个函数int fun(int *s,int t,int *k),用来求出数组的最大元素在数组中的下标并存放在k所指的存储单元中。 例如,输入如下整数: 876 675 896 101 301 401 980 431 451 777 则输出结果为6,980。 注意:部分源程序给出如下。 请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。 试题程序: #include <conio.h> #include <stdio.h> int fun(int *s,int t,int *k) main() int a[10]= 876,675,896,101,301,401, 980,431,451,777,k; clrscr(); fun(a, 10, printf("%d, %d/n ", k, a[k]);
进入题库练习
问答题请编写函数fun(),它的功能是:实现两个字符串的连接(不使用库函数strcat()),即把p2所指的字符串连接到p1所指的字符串后。 例如,分别输入下面两个字符串: FirstString -- SecondString 则程序输出: FirstString -- SecondString [注意] 部分源程序给出如下。 请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。 [试题源程序] #include<stdio.h> #include<conio.h> void fun(char p1[], char p2[]) { } main() { char s1[80], s2[40]; clrscr(); 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); }
进入题库练习
问答题已知一个数列从第0项开始的前三项分别为0,0,1,以后的各项都是其相邻的前三项之和。给定程序MODI1.C中函数fun的功能是:计算并输出该数列前n项的平方根之和。n的值通过形参传入。 例如,当n=10时,程序的输出结果应为:23.197745。 请改正程序中的错误,使程序能输出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!1 #include<stdio.h>2 #include<math.h>3 /**********found**********/4 fun(int n)5 {double sum,s0,s1,s2,s;int k;6 sum=1.0;7 if(n<=2)sum=0.0;8 s0=0.0;s1=0.0;s2=1.0 ;9 for(k=4;k<=n;k++)10 { s=s0+s1+s2;11 sum+=sqrt(s);12 s0=s1;s1=s2;s2=s;13 }14 /**********found**********/15 return sum16 }17 main()18 { int n;19 printf(''Input N='');20 scanf(''%d'',&n);21 printf(''%f\n'',fun(n));22 }
进入题库练习
问答题下列给定程序中,函数fun的功能是:在形参s所指字符串中的每个数字字符之后插入一个*号。例如,形参s所指的字符串为“def35adh3kisdf7”,执行后结果为“def3*5*adh3*klsdf7*”。 注意:部分源程序给出如下。 不得增行或删行,也不得更改程序的结构! 试题程序: #include<sedio.h> void fun(char*s) int i,j,n; for(i=0;s[i]='/0';i++) /********found********/ if(s[i]>='0' (1) s[i](='9') n=0; /********found********/ while(S[i+1+n]!* (2) ) n++; for(j=i+n+1;j>i;j--) /********found********/ s[j+1]= (3) ; s[j+1]='*' i=i+1; main() char s[60]="def35adh3kisdf7"; printf("/nThe original string is:%s/n",s); fun(s); printf(/nThe result is:%s/n",s);
进入题库练习
问答题下列给定程序的功能是:读入一个英文文本行,将其中每个单词的第一个字母改成大写,然后输出此文本行(这里"单词"是指由空格隔开的字符串)。例如,若输入"I ama student to takethe examination",则应输出"I Am A Student To TakeThe Examination"。 请改正程序中的错误,使程序能得出正确的结果。 注意:部分源程序在文件MODI1.C中,不要改动maln函数,不得增行或删行,也不得更改程序的结构! 试题程序:#include < stdlib.h >#include < string.h >#include < conio.h >#include < ctype.h >#include < stdio.h >#include < string.h >/*********found*********/void upfst (char p){ int k=0;for(;*P;P++) if(k) { {if(*P=='') k=0;} else {if(*P!='') { k =1; *p = toupper (*p) ; } }}void main () { char chrstr[ 81 ] ; system ("CLS") ; printf ( " / nPleaSe enter an English text line: ") ; gets (chrstr) ; printf ( " /nBofore changing: /n %s ", chrstr) ; upfst (clhrstr) ; printf ( " /nAfter changing: /n%s /n", chrstr) ;}
进入题库练习
问答题请编写函数fun,函数的功能是:将大于形参m且紧靠m的k个素数存入xx所指的数组中。例如,若输入17,5,则应输出:19,23,29,31,37。 注意:部分源程序在文件PROG1.C文件中。 请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。#include <stdio.h>void fun (int m, int k, int xx [ ] ){}main (){int m, n, zz[1000] ;voidNONO (); printf("/nPlease enter two integers:");scanf("%d %d", fun(m, n, zz) ;for(m = 0 ; m < n ; m++) printf("%d ", zz[m]);printf("/n");NONO();}void NONO (){/* 本函数用于打开文件,输入测试数据,调用fun函数,输出数据,关闭文件。*/int m, n, zz[1000], i ; FILE *rf, *wf ; rf = fopen("in.dat","r") ; wf = fopen("out.dat", "w"); for(i = 0 ; i < 10 ; i++) { fscanf(rf, "%d%d", fun(m, n, zz);for(m = 0 ; m < n ; m++)fprintf (wf, "%d ", zz[m]);fprintf(wf, "/n"); }fclose (rf); fclose(wf); }
进入题库练习
问答题给定程序MODI1.C中函数fun的功能是:求出s所指字符串中最后一次出现的t所指子字符串的地址,通过函数值返回,在主函数中输出从此地址开始的字符串:若未找到,则函数值为NULL。 例如,当字符串中的内容为“abcdabfabcdx”,t中的内容为“ab”时,输出结果应是“abcdx”。 当字符串中的内容为“abcdabfabcdx”,t中的内容为“abd”时,则程序输出未找到信息“not be found!”。 请改正程序中的错误,使它能得出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构! #include #include char * fun (char *s, char *t) { char *p, *r, *a; /************found************/ a = Null; while (*s) { p = s; r = t; while (*r) /************ found************/ if (r == p) { r++; p++;} else break; if (*r == '/0') a = s; - s++; } return a ; } main() { char s[100], t[100], *p; printf("/nPlease enter string S :"); scanf("%s", s); printf ("/nPlease enter substring t :"); scanf("%s", t); p = fun(s, t); if (p) printf("/nThe result is : %s/n", p); else printf("/nNot found !/n"); }
进入题库练习
问答题编写函数fun,其功能是:将S所指字符串中除了下标为奇数同时ASCII码值也为奇数的字符之外,其余的所有字符全部删除,串中剩余字符所形成的一个新串放在t所指的数组中。 例如,若S所指字符串的内容为 “ABCDEFGl2345”,其中字符A的ASCII码值为奇数,但所在元素的下标为偶数,因此需要删除;而字符1的ASCII码值为奇数,所在数组中的下标也为奇数,因此不应当删除,其他依此类推。最后t所指数组中的内容应为“135”。 注意:部分源程序给出如下。 请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。 试题程序:#include < conio.h >#include < stdio.h >#include < string.h >void fun(char * s,char t[]){}msin(){char s[100],t[100]; printf("inPlease enter string s:");Scanf("%s",s); fun(s,t);printf("knThe result is:%s/n",t);}
进入题库练习
问答题给定程序中,函数fun的功能是:求出形参SS所指字符串数组中最长字符串的长度,将其余字符串右边用字符 “*”补齐,使其与最长的字符串等长。ss所指字符串数组中共有M个字符串,且串长 #include #define M 5 #define N 20 void fun (char (*ss) [N] ) { int i,j,n. len=0; { len=strlen (ss [i] ) ; if (i==0) n=len; if (len>n) n=len; } for(i=0;i
进入题库练习
问答题下列给定程序中,函数fun的功能是:在带头结点的单向链表中,查找数据域中值为ch的结点。找到后通过函数值返回该结点在链表中所处的顺序号;若不存在值为ch的结点,函数返回0值。 请在程序的下画线处填入正确的内容并将下画线删除,使程序得出正确的结果。 注意:部分源程序给出如下。 不得增行或删行,也不得更改程序的结构! 试题程序: #include<stdio.h> #include<stdlib.h> #define N 8 typedef struer liSt { int data; struct list *next; }SLIST; SLIST*creatlist(char*); void outlist(SLIST*); int fun(SLIST*h,char ch) { SLIST*P; int n=0; P=h->next ; /*********found*********/ while(p!= 【1】 ) { n++; /*********found*********/ if(P->data==ch) return 【2】 ; else P=P->next; } return 0; } main() { SLIST*head;int k;char ch;char a[N]={'m','p','g','a','w','x','r','d'}; head=creatlist(a); outliSt(head); printf("Enter a letter:"); scanf("%c",&ch); /*********found*********/ k=fun( 【3】 ); if(k==0) printf("\nNot found!\n"); else printf("The sequence number is:%d\n",k); } SLIST*creatlist(char*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("\nThe list is NULL!\n"); else {printf("\nHead"); do { printf("->%C", p->data);p=p->next;} while(P!=NULL); printf("->End\n"”); } }
进入题库练习
问答题请编写一个函数fun,它的功能是:将SS所指字符串中所有下标为奇数位置的字母转换为大写(若该位置上不是字母,则不转换)。 例如,若输入“abc4Efg”,则应输出”aBc4EFg”。 注意:请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。 试题程序:#include<conio.h>#include<stdio.h>#include<string.h>#include<stdlib.h>void fun(char*ss){}void main(){ FILE*wf; char tt[81],s[81]=“ab04Efg”; system(“CLS”); printf(“\nPlease enter an string within 80characters:\n”); gets(tt); printf(“\nAfter chang,the string\n%s”。tt); fun(tt); printf(“\nbecomes\n%s\n”,tt);/******************/wf=fopen(“out.dat”,”W”);fun(s);fprintf(wf,“%s”,s);fclose(wf);/******************/
进入题库练习
问答题程序通过定义学生结构体数组,存储若干名学生的学号、姓名和三门课的成绩。函数fun的功能是:将存放学生数据的结构体数组,按姓名的字典序(从小到大)排序。 请在下画线处填入正确的内容并将下画线删除,使程序得出正确的结果。 注意:不得增行或删行,也不得更改程序的结构! 试题程序: #include<stdio.h> #include<string.h> struct student{ long sno; char name[10]; float score[3]; }; void fun(struct student a[],int n) { /******found******/ 【1】t; int i,j; /******found******/ for(i=0;i<【2】;i++) for(j=i+1;j<n;j++) /******found******/ if(strcmp(【3】)>0) {t=a[i];a[i]=a[j];a[j]=t;) } main() { struct student s[4]={{10001,"ZhangSan”,95,80,88),{10002,"LiSi",85,70,78),{10003,"CaoKai",75,60,88},{10004,"FangFang",90,82,87}}; int i,j; printf("The original data:\n"); for(j=0;j<4;j++) { printf("\nNo:%ld Name:%一8sScores:",s[j].sno,s[j].name); for(i=0;i<3;i++) printf("%6.2f",s[j].score[i]); printf("\n"); } fun(s,4); printf("The data after sorting:\n"); for(j=0;j<4;j++) { printf("\nNo:%ld Name:%一8sScores:”,s[j].sno,s[j].name); for(i=0;i<3;i++) printf("%6.2f",s[j].score[i]); printf("\n"); } }
进入题库练习
问答题学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组s中,请编写函数fun,它的功能是:函数返回指定学号的学生数据,指定的学号在主函数中输入。若没找到指定学号,在结构体变量中给学号置空串,给成绩置-1,作为函数值返回。(用于字符串比较的函数是strcmp)。 注意:部分源程序在文件PROG1.C中。 请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。 #include #include #define N 1 6 typedef struct { char num[10]; int s; } STREC ; STREC fun(STREC*a,char*b) { } main() {STREC s[N]={{"GA005",85},{"GA003",76}, {"GA002",69),{"GA004",85),{"GA001",91), {"GA007",72),{"GA008",64},{"GA006",87}, {"GA015",85),{"GA013",91},{"GA012",64), {"GA014",91),{"GA011",77),{"GA017",64), {"GA018",64),{"GA016",72)}; STREC h; char m[10]; int i;FTLE*out;; printf("tThe original data:/n"); for(i=0; i
进入题库练习
问答题编写程序, 实现矩阵(3行3列)的转置(即行列互换) 例如, 输入下面的矩阵: 100 200 300 400 500 600 700 800 900 程序输出: 100 400 700 200 500 800 300 600 900 注意: 部分源程序在文件PROG1.C中。 请勿改动主函数main和其它函数中的任何内容, 仅在函数fun的花括号中填入你编写的若干语句。 给定源程序: #include int fun(int array[3][3]) { } main() { int i,j; int array[3][3]={{100,200,300}, {400,500,600}, {700,800,900}}; for (i=0;i<3;i++) { for (j=0;j<3;j++) printf("}",array[i][j]); printf("/n"); } fun(array); printf("Converted array:/n"); for (i=0;i<3;i++) { for (j=0;j<3;j++) printf("}",array[i][j]); printf("/n"); } NONO(); }
进入题库练习
问答题下列给定程序中,函数fun的功能是:将s所指字符串中的所有数字字符移到所有非数字字符之后,开保持数字字符串和非数字字符串原有的次序。例如,s所指的字符串为“def35adh3kjsdf7”,执行后结果为“defadhajsdf3537”。请在程序的下划线处填人正确的内容并将下划线删除,使程序得出正确的结果。注意:部分源程序在文件BLANK1.C中。不得增行或删行,也不得更改程序的结构! #include<stdio.h> void fun(char*s) { int i,j=0,k=0;char tl[80],t2[80]; for(i=0;s[i]!=‘\0’;i++) if(s[i]>=D‘&&s[i]<=9’) { /****************ound******************/ t2[j]=s[i];[1]; } else t1[k++]=s[i]; t2[j]=0;t1[k]=0; /******************found******************/ for(i=0;i<k;i++)[2]; /******************found******************/ for(i=0;i<一[3];i++)s[k+i]:t2[i]; } main() { char s[80]=“ba3a54j7sd567sdffs”; printf(“\nThe original string is:%s\n”,s); fun(s); printf(“\nThe result is:%s\n”,s); }
进入题库练习
问答题给定程序MODI1.C中函数fun的功能是:求出以下分数序列的前n项之和。和值通过函数值返回main函数。例如,n=10,则输出16.479905。/************found************/fun(intn){inta,b,c,k;doubles;s=0.0;a=2;b=1;for(k=1;k<=n;k++){/***********found************/s=s+(Double)a/b;}}main(){intn=10;clrscr();printf("/nThevalueoffunctionis:%lf/n",fun(n));}
进入题库练习
问答题请编写函数fun,函数的功能是将大于形参m且紧靠m的k个素数存入xx所指的数组中。函数prime判断一个数是否为素数,是返回1,否则返回0。例如,若输入17,5,则应输出19,23,29,31,37。函数fun中给出的语句仅供参考。 注意:部分源程序存在文件PROG1.C中。 请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入编写的若干语句。 给定源程序如下。 #include<stdio.h> int prime(int n) { int m; for(m=2;m<n;m++) if(n%m==0) return 0; return 1; } void fun(int m,int k,int xx[]) { /*以下代码仅供参考*/ int j=0,t=m+1; while(j<k) { /*按题目要求完成以下代码*/ } } main() { int m,n,zz[1000]; printf("/nPlease enter two integers:"); scanf("%d%d", fun(m,n,zz); for(m=0;m<n;m++) fprintf("%d",zz[m]); printf("/n"); }
进入题库练习