填空题若已经定义int a=25,b=14,c=19;,以下三目运算符(?:)所构成的语句的执行结果是 【9】 。 a++ a=%d,b=%d,c=%d/n",a,b,C) :printf("a=%d,b=%d,c=%d/n",a,b,C) ;
填空题下列给定程序中,函数proc()的功能是:根据整型参数m,计算如下公式的值:
y=1/(100100)+1/(200200)+1/(300300)+…+1/(mm)
例如,若m=4000,则应输出0.000162。
请修改程序中的错误,使它能得出正确的结果。
注意:不要改动main()函数,不得增行或删行,也不得更改程序的结构。
试题程序:
#include<stdlib.h>
#include<conio.11>
#include<stdio.h>
//****found****
proc(int m)
{
double y=0,d;
int i;
//****found****
for(i=100,i<=m,i+=100)
{
d=(double)i*(double)i;
y+=1.0/d;
}
return(y);
}
void main()
{ int n=4000;
system("CLS");
printf("/nThe result is%1f/n",proc(n));
}
填空题以下程序中,select函数的功能是:在N行M列的二维数组中,选出一个最大值作为函数值返回,并通过形参传回此最大值所在的行下标。请填空。
#define N 3
#define M 3
select(int a[N][M],int *n)
{ int i,j,row=1,colum=1;
for(i=0;i<N;i++)
for(j=0;j<M;j++)
if(a[i][j]>a[row][colum]){row=i;colum=j;}
*n={{U}} 【17】 {{/U}};
return({{U}} 【18】 {{/U}});
}
main()
{ int a[N][M]={9,11,23,6,1,15,9,17,20},max,n;
max=select(a,&n);
printf(“max=%d,line=%d/n”,max,n);
}
填空题关系模型的3类完整性指的是 【2】 、参照完整性、用户定义的完整性。
填空题近年来形成了软件开发的多种模式,大致有3种类型:基于瀑布模型的结构化生命周期方法、基于动态定义需求的 【4】 方法和基于结构的面向对象的软件开发方法。
填空题下列给定程序中,函数fun的功能是:将S所指字符串中的所有数字字符移到所有非数字字符之后,并保持数字字符串和非数字字符串原有的次序。
例如,s所指的字符串为“def35adh3kjsdf7”,执行后结果为“defadhkjsdf3537”。
请在程序的下划线处填入正确的内容,使程序得出正确的结果。
注意:部分源程序给出如下。
不得增行或删行,也不得更改程序的结构!
试题程序:
#include<stdio.h>
void fun(char *s)
{
int i,j=0,k=0;
char t1[80],t2[80];
for(i=0;s[i]!="/0";i++)
if(s[i]>="0"
______;
}
else
{
t1[k++]=s[i];
}
t2[j]=0;
t1[k]=0;
for(i=0;i<k;i++)
______;
for(i=0;i<______;i++)
s[k+i]=t2[i];
}
main()
{
char s[80]="ba3a54j7sd567sdffs";
pfintf("/nThe original string is:%s/n",s);
fun(s);
pfintf("/nThe result is:%s/n",s);
}
填空题若有如下结构体说明: struct STRU int a,b;charc:double d; struct STRU*p1,*p2; 请填空,以完成对t数组的定义,t数组的每个元素为该结构体类型。 【11】 t[20]
填空题 【5】 是指一个数据对象中的各个数据元素之间存在的联系。
填空题若有程序:
main()
{ int i,j;
scanq("i=%d,j=%d",
printf("i=%d,j=%d/n",i,j);
}
要求给i赋10,给j赋20,则应该从键盘输入{{U}} 【7】 {{/U}}。
填空题已知二叉树后序遍历序列是dabec,中序遍历序列是debac,它的前序遍历序列是一______。
填空题有以下程序: int sub(int n) return(n/10+n%10); main() int x, y; scanf("% d", y=sub(sub(sub(x))); printf("% d/n", y); 若运行时输入:1234<回车>,程序的输出结果是 【6】 。
填空题给定程序中,函数fun的功能是:计算形参x所指数组中N个数的平均值(规定所有数均为正数),将所指数组中小于平均值的数据移至数组的前部,大于等于平均值的数据移至x所指数组的后部,平均值作为函数值返回,在主函数中输出平均值和移动后的数据。
例如,有10个正数:46 30 32 40 6 17 45 15 48 26,平均值为:30.500000移动后的输出为:30 6 17 15 26 46 32 40 45 48
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:源程序存放在
下的BLANK1. C中。不得增行或删行,也不得更改程序的结构!
#include <stdlib. h>
#include <stdio.h>
#define N 10
double fun(double *x)
{int i, j; double av, y[N];
av=0;
/**********found**********/
for(i=0; i<N; i++) av+= ______;
for(i=j=0; i<N; i++)
if(x[i]<av){
/**********found**********/
y[j]=x[i]; x[i]=-1; ______;}
i=0;
while(i<N)
{if(x[i]!=-1) y[j++]=x[i];
/**********found**********/
______;
}
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");
}
填空题Internet的信息服务方式分为基本服务和扩展服务,电子邮件属于{{U}} 【3】 {{/U}} 。
填空题下列给定的程序中,函数fun()的功能是:用选择法对数组中的n个元素按从大到小的顺序进行排序。请改正程序中的错误,使它能得到正确结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。
试题程序:
#include<stdio.h>
#define N 20
void fun(int a[ ],int n)
{
int i,j,t,p;
/*************found*************/
for(j=0;j<n-1;j++) ;
{
p=j;
for(i=j;i<n;i++)
if(a[i)>a[p])
p=i;
t=a[p];
a[p]=a[i];
/*************found**************/
a[p]=t;
}
}
main()
{
int a[N]={11,32,-5,2,14},i,m=5;
printf(“排序前的数据:”);
for(i=0;i<m;i++)
printf("%d",a[i]);
printf("/n");
fun(a,m);
printf(“排序后的顺序:”);
for(i=0;i<m;i++)
printf("%d",a[i]);
printf("/n");
}
填空题下列给定程序中函数fun的功能是:求两个非零正整数的最大公约数,并作为函数值返回。 例如,若num1和num2分别为49和21,则输出的最大公约数为7;若num1和num2分别为27和81,则输出的最大公约数为27。 请改正程序中的错误,使它能得出正确结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构! 试题程序: #include<stdio.h> int fun(int a,int b) int r,t: if(a<b) /*********found*********/ t=a;b=a;a=t; r=a%b; while(r!=0) a=b;b=r;r=a%b; /*********found*********/ return(a); void main() int num1,hum2,a; printf("Input num1 num2:"); scanf("%d%d",&num1,&num2); printf("num1=%d num2=%d/n/n",num1,num2); a=fun(num1,num2): printf("The maximun common divisor is%d/n/n",a);
填空题当执行以下程序时,输入1234567890<回车>,则其中while循环体将执行______次。 #include<stdioh> main() char ch; while((ch=getchar())=='0')printf("#");
填空题下列程序中的函数strcpy2()实现字符串两次复制,即将t所指字符串复制两次到s所指内存空间中,合并形成一个新字符串。例如t所指字符串为efgh,调用strcpy2后,s所指字符串为efghefgh。请填空。 #include<stdio.h> #include<string.h> void strcpy2(char*s,char*t) char*P=t; while(*s++=*t++); s= (12) ; while( (13) =*P++); main() char str1[100]="ahcd",str2[]="efgh"; strcpy2(str1,str2);printf("%s/n",str1);
填空题以下sstrcpy()函数实现字符串复制,即将t所指字符串复制到s所指内存空间中,形成一个新字符串s。
请填空。
void sstrcpy(char*s,char*t)
{while(*s++={{U}} 【15】 {{/U}});}
main()
{ char strl[100],str2[]="abcdefgh";
sstrcpy(strl,str2);
printf("%s/n",strl);
}
填空题以下程序通过函数指针p调用函数fun,请在填空栏内写出定义变量p的语句。 void fun(int x,int * y) …… main() int a=10,b=20; 【12】 ; /*定义变量p*/ p=fun;p(
填空题以下程序段的输出结果是______。
int k, n, m;
n=10; m=1; k=1;
while(k++<=n) m*=2;
printf("%d/n", m);
