给定程序中,函数fun的作用是:统计整型变量m中各数字出现的次数,并存放到数组a中,其中:a[0]存放0出现的次数,a[1]存放1出现的次数,……
a[9]存放9出现的次数。
例如,若m为14579233,则输出结果应为:0,1,1,2,1,1,0,1,0,1,
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。
不得增行或删行,也不得更改程序的结构!
#include
void fun( int m,
int a[10])
{ int
i;
for (i=0; i<10;
i++)
a[i]= 0;
while (m >
0)
{
i = m;
a[i]++;
m = m/10;
}
}
main()
{ int
m, a[10],i;
printf("请输入一个整数
:
"); scanf("%d",
&m);
fun(m,
a);
for (i=0;
i<10;
i++)
printf("%d,",a[i]);
printf("\n");
}
围绕山顶一圈有N个山洞,编号为0、1、2、3、……、N-1,有一只狐狸和一只兔子在洞中居住。狐狸总想找到兔子并吃掉它,它的寻找方法是先到第一个洞(即编号为0的洞)中找;再隔1个洞,即到编号为2的个洞中找;再隔2个洞,即到编号为5的洞中找;下次再隔3个洞;即到编号为9的洞中找;……。若狐狸找一圈,请为兔子指出所有不安全的洞号。程序中用a数组元素模拟一个洞,数组元素的下标即为洞号,数组元素中的值为0时,表示该洞安全,为1时表示该洞不安全。若形参n的值为30时,不安全的洞号是0、2、5、9、14、20、27。
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。
不得增行或删行,也不得更改程序的结构!
#include
#define
N
100
void fun( int *a ,
int n )
{ int
i, t;
for( i=0;
i
a[i]=0;
i=0;
t=1;
while(
i
{ a[i]= 1;
t++;
i=i+t;
}
}
main()
{ int
a[N], i, n=30;
fun( a,
n);
for(i=0;
i
if( a[i]==1 ) printf("不安全的洞号是
: %d\n",i
);
}
给定程序的主函数中,已给出由结构体构成的链表结点a、b、c,各结点的数据域中均存入字符,函数fun()的作用是:将a、b、c三个结点链接成一个单向链表,并输出链表结点中的数据。
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。
不得增行或删行,也不得更改程序的结构!
#include
typedef
struct list
{
char data;
struct
list *next;
} Q;
void fun( Q *pa, Q *pb, Q *pc)
{ Q
*p;
pa->next=pb;
pb->next=pc;
p=pa;
while( p
)
{
printf("
%c",p->data);
p=p->next;
}
printf("\n");
}
main()
{ Q
a, b, c;
a.data='E';
b.data='F';
c.data='G'; c.next=NULL;
fun(
&a, &b, &c
);
}
函数fun的功能是:输出a所指数组中的前n个数据,要求每行输出5个数。
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。
不得增行或删行,也不得更改程序的结构!
#include
#include
void fun( int *a, int n )
{ int
i;
for(i=0;
i
{
if( i%5==0 )
printf("\n");
printf("%d ",a[i]);
}
}
main()
{ int
a[100]={0}, i,n;
n=22;
for(i=0;
i
fun( a,
n);
printf("\n");
}
给定程序中,函数fun的功能是:在任意给定的9个正整数中找出按升序排列时处于中间的数,将原数据序列中比该中间数小的数用该中间数替换,位置不变,在主函数中输出处理后的数据序列,并将中间数作为函数值返回。
例如,有9个正整数:1
5 7
23 87
5 8
21 45
按升序排列时的中间数为:8
处理后主函数中输出的数列为:8
8 8
23 87
8 8
21 45
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。
不得增行或删行,也不得更改程序的结构!
#include
#define
N
9
int fun(int x[])
{ int
i,j,k,t,mid,b[N];
for(i=0;i
for(i=0;i<=N/2;i++)
{ k=i;
for(j=i+1;j
if(b[k]>b[j])
k=j;
if(k
!= i )
{
t=b[i]; b[i]=b[k]; b[k]=t;
}
}
mid=b[N/2];
for(i=0;
i
if(x[i]
return mid;
}
main()
{ int
i, x[N]={1,5,7,23,87,5,8,21,45};
for(i=0;
i
",x[i]);
printf("\nThe mid
data is: %d\n",fun(x));
for(i=0;
i
",x[i]);
printf("\n");
}
函数fun的功能是:计算
直到。若x=2.5,函数值为:1.917915。
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。不得增行或删行,也不得更改程序的结构!
#include
#include
double fun(double x)
{
double f,
t;
int n;
f = 1.0 +
x;
t = x;
n = 1;
do {
n++;
t *= (-1.0)*x/n;
f += t;
}
while (fabs(t)>= 1e-6);
return f;
}
main()
{ double x,
y;
x=2.5;
y =
fun(x);
printf("\nThe
result is :\n");
printf("x=%-12.6f
y=%-12.6f\n", x, y);
}
程序通过定义学生结构体变量,存储了学生的学号、姓名和3门课的成绩。函数fun的功能是将形参a中的数据进行修改,并把a中地址作为函数值返回主函数,在主函数中输出修改后的数据。
例如:a所指变量s中的学号、姓名、和三门课的成绩依次是:10001、" ZhangSan
"、95、80、88,修改后输出t中的数据应为:10002、"LiSi "、96、81、89。
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。
不得增行或删行,也不得更改程序的结构!
#include
#include
struct student {
long
sno;
char
name[10];
float score[3];
};
struct student *fun(struct student
*a)
{ int i;
a->sno =
10002;
strcpy(a->name,
"LiSi");
for (i=0; i<3; i++)
a->score[i] += 1;
return a ;
}
main()
{ struct student
s={10001,"ZhangSan", 95, 80, 88},
*t;
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");
t =
fun(&s);
printf("\nThe data after modified
:\n");
printf("\nNo:
%ld Name:
%s\nScores: ",t->sno,
t->name);
for (i=0; i<3;
i++) printf("%6.2f ",
t->score[i]);
printf("\n");
}
给定程序中,函数fun的功能是:把形参s所指字符串中最右边的n个字符复制到形参t所指字符数组中,形成一个新串。若s所指字符串的长度小于n,则将整个字符串复制到形参t所指字符数组中。
例如,形参s所指的字符串为:abcdefgh,n的值为5,程序执行后t所指字符数组中的字符串应为:defgh。
请在程序的下划线处填入正确的内容并把下划线删除, 使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。
不得增行或删行,也不得更改程序的结构!
#include
#include
#define
N 80
void fun(char *s,
int n,
char *t)
{ int len,i,j=0;
len=strlen(s);
if(n>=len)
strcpy(t,s);
else {
for(i=len-n; i<=len-1;
i++) t[j++]= s[i];
t[j]='\0';
}
}
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的功能是:在3×4的矩阵中找出在行上最大、在列上最小的那个元素,若没有符合条件的元素则输出相应信息。
例如,有下列矩阵:
1
2
13
4
7
8
10
6
3
5
9
7
程序执行结果为:find:a[2][2]=9
请在程序的下划线处填入正确的内容并把下划线删除, 使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。
不得增行或删行,也不得更改程序的结构!
#include
#define
M 3
#define
N 4
void fun(int (*a)[N])
{ int
i=0,j,find=0,rmax,c,k;
while( (i
&& (!find))
{
rmax=a[i][0]; c=0;
for(j=1; j
if(rmax
rmax=a[i][j]; c=j; }
find=1; k=0;
while(k
{
if (k!=i &&
a[k][c]<=rmax)
find=0;
k++;
}
if(find) printf("find: a[%d][%d]=%d\n",i,c,a[i][c]);
i++;
}
if(!find) printf("not
found!\n");
}
main()
{ int x[M][N],i,j;
printf("Enter number for
array:\n");
for(i=0; i
i++)
for(j=0; j
scanf("%d",&x[i][j]);
printf("The array:\n");
for(i=0; i
i++)
{
for(j=0; j
printf("\n\n");
}
fun(x);
}
给定程序中,函数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
#define
N 3
#define
M 4
void fun(int (*a)[N], int k)
{ int i,temp ;
for(i=0; i
i++)
{ temp=a[0][i];
a[0][i]=a[k][i];
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
i++)
{
for(j=0; j
printf("\n\n");
}
fun(x,2);
printf("The array after
moving:\n\n");
for(i=0; i
i++)
{
for(j=0; j
printf("\n\n");
}
}