程序填空1

阅读: 评论:0

1、给定程序中,函数fun的功能是根据形参i的值返回某个函数的值。当调用正确时, 程序输出:
x1=5.000000,  x2=3.000000,  x1*x1+x1*x2=40.000000
请在程序的下划线处填入正确的内容并把下划线删除, 使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。
不得增行或删行,也不得更改程序的结构
#include  <stdio.h>
double f1(double  x)
{  return x*x;  }
double f2(double  x, double  y)
{  return  x*y;  }
/**********found**********/
__1__ fun(int  i, double  x, double  y) 
{ if (i==1)
/**********found**********/
return __2__(x);
else
/**********found**********/
return  __3__(x, y);
}
main()
{ double  x1=5, x2=3, r;
r = fun(1, x1, x2);
r += fun(2, x1, x2);
printf("\nx1=%f, x2=%f, x1*x1+x1*x2=%f\n\n",x1, x2, r);
}
(1)double(2)f1(3)f2
2、程序通过定义学生结构体数组,存储了若干名学生的学号、姓名和3门课的成绩。函数fun的功能是将存放的结构体数组,按照姓名的字典序(从小到大)排序。
请在程序的下划线处填入正确的内容并把下划线删除, 使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。
不得增行或删行,也不得更改程序的结构!
#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("\n\nThe original data :\n\n");
for (j=0; j<4; j++)
{  printf("\nNo: %ld  Name: %-8s      Scores:  ",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("\n\nThe data after sorting :\n\n");
for (j=0; j<4; j++)
{  printf("\nNo: %ld  Name: %-8s      Scores:  ",s[j].sno, s[j].name);
for (i=0; i<3; i++)  printf("%6.2f ", s[j].score[i]);
printf("\n");
}
}
(1)struct student(2)n-1(3)a[i].name,a[j].name
3、给定程序中,函数fun的功能是:计算形参x所指数组中N个数的平均值(规定所有数均为正数),作为函数值返回;并将大于平均值的数放在形参y所指数组中,在主函数中输出。
例如,有10个正数:46  30  32  40  6  17  45  15  48  26,平均值为:30.500000
主函数中输出:46  32  40  45  48
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
意:源程序存放在考生文件夹下的BLANK1.C中。
不得增行或删行,也不得更改程序的结构!
#include  <stdlib.h>
#define  N  10
double fun(double  x[],double  *y)
{ int  i,j;    double  av;
/**********found**********/
av=__1__;
/**********found**********/
for(i=0; i<N; i++)  av = av + __2__;
for(i=j=0; i<N; i++)
/**********found**********/
if(x[i]>av)  y[__3__]= x[i];
y[j]=-1;
return  av;
}
main()
{ int  i;    double  x[N],y[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,y));
for(i=0; y[i]>=0; i++)  printf("%5.1f ",y[i]);
printf("\n");
}
(1)0(2)x[i]/N(3)j++
4、给定程序中,函数fun的功能是:将a所指4×3矩阵中第k行的元素与第0行元素交换。
例如,有下列矩阵:
1    2    3
4    5    6
7    8    9
10  11  12
若k为2,程序执行结果为:
7    8    9
4    5    6
1    2    3
10  11  12
请在程序的下划线处填入正确的内容并把下划线删除, 使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。
不得增行或删行,也不得更改程序的结构!
#include  <stdio.h>
#define  N  3
#define  M  4
/**********found**********/
void fun(int (*a)[N], int __1__)
{ int i,j,temp ;
/**********found**********/
for(i = 0 ; i < __2__ ; i++)
{ temp=a[0][i] ;
/**********found**********/
a[0][i] = __3__ ;
a[k][i] = temp ;
}
}
main()
{ int x[M][N]={ {1,2,3},{4,5,6},{7,8,9},{10,11,12} },i,j;
printf("The array before moving:\n\n");
for(i=0; i<M; i++)
{  for(j=0; j<N; j++) printf("%3d",x[i][j]);
printf("\n\n");
}
fun(x,2);
printf("The array after moving:\n\n");
for(i=0; i<M; i++)
{  for(j=0; j<N; j++) printf("%3d",x[i][j]);
printf("\n\n");
}
}
(1)k(2)N(3)a[k][i]
5、给定程序中,函数fun的功能是将a和b所指的两个字符串转换成面值相同的整数,并进行相加作为函数值返回,规定字符串中只含9个以下数字字符。
例如,主函数中输入字符串:32486和12345,在主函数中输出的函数值为:44831。
请在程序的下划线处填入正确的内容并把下划线删除, 使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。
不得增行或删行,也不得更改程序的结构!
#include  <stdio.h>
#include  <string.h>
#include  <ctype.h>
#define  N  9
long  ctod( char  *s )
{ long  d=0;
while(*s)
if(isdigit( *s))  {
/**********found**********/
d=d*10+*s-__1__;
/**********found**********/
__2__;  }
return  d;
}
long  fun( char  *a, char  *b )
{
/**********found**********/
罗兰巴特return  __3__;
}
main()
{ char  s1[N],s2[N];
do
{ printf("Input  string  s1 : "); gets(s1); }
while( st
rlen(s1)>N );
do
{ printf("Input  string  s2 : "); gets(s2); }
while( strlen(s2)>N );
风险投资交易printf("The result is:  %ld\n", fun(s1,s2) );
}
(1)'0'(2)s++(3)ctod(a)+ctod(b)
6、给定程序中,函数fun的功能是:计算下式前n项的和作为函数值返回。
例如,当形参n的值为10时,函数返回:9.612558。
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。
不得增行或删行,也不得更改程序的结构!
#include  <stdio.h>
double fun(int  n)
{ int  i;    double  s, t;
/
**********found**********/
s=__1__;
/**********found**********/
for(i=1; i<=__2__; i++)
{ t=2.0*i;
/**********found**********/
s=s+(2.0*i-1)*(2.0*i+1)/__3__;
}
return  s;
}
main()
{ int  n=-1;
while(n<0)
{ printf("Please input(n>0): "); scanf("%d",&n);  }
printf("\nThe result is: %f\n",fun(n));
}
(1)0(2)n(3)(t*t)
7、给定程序中,函数fun的功能是:在3×4的矩阵中出在行上最大、在列上最小的那个元素,若没有符合条件的元素则输出相应信息。
例如,有下列矩阵:
1    2    13    4
7    8    10    6
3    5    9    7
程序执行结果为:find:  a[2][2]=9
请在程序的下划线处填入正确的内容并把下划线删除, 使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。
不得增行或删行,也不得更改程序的结构!
#include  <stdio.h>
#define  M  3
#define  N  4
void fun(int  (*a)[N])
{ int  i=0,j,find=0,rmax,c,k;
while( (i<M) && (!find))
{  rmax=a[i][0];  c=0;
for(j=1; j<N; j++)
if(rmax<a[i][j]) {
/**********found**********/
rmax=a[i][j]; c= __1__ ; }
find=1; k=0;
while(k<M && find) {
/**********found**********/
if (k!=i && a[k][c]<=rmax)  find= __2__ ;
k++;
}
if(find) printf("find: a[%d][%d]=%d\n",i,c,a[i][c]);
/
**********found**********/
__3__ ;
}
if(!find) printf("not found!\n");
}
main()
{ int  x[M][N],i,j;
printf("Enter number for array:\n");
for(i=0; i<M; i++)
for(j=0; j<N; j++) scanf("%d",&x[i][j]);
printf("The array:\n");
for(i=0; i<M; i++)
{  for(j=0; j<N; j++) printf("%3d",x[i][j]);
printf("\n\n");
}
fun(x);
}
(1)j(2)0(3)i++
8、给定程序中,函数fun的功能是:在形参ss所指字符串数组中,删除所有串长超过k的字符串,函数返回所剩字符串的个数。ss所指字符串数组中共有N个字符串,且串长小于M。
请在程序的下划线处填入正确的内容并把下划线删除, 使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。
不得增行或删行,也不得更改程序的结构!
#include  <stdio.h>
#i
nclude  <string.h>
#define  N  5
#define  M  10
int fun(char  (*ss)[M], int  k)
{ int  i,j=0,len;
/**********found**********/
for(i=0; i< __1__ ; i++)
{  len=strlen(ss[i]);
/**********found**********/
if(len<= __2__)
/**********found**********/
strcpy(ss[j++],__3__);
}
return  j;
}
main()
{ char  x[N][M]={"Beijing","Shanghai","Tianjing","Nanjing","Wuhan"};
int  i,f;
printf("\nThe original string\n\n");
for(i=0;i<N;i++)puts(x[i]);  printf("\n");
f=fun(x,7);
printf("The string witch length is less than or equal to 7 :\n");
for(i=0; i<f; i++)  puts(x[i]);printf("\n");
}
(1)N(2)k(3)ss[i]
9、程序通过定义学生结构体变量,存储了学生的学号、姓名和3门课的成绩。函数fun的功能是将形参a所指结构体变量中的数据赋给函数中的结构体变量b,并修改b中的学号和姓名,最后输出修改后的数据。例如:a所指变量中的学号、姓名、和三门课的成绩依次是:10001、"ZhangSan"、95、80、88,则修改后输出b中的数据应为:10002、"LiSi"、95、80、88。
请在程序的下划线处填入正确的内容并把下划线删除, 使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。
不得增行或删行,也不得更改程序的结构!
#include  <stdio.h>
#include  <string.h>
struct student {
long  sno;
char  name[10];
float  score[3];
};
void fun(struct  student  a)
{ struct student  b;    int  i;
/**********found**********/
b = __1__;
b.sno = 10002;
/**********found**********/
strcpy(__2__, "LiSi");
printf("\nThe data after modified :\n");
printf("\nNo: %ld  Name: %s\nScores:  ",b.sno, b.name);
/**********found**********/
for (i=0; i<3; i++)  printf("%6.2f ",  b.__3__);
printf("\n");
}
main()
{ struct student  s={10001,"ZhangSan", 95, 80, 88};
int  i;
printf("\n\nThe original data :\n");
printf("\nNo: %ld  Name: %s\nScores:  ",s.sno, s.name);
for (i=0; i<3; i++)  printf("%6.2f ",  s.score[i]);
printf("\n");
fun(s);
}
(1)a(2)b.name(3)score[i]
10、给定程序中,函数fun的功能是:在形参ss所指字符串数组中,将所有串长超过k的字符串中右边的字符删除,只保留左边的k个字符。ss所指字符串数组中共有N个字符串,且串长小于M。
请在程序的下划线处填入正确的内容并把下划线删除, 使程序得出正确的结果。
雅园玉道注意:源程序存放在考生文件夹下的BLANK1.C中。
不得增行或删行,也不得更改程序的结构!
#include  <stdio.h>
#include  <string.h>
#define  N  5
#define  M  10
/**********found**********/
void fun(char  (*ss) __1__, int  k)
{ int  i=0  ;
/**********found**********/
while(i< __2__) {
/**********found**********/
ss[i][k]=__3__;  i++;  }
}
main()
{ char  x[N][M]={"Create","Modify","Sort","skip","Delete"
};
int  i;
printf("\nThe original string\n\n");
for(i=0;i<N;i++)puts(x[i]);  printf("\n");
fun(x,4);
printf("\nThe string after deleted :\n\n");
for(i=0; i<N; i++)  puts(x[i]);  printf("\n");
俾斯麦
}
(1)[M](2)N(3)0

本文发布于:2023-08-15 06:04:23,感谢您对本站的认可!

本文链接:https://patent.en369.cn/xueshu/361278.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:函数   程序   字符串   结构   所指   不得
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 369专利查询检索平台 豫ICP备2021025688号-20 网站地图