计算机类
公务员类
工程类
语言类
金融会计类
计算机类
医学类
研究生类
专业技术资格
职业技能资格
学历类
党建思政类
计算机等级考试(NCRE)
全国计算机应用水平考试(NIT)
计算机软件水平考试
计算机等级考试(NCRE)
全国高校计算机等级考试CCT
行业认证
信息素养
计算机等级考试二级
计算机等级考试一级
网络工程师(计算机等级考试四级)
计算机等级考试二级
数据库工程师(计算机等级考试四级)
计算机等级考试三级
信息安全工程师(计算机等级考试四级)
嵌入式系统开发工程师(计算机等级考试四级)
软件测试工程师(计算机等级考试四级)
C语言程序设计
Python语言程序设计
WPS Office高级应用与设计
C语言程序设计
C++语言程序设计
Java语言程序设计
Visual Basic语言程序设计
Web程序设计
Access数据库程序设计
MySQL数据库程序设计
Visual FoxPro数据库程序设计
办公软件高级应用
填空题 甲、乙、丙、丁4人同时开始放鞭炮,甲每隔t1秒放一次,乙每隔t2秒放一次,丙每隔t3秒放一次,丁每隔t4秒放一次,每人各放n次。函数fun的功能是根据形参炸响,只算一次响声,第一次响声是在第0秒。 例如,若t1=7,t2=5,t3=6,t4=4,n=10,则总共可听到28次鞭炮声。 请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。 注意:部分源程序给出如下。 不得增行或删行,也不得更改程序的结构! 试题程序: #include<stdio.h> /**********found**********/ #define OK(i, t, n((______%t==0)(i/t<n)) int fun(int t1, int t2, int t3, int t4, int n) {int count, t, maxt=t1; if(maxt<t2)maxt=t2; if(maxt<t3)maxt=t3; if(maxt<t4)maxt=t4; count=1; /*给count赋初值*/ /**********found**********/ for(t=1; t<maxt*(n-1); ______) { if(OK(t, t1, n)||OK(t, t2, n)||OK(t, t3, n)||OK(t, t4, n)) count++; } /**********found**********/ return______; } main() {int t1=7, t2=5, t3=6, t4=4, n=10, r; r=fun(t1, t2, t3, t4, n); printf('The sound:%d\n', r); }
进入题库练习
填空题 给定程序中,函数fun的功能是:对形参ss所指字符串数组中的M个字符串按长度由短到长进行排序。ss所指字符串数组中共有M个字符串,且串长<N。 请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。 注意:源程序存放在下的BLANK1.C中。 不得增行或删行,也不得更改程序的结构! #include<stdio.h> #include<string.h> #define M 5 #define N 20 void fun(char(*ss)[N]) {int i, j, k, n[M]; char t[N]; for(i=0; i<M; i++) n[i]=strlen(ss[i]); for(i=0; i<M-1; i++) {k=i; /**********found**********/ for(j=______; j<M; j++) /**********found**********/ if(n[k]>n[j])______; if(k!=i) {strcpy(t, ss[i]); strcpy(ss[i], ss[k]); /**********found**********/ strcpy(ss[k], ______); n[k]=n[i]; } } } main() {char ss[M][N]={'shanghai', 'guangzhou', 'beijing', 'tianjing', 'cchongqing'); int i; printf('\nThe original strings are:\n'); for(i=0; i<M, i++)printf('%s\n', ss[i]); printf('\n'); fun(ss); printf('\nThe result:\n'); for(i=0; i<M; i++)printf('%s\n', ss[i]); }
进入题库练习
填空题 下列给定程序中,函数fun的功能是:把形参a所指数组中的奇数按原顺序依次存放到a[0]、a[1]、a[2]...中,把偶数从数组中删除,奇数个数通过函数值返回。 例如,若a所指数组中的数据最初排列为:9,1,4,2,3,6,5,8,7,删除偶数后a所指数组中的数据为:9,1,3,5,7,返回值为5。 请在下划线处填入正确的内容并将下划线删除,使程序得出正确的结果。 注意:部分源程序给出如下。 不得增行或删行,也不得更改程序的结构! 试题程序: #include<stdio.h> #define N 9 int fun(int a[],int n) {int i,j; j=0; for(i=0;i<n;i++) /*****************found*****************/ if(a[i]%2==______) { /*****************found*****************/ a[j]=a[i];______; } /*****************found*****************/ return______; } main() {int b[N]={9,1,4,2,3,6,5,8,7},i,n; printf('\nThe original data:\n'); for(i=0;i<N;i++) printf('%4d',b[i]); printf('\n'); n=fun(b,N); printf('\nThe number of odd:%d\n',n); printf('\nThe odd number:\n'); for(i=0;i<n;i++) printf('%4d',b[i]); printf('\n'); }
进入题库练习
填空题 请补充函数proc(),该函数的功能是:删除字符数组中小于指定字符的字符,指定字符从键盘输入,结果仍保存在原数组中。 例如,输入“abcdefghij”,指定字符为“f”,则结果输出“fghij”。 注意:部分源程序如下。 请勿改动main()函数和其他函数中的任何内容,仅在函数proc()的横线上填入所编写的若干表达式或语句。 试题程序: #include<stdlib.h> #include<stdio.h> #define M 80 void proc(char str[],char ch) { int i=0,j=0; while(str[i]) { if(str[i]<ch) ______; else { ______; i++; } } ______; } void main() { char str[N],ch; system('CLS'); printf('\n Input a string:\n'); gets(str); printf('\n***original string***\n'); puts(str); printf('\n Input a charactor:\n'); scanf('%c',ch); proc(str,ch); printf('\n***new string***\n'); puts(str); }
进入题库练习
填空题 下列给定程序中,函数fun的功能是:计算N×N矩阵的主对角线元素和反向对角线元素之和,并作为函数值返回。要求先累加主对角线元素中的值,再累加反向对角线元素中的值。 例如,若N=3,有下列矩阵: 1 2 3 4 5 6 7 8 9 首先累加1、5、9,然后累加3、5、7,函数返回值为30。 请在下划线处填入正确的内容并将下划线删除,使程序得出正确的结果。 注意:部分源程序给出如下。 不得增行或删行,也不得更改程序的结构! 试题程序: #include<stdio.h> #define N 4 fint un(int t[][N],int n) { int i,sum; /*****************found*****************/ ______; for(i=0;i<n;i++) /*****************found*****************/ sum+=______; for(i=0;i<n;i++) /*****************found*****************/ sum+=t[i][n-i-______; return sum; } main() { int t[][N]={21,2,13,24,25,16,47,38,29,11,32,54,42,21,3,10}i,j; printf('\nThe original data:\n'); for(i=0;i<N;i++) { for(j=0;j<N;j++) printf('%4d',t[i][j]); printf('\n');} printf('The result is:%d',fun(t,N)); }
进入题库练习
填空题 给定程序中,函数fun的功能是建立一个N×N的矩阵。矩阵元素的构成规律是:最外层元素的值全部为1;从外向内第2层元素的值全部为2:第3层元素的值全部为3,…依次类推。例如,若N=5,生成的矩阵为: 1 1 1 1 1 1 2 2 2 1 1 2 3 2 1 1 2 2 2 1 1 1 1 1 1 请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。 注意:源程序存放在下的BLANK1.C中。 不得增行或删行,也不得更改程序的结构! #include <stdio.h> #define N 7 /**********found**********/ void fun(int(*a)______) {int i, j, k, m; if(N%2==0) m=N/2; else m=N/2+1; for(i=0; i<m; i++) { /**********found**********/ for(j=______; j<N-i; j++) a[i][j]=a[N-i-1][j]=i+1; for(k=i+1; k<N-i; k++) /**********found**********/ a[k][i]=a[k][N-i-1]=______; } } main() {int x [N][N]={0}, i, j; fun(x); printf('\nThe result is:\n'); for(i=0; i<N; i++) { for(j=0; j<N; j++) printf('%3d', x[i][j]); printf('\n'); } }
进入题库练习
填空题 给定程序中,函数fun的功能是:计算形参x所指数组中N个数的平均值(规定所有数均为正数),将所指数组中大于平均值的数据移至数组的前部,小于等于平均值的数据移至x所指数组的后部,平均值作为函数值返回,在主函数中输出平均值和移动后的数据。 例如,有10个正数:46、30、32、40、6、17、45、15、48、26,平均值为30.500000。 移动后的输出为:46、32、40、45、48、30、6、17、15、26。 请在程序的下画线处填入正确的内容并把下画线删除,使程序得出正确的结果。 注意:不得增行或删行,也不得更改程序的结构! 试题程序: #include <stdlib.h> #include <stdio.h> #define N 10 double fun(double * x) {int i, j; double s,av,y[N]; s=0; for(i=0;i<N;i++)s=s+x[i]; /*********found*********/ av=______; for(i=j=0;i<N;i++) if(x[i]>av){ /*********found*********/ y[______]=x[i]; x[i]=-1;} for(i=0;i<N;i++) /*********found*********/ if(x[i]!=______)y[j++]=x[i]; for(i=0;i<N;i++)x[i]=y[i]; return av; } main() {int i;double x[N]; for(i=0;i<N;i++) {x[i]=rand()% 50; printf('% 4.0f',x[i]);} printf('\n'); printf('\nThe average is: % f\n',fun(x)); printf('\nThe result :\n',fun(x)); for(i=0;i<N;i++) printf('% 5.0f',x[i]); printf('\n'); }
进入题库练习
填空题 请补充函数proc(),其功能是:计算并输出给定10个数的方差。 例如,给定的10个数为12.0,9.0,26.0,5.0,6.0,31.0,9.0,3.0,8.0,18.0,输出为s=8.877500。 注意:部分源程序给出如下。 请勿改动main()函数和其他函数中的任何内容,仅在函数proc()的横线上填入所编写的若干表达式或语句。 试题程序: #include<stdio.h> #include<math.h> double proc(double x[10]) { int i; double avg=0.0; double sum=0.0; double abs=0.0; double sd; for(i-0; i<10; i++) ______; avg=sum/10; for(i=0; i<10; i++) ______; sd=______; return sd; } void main() { double s, str[10]={12.0, 9.0, 26.0, 5.0, 6.0, 31.0, 9.0, 3.0, 8.0, 18.0}; int i; printf('\nThe original data is: \n'); for(i=0; i<10; i++) printf('%6.1f', str[i]); printf('\n\n'); s=proc(str); printf('s=%f\n\n', s); }
进入题库练习
填空题 给定程序中函数fun的功能:把形参s所指字符串中最右边的n个字符复制到形参t所指字符数组中,形成一个新串。若s所指字符串的长度小于n,则将整个字符串复制到形参t所指字符数组中。 例如,形参s所指的字符串为abcdefgh,n的值为5,程序运行后,t所指字符数组中的字符串应为defgh。 请在程序的下划线处填入正确的内容,并把下划线删除,使程序得出正确的结果。 注意:源程序存放在考生文件夹下的BLANK1.c中。不得增行或删行,也不得更改程序的结构! 给定源程序如下: #include stdio.h #include string.h #define N 80 void fun(char *s, int n, char *t) { int len,i,j=0; len=strlen(s); /**********found**********/ if(n=len) strcpy(__1__); else { /**********found**********/ for(i=len-n; i=len-1; i++) t[j++]= __2__ ; /**********found**********/ t[j]= __3__ ; } } main() { char s[N],t[N]; int n; printf('Enter a string: ');gets(s); printf( 'Enter n:'); scanf('%d',n); fun(s,n,t); printf('The string t : '); puts(t); }
进入题库练习
填空题 给定程序中,函数fun的功能是:有N×N矩阵,将矩阵的外围元素顺时针旋转。操作顺序是:首先将第一行元素的值存入临时数组r,然后使第一列成为第一行,最后一行成为第一列,最后一列成为最后一行,临时数组中的元素成为最后一列。 例如,若N=3,有下列矩阵: 1 2 3 4 5 6 7 8 9 计算结果为: 7 4 1 8 5 2 9 6 3 请在程序的下划线处填入正确的内容,使程序得出正确的结果。 不得增行或删行,也不得更改程序的结构! 给定源程序: #include <stdio.h> #define N 4 void fun (int (*t)[N]) { int j,r[N]; for(j=0; j<N; j++) r[j]=t[0][j]; for(j=0; j<N; j++) /**********found**********/ t[0][N-j-1]=t[j][______]; for(j=0;j<N;j++) t[j][0]=t[N-1][j]; /**********found**********/ for(j=N-1;j>=0;______) t[N-1][N-1-j]=t[j][N-1]; for(j=N-1; j>=0; j--) /**********found**********/ t[j][N-1]=r[______]; } main() { int t[][N]={21,12,13,24,25,16,47,3 8,29,11,32,54,42,21,33710},1,j; printf('\nThe original array:\n'); for(i=0;i<N;i++) { for=(j=0;j<N;j++)printf('%2d',t[i][j]); printf('\n'); } fun(t); printf('\nThe, result is:\n'); for(i=0;i<N;i++) { for(j=0; j<N; j++) printf('%2d',t[i][j]); printf('\n'); } }
进入题库练习
填空题 给定程序中,函数fun的功能是:求出形参ss所指字符串数组中最长字符串的长度,其余字符串左边用字符*补齐,使其与最长的字符串等长。字符串数组中共有M个字符串,且串长<N。 请在程序的下划线处填入正确的内容,使程序得出正确的结果。 不得增行或删行,也不得更改程序的结构! 给定源程序: #include <stdio.h> #include <string.h> #define M 5 #define N 20 void fun(char (*ss)[N]) { int i,j,k=0, n,m,len; for(i=0;i<M;i++) { len=strlen(ss[i]); if(i==0) n=len; if(len>n){ /**********found**********/ n=len;______=i; } } for(i=0;i<M;i++) if(i!=k) {m=n; len=strlen(ss[i]); /**********found**********/ for(j=______; j>=0; j--) ss[i][m--]=s[i][j]; for(j=0; j<n-len; j++) /**********found**********/ ______='*'; } } main() { char ss[M][N]=('shanghai','guangzhou','beijing','tianjing','cchongqing'}; int i; printf('\nThe original strings are:\n'); for(i=0; i<M; i++) printf('%s\n',ss[i]); printf('\n'); fun(ss); printf('\nThe result:\n'); for(i=0; i<M; i++) printf('%s\n',ss[i]); }
进入题库练习
改错题 给定程序MODI1.c中函数fun的功能:将s所指字符串的正序和反序进行连接,形成一个新串放在t所指的数组中。 例如,当s所指字符串为“ABCD”时,则t所指字符串中的内容应为“ABCDDCBA”。 请改正程序中的错误,使它能得出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构! 给定源程序如下: #include stdio.h #include string.h /************found************/ void fun (char s, char t) { int i, d; d = strlen(s); for (i = 0; id; i++) t[i] = s[i]; for (i = 0; id; i++) t[d+i] = s[d-1-i]; /************found************/ t[2*d-1] = '\0'; } main() { char s[100], t[100]; printf('\nPlease enter string S:'); scanf('%s', s); fun(s, t); printf('\nThe result is: %s\n', t); }
进入题库练习
改错题 给定程序中的函数Creatlink的功能是创建带头结点的单向链表,并为各结点数据域赋0到m-1的值。 请改正函数Creatlink中指定部位的错误,使它能得出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构! 给定源程序: #include<stdio.h> #include<stdlib.h> typedef struct aa {int data; struct aa*next; }NODE; NODE*Creatlink(int n,int m) {NODE*h=NULL,*p,*s; int i; /**********found**********/ p=(NODE)malloc(sizeof(NODE)); h=p; p->next=NULL; for(i=1;i<=n;i++) {s=(NODE*)malloc(sizeof(NODE)); s->data=rand()%m; s->next=p->next; p->next=s; p=p->next; } /**********found**********/ return p; } void outlink(NODE*h) {NODE*p; p=h->next; printf('\n\nTHE LIST:\n\n HEAD'); while(p) {printf('->%d',p->data); p=p->next; } printf('\n'); } main() {NODE*head; head=Creatlink(8,22); outlink(head); }
进入题库练习
改错题 下列给定程序的功能是:读入一个英文文本行,将其中每个单词的第一个字母改成大写,然后输出此文本行(这里的“单词”是指由空格隔开的字符串)。例如,若输入“I am a student to takethe examination”,则应输出“I Am A Student To Take The Examination”。 请改正程序中的错误,使程序能得出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构! 试题程序: #include <ctype.h> #include <string.h> #include<stdio.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); } } } main() {char chrstr[81]; printf('\nPlease enter an English text line:'); gets(chrstr); printf('\n\nBefore changing:\n%s',chrstr); upfst(chrstr); printf('\nAfter changing:\n%s\n',chrstr); }
进入题库练习
改错题下列给定程序中函数fun的功能是:计算并输出下列级数的前N项和SN,直到SN+1的值大于q为止,q的值通过形参传入。例如,若q的值为50.0,则函数值应为49.394948。请改正程序中的错误,使程序能输出正确的结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!给定源程序:#include<stdio.h>double,fun(doubleq){intn;doubles,t;n=2;s=2.0;while(s<=q){t=s;/**********found**********/s=s+(n+1)/n;n++;}printf('n=%d\n',n);/**********found**********/returns;}main(){printf('%f\n',fun(50));}
进入题库练习
改错题 下列给定程序中,函数proc()的功能是:从字符串str中,删除所有大写字母'F'。 请修改程序中的错误,使它能得到正确结果。 注意:不要改动main()函数,不得增行或删行,也不得更改程序的结构。 试题程序: #include<stdio.h> void proc(char*str) { int i, j; //****found**** for(i=j=0; str[i]!='0'; i++) if(str[i]!='F') //****found**** str[j]=str[i]; str[j]='\0'; } void main() { char str[80]; printf('\nEnter a string: '); gets(str); printf('The original string: '); puts(str); proc(str); printf('The string after deleted: '); puts(str); printf('\n\n'); }
进入题库练习
改错题 给定程序中函数fun的功能是:求出s所指字符串中最后一次出现的t所指子字符串的地址,通过函数值返回,在主函数中输出从此地址开始的字符串;若未找到,则函数值为NULL。 例如,当字符串中的内容为:“abcdabfabcdx”,t中的内容为:“ab”时,输出结果应是:abcdx。当字符串中的内容为:“abcdabfabcdx”,t中的内容为:“abd”时,则程序输出未找到信息:not be found!。 请改正程序中的错误,使它能得出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构! 给定源程序: #include <stdio.h> #include <string.h> 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 resultis:%s\n',p); else printf('\nNot found !\n'); }
进入题库练习
改错题 给定程序中函数fun的功能是:从低位开始取出长整型变量s中奇数位上的数,依次构成一个新数放在t中。高位仍在高位,低位仍在低位。 例如,当s中的数为:7654321时,t中的数为:7531。 请改正程序中的错误,使它能得出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构! 给定源程序: #include<stdio.h> /**********found**********/ void fun(long s,long t) {long sl=10; *t=s%10; while(s>0) {s=s/100; *t=s%10*sl+*t; /**********found**********/ sl=sl*100; } } main() {long s,t; printf('\nPlease enter s:');scanf('%ld',s); fun(s,t); printf('The result is:%ld\n',t); }
进入题库练习
改错题 下列给定程序中,fun函数的功能是:根据形参m,计算下列公式的值。 t=1+1/2+1/3+1/4+…+1/m 例如,若输入S,则应输出2.283333。 请改正程序中的错误,使它能得出正确的结果。 注意:不要改动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/k; /**********found**********/ return i; } void main() { int m; system('CLS'); printf('\nPlease enter linteger number:'); scanf('%d', m); printf('\nThe result is%lf\n', fun(m)); }
进入题库练习
改错题 数列中,第一项为3,后一项都比前一项的值增5。下列给定程序中,函数fun的功能是:计算前n(4<n<50)项的累计和。在累加过程中把那些被4除后余2的当前累加值放入数组中,符合此条件的累加值的个数作为函数值返回。 例如,当n的值为20时,该数列为3、8、13、18、23、28、…、93、98,符合此条件的累加值应为42、126、366、570、1010。 请改正程序中的错误,使它能得出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。 试题程序: #include<stdio.h> #define N 20 int fun(int n, int *a) { /**********found**********/ int i, j, k, sum; sum=0; for(k=3, i=0; i<n; i++, k+=5) { sum=sum+k; /**********found**********/ if(sum%4=2) a[j++]=sum; } /**********found**********/ return j; } void main() { int a[N], d, n, i; printf('\nEnter n(4<=n<=50):'); scanf('%d', n); d=fun(n, a); printf('\n\nThe result:\n'); for(i=0; i<d; i++) printf('%6d', a[i]); printf('\n\n'); }
进入题库练习