更多"以下fun函数的功能是:累加数组元素中的值,n为数组中元素的个数,累加"的相关试题:
[填空题]以下fun函数的功能是:累加数组元素中的值。n为数组中元素的个数。累加的和放入x所指的存储单元中。
fun(int b[],int n,int *x)
{ int k,r=0;
for(k=0;k<n;k++) r= 【15】 ;
【16】 =r;
}
[填空题]以下fun函数的功能是:累加数组元素中的值,n为数组中元素的个数。累加的和值放入x所指的存储单元中。补足所缺语句。
fun(int b[],int n,int *x)
int k,r=0;
for(k=0;k<n;k++)r= 【15】 ;
【16】 =r;
[简答题]请编写函数fun,其功能是求出数组的最大元素在数组中的下标并存放在k所指的存储单元中。
例如,输入如下整数:
876 675 896 101 301 401 980 431 451 777
则输出结果为:
6,980
注意:部分源程序在文件PROG1.C中,请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
文件PROG1.C内容如下:
#include<stdio.h>
void fun(int *s,int t,int *k)
void main( )
int a[10]=876,675,896,101,301,401,980,431,451,777,k;
fun(a,10,&k);
printf("The resuh:%d,%d/n",k,a[k]);
[填空题]下面程序调用fun函数动态分配两个整型存储单元,并通过形参传回这两个整型存储单元的地址给 s1和s2,将程序补充完整。
┇
main( )
int*s1,*s2;
┇
fun( 【11】 );
┇
int fun( 【12】 );
*p=(int *)malloc(sizeof(int));
*q=(int *)malloc(sizeof(int));
[填空题]下列给定程序中,函数fun的功能是:统计带头结点的单向链表中结点的个数,并存放在形参n所指的存储单元中。
请在下划线处填入正确的内容并将下划线删除,使程序得出正确的结果。
注意:部分源程序给出如下。
不得增行或删行,也不得更改程序的结构!
试题程序:
#include <stdio.h>
#include <stdlib.h>
#define N 8
typedef struct list
int data;
struct list *next;
SLIST;
SLIST *creatlist(int *a);
void outlist(SLIST *);
void fun(SLIST *h, int *n)
SLIST *p;
/******************found*******************/
(1) =0;
p=h->next;
while(p)
(*n)++;
/******************found*******************/
p=p-> (2) ;
main( )
SLIST *head;
int a[N]=12, 87, 45, 32, 91, 16, 20, 48, num;
head=creatlist(a);
outlist(head);
/******************found*******************/
fun( (3) , &num);
printf("/nnumber=%d/n", num);
SLIST *creatlist(int a[])
SLIST *h, *p, *q; int i;
h=p=(SLIST *)malloc(sizeof(SUST));
for(i=0; i<N; i++)
q=
[填空题]以下程序调用随机函数得到N个20以内的整数放在s数组中。函数fun的功能是找出s数组中的最大数(不止一个)所在下标传回主函数进行输出,并把最大值作为函数值返回,请填空。
#define N 30
man( )
int s[N],d[N],i,k,m;
for(i=0,i<N;i++)s[i]=rand( )%20;printf("%3d",s[i]);
m=fun( 【13】 );
printf("m=%d/n",m);
printf(”The index ;/n");
for(i=0;i<k;i++)printf("%4d",d[i]);
printf("/n/n");
fun(int*w,int*d,int * k)
int i,j,m=0,v;
for(i=0;i<N;i++)
if(w[i]>w[m]) 【14】 ;
v=w[m];
for(i=0,j=0;i<N;i++)
if(w[i]==v) 【15】 ;
*k= 【16】 ;
return 【17】 ;
[单项选择]以下函数findmin拟实现存数组中查找最小值作为函数值返回,但程序中有错导致不能实现预定功能。
#define MAX 2147483647
int findmin(int x[],int n)
int i,min;
min=MAX;
for(i=0;i<n;i++)
if(min<x[i])min=x[i];
造成错误的原因是( )。
A. 定义语句int i,min;中min未赋初值
B. 赋值语句min=MAN;中,不应给min赋MAX值
C. 语句if(min<X[i])min=X[i];中判断条件设置错误
D. 赋值语句min=MAX;放错了位置
[单项选择]以下函数findmax拟实现在数组中查找最大值并作为函数值返回,但程序中有错导致不能实现预定功能。
#define MIN-2147483647
int findmax(int x[],int n)
int i,max;
for(i=0;i<n;i++)
max=MIN;
if(max<x[i])max=x[i];
return max;
造成错误的原因是( )。
A. 定义语句“int i,max;”中,max未赋初值
B. 赋值语句“max=MIN”;中,不应给max赋MIN值
C. 语句“if(max<x[i]max=x[i])”中,判断条件设置错误
D. 赋值语句“max=MIN;”放错了位置
[简答题]请编写函数fun( ),函数的功能是求出二维数组周边元素之和,作为函数值返回。二维数组中的值在主函数中赋予。
例如:若二维数组中的值为
1 3 5 7 9
2 9 9 9 4
6 9 9 9 8
1 3 5 7 0
则函数值为61。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
试题程序:
#include<conio.h>
#include<stdio.h>
#define M 4
#define N 5
int fun( int a [M][N])
{
}
main( )
{
int aa[M][N]={{1,3,5,7,9},{2,9,9,9,4},
{6,9,9,9,8},{1,3,5,7,0}};
int i, j, y;
clrscr( );
printf ("The original data is :/n ");
for(i=0; i<N;i++)
{for (j=0; j<N;j++)
printf("%6d ",aa[i][j]);
printf("/n ");
}
y=fun(aa);
printf("/nThe sun:%d/n ",y);
printf("/n");
}
[单项选择]以下函数findmax拟实现在数组中查找最大值并作为函数值返回,但程序中有错导致不能实现预定功能,造成错误的原因是
#define MIN -2147483647
int findmax (int X[], int n)
int i, max;
for(i=0; i<n; i++)
max=MIN;
if(max<x[i]) max=x[i];
return max;
A. 定义语句int i, max; 中max未赋初值
B. 赋值语句max=MIN;中,不应给max赋MIN值
C. 语句if(max<x[i]) max=x[i];中判断条件设置错误
D. 赋值语句max=MIN;放错了位置
[填空题]以下函数用来在w数组中插入x。n所指向的存储单元中存放w数组中字符个数。数组w中的字符已按从小到大的顺序排列,插入后数组w中的字符仍有序。请填空。
void fun(char*w,char x,int*n)
int i, p;
p=0;
w[*n]=x;
while(x>w[p])p++;
for(i=*n;i>p;i--)w[i]= 【13】 ;
w[p]=x;
++ *n;
[填空题]请补充函数fun( ),该函数的功能是把数组bb中的数按从小到大的排列(数组的值及元素个数从土函数中输入)。
例如,输入2 3 5 4 1,结果为1 2 3 4 5。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun( )吧的横线上填入所编写的若干表达式或语句。
试题程序:
# include<stdio. h>
# define N 100
void fun(int bb[], int n)
int i,j,t;
for (i=0; 【1】 ;i++)
for(j=0; 【2】 ;j++)
if(bb[j]>bb[j+1] )
t=bb[j];
bb [j]=bb [j+1];
bb[j+1]=t;
main( )
int i=0, n=0;
int bb[N];
clrscr ( );
printf("/nInput n: /n");
scanf ("%d", &n);
printf ("/nInput data: /n");
while (i<n)
printf ("bb [%d] =", i);
scanf ("%d", &bb [i]);
i++;
fun (bb, n);
printf("/n*** the result ***/n");
for (i=0; i<n; i++ )
printf ( "%4d’’, bb [i]);