填空题数据管理技术发展过程经过人工管理、文件系统和数据库系统三个阶段,其中数据独立性最高的阶段是【 】。
填空题求主次对角线之和。
main()
{static int a[ ][3]={9,7,5,1,2,4,6,8};
int I,j,s1=0,s2=0;
for(I=0;I<3;I++)
for(j=0;j<3;j++)
{if(__________)
s1=s1+a[I][j];
if( __________ )
s2=s2+a[I][j];
}
printf(“%d\n%d\n”,s1,s2);
}
填空题设int a=5,b=6,表达式(++a==b--)?++a:--b的值是 【6】 。
填空题若变量n的值为24,则print函数共输出{{U}} 【7】 {{/U}}行,最后一行有{{U}} 【8】 {{/U}}个数。
void print(int n,int aa[])
{ int i;
for(i=1;i<n;i++)
{ printf("%6d",aa[i]);
if(!(i%5)) printf("/n");
}
printf("/n");
}
填空题以下程序中函数fun()的功能是构成一个如图所示的带头结点的单向链表,在结点的数据域中放入了具有两个字符的字符串。函数disp的功能是显示输出该单向链表中所有结点中的字符串。请填空完成函数disp。#include<atdio.h>typedefstructnode/*链表结点结构*/charsub[3];structnode*next;NodeNode~un(chars)/*建立链表*/......voiddisp(Node*h)Node*Psp=h->next;while(【17】)printf("%s/n",p->suh);p=【18】;main()Node*hd;hd=fun();disp(hd);prinff("/n");
填空题以下函数creat用来建立一个带头结点的单向链表,新产生的结点总是插在链表的末尾。单向链表的头指针作为函数值返回。请填空。
#include <stdio.h>
struct list
{ char dara;
struct list *next;
};
struct list *creat()
{ struct list *h,*p,*q;
char ch;
h= (struct list (*) malloc (sizeof (struct list));
______;
ch=getchar();
while(ch!='?')
{ p=(struct list*) malloc) sizeof (struct list));
p->data=ch;
______;
q=p;
ch=getchar();
}
p->next='/0';
______:
}
填空题一棵二叉树有10个度为1的结点,7个度为2的结点,则该二叉树共有{{U}} (3) {{/U}}个结点。
填空题在给定程序中,函数fun的功能是:求出形参SS所指字符串数组中最长字符串的长度,其余字符串左边用字符*补齐,使其与最长的字符串等长。字符串数组中共有M个字符串,且串长<N。 请在程序的下画线处填入正确的内容并把下画线删除,使程序得出正确的结果。 注意:源程序存放在考生文件夹下的BLANK1.C中。不得增行或删行,也不得更改程序的结构。 文件BLANK1.C内容如下: #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; (1) =i; for(i=0;i<M;i++) if(i!=k) m=n: len=strlen(ss[i]); /***********found***********/ for(j= (2) ;j>=0;j--)ss[i][m--]=ss[i][j]; for(j=0;j<n-len;j++) /**********found**********/ (3) ='*': void 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 resuh:/n"); for(i=0;i<M;i++)printf("%s/n",ss[i]);
填空题以下程序运行后的输出结果是 【8】 。 #include <stdio, h> main( ) int a=3,b=4,c=5,t=99; if(b<a a=c;c=t; if(a<e b=a;a=t; printf( "%d %d %d /n" ,a,b,e);
填空题下面程序执行后输出的结果是{{U}} {{U}} {{/U}} {{/U}}。
int m=13;
int fun(int x,int y)
{ int m=3;
return(x*y-m);
}
main()
{ int a=7,b=5;
printf("%d/n",fun(a,B) /m);
}
填空题给定程序中,函数fun的功能是:将形参s所指字符串中的所有字母字符顺序前移,其他字符顺序后移,处理后新字符串的首地址作为函数值返回。
例如,s所指字符串为“asd123fgh543df”,处理后新字符串为“asdfghdf123543”。
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:源程序存放在
下的BLANK1.C中。
不得增行或删行,也不得更改程序的结构!
给定源程序:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
char *fun(char *s)
{ int i,j,k,n; char *p,*t;
n=strlen(s)+1;
t=(char*)malloe(n*sizeof(char));
p=(char*)malloe(n*sizeof(ehar));
j=0;k=0;
for(i=0;i<n;i++)
{ if(((s[i]>="a")j++;}
else
{ p[k]=s[i];k++;}
}
/**********found**********/
for(i=0;i<
________
;i++) t[j+i]=p[i];
/**********found**********/
t[j+k]=
________
;
return t;
}
main()
{ char s[80];
printf("Please input:"); scanf("%s",s);
printf("/nThe result is:%s/n",fun(s));
}
填空题给定程序中,函数fun的功能是计算下式直到,并把计算结果作为函数值返回。例如,若形参e的值为1e-3,函数的返回值为2.985678。请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。不得增行或删行,也不得更改程序的结构!给定源程序:#include<stdio.h>doublefun(doublee){inti;doubles,x;/**********found**********/s=0;i=________;x=1.0;while(x>e){/**********found**********/________;/**********found**********/x=(2.0*i-1)/((________)*(2.0*i));s=s+x;}returns;}main(){doublee=1e-3;printf("/nTheresultis:%f/n",fun(e));}
填空题有以下程序
int fa(int x){return x*x;}
int fb(int x){return x*x*x;}
int f(int(*fl)(),int(*f2)(),int x}
{return f2(x)-f1(x);}
main()
{int i;i=f(fa,fb,2);printf("%d/n",i);}
程序运行后,输出结果是{{U}} 【8】 {{/U}}。
填空题若想通过以下输入语句使a=5.0,b=4,c=3,则输入数据的形式应该是 【10】 。 int b,c; float a; scanf("%f,%d,c=%d",&a,&b,&c)
填空题以下程序的输出结果是______。 #include<stdio.h> #define M 5 #define N M+M main() int k; k=N*N*5;printf("%d/n",k);
填空题下列给定程序中,函数fun()的功能是:根据整型参数m,计算如下公式的值。 y=1/(100×100)+1/(200×200)+1/(300×300)+…+1/(m×m) 例如,若m=2000,则应输出0.000160。 请改正程序中的错误,使它能得出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。 试题程序: #include <conio.h> #include <stdio. h> /*************found**************/ fun (int m) double y=0, d; int i; /*************found**************/ for (i=100, i<=m, i+=100) d= (double) i* (double) i; y+=l. 0/d; return (y); main ( ) int n=2000; clrscr(); printf("/nThe result is %lf/n",fun(n));
填空题用以下程序把从键盘输入的字符存放到一个文件中,用字符#作为结束符,请按题意要求填空完善程序。
#include<stdio.h>
main()
{ FILE*fp;
char ch,fname[10];
printf("Input the name of file/n");
gets(fname);
if(fp=fopen({{U}} 【18】 {{/U}}))==NULL)
{printf("can't open/n");
{{U}} 【19】 {{/U}};
}
while((ch=getchar())!='#')
fputc({{U}} 【20】 {{/U}});
fclose(fp);
}
填空题给定程序通过定义并赋初值的方式,利用结构体变量存储了一名学生的学号、姓名和3门课的成绩。函数fun的功能是将该学生的各科成绩都乘以一个系数a。
请在程序的下画线处填入正确的内容,使程序得出正确的结果。
注意:部分源程序给出如下。
不得增行或删行,也不得更改程序的结构!
试题程序:
#include <stdico.h>
typedef struct
{ int hum;
char name [9];
float score[3];
} STU;
void show(STU tt)
{ int i;
printf("%d%s;",tt.num,tt.name);
for(i=0; i<3; i++)
printf("%5.1f",tt.score[i]);
printf("/n");
}
/**********found**********/
void modify(______ *ss,float a)
{ int i;
for(i=0; i<3; i++)
/**********found**********/
ss->______ *=a;
}
main( )
{ STU std={1,"Zhanghua",76.5,78.0,82.0};
float a;
printf("/nThe original number and name and scores:/n");
show(std);
printf("/nInput a number:");
scanf("%f",
/**********found**********/
modify(______,a);
printf("/nA result of modifying:/n");
show(std);
}
填空题在先左后右的原则下,根据访问根结点的次序,二叉树的遍历可以分为三种;前序遍历、 【1】 遍历和后序遍历。
填空题要使以下程序段输出10个整数,请填入一个整数; for(i=0;i<= 【8】 ;printf("%d/n",i+=2));
