CMS专题

名词解释题麻沸散má fèi sàn

题目
名词解释题
麻沸散má fèi sàn
如果没有搜索结果,请直接 联系老师 获取答案。
如果没有搜索结果,请直接 联系老师 获取答案。
相似问题和答案

第1题:

以下程序的输出结果是( )。f(int b[],int m,int n){int i,s=0;for(i=m;i<n;i=i+2)s=s+b[i];return s;}void main(){int x,a[]={1,2,3,4,5,6,7,8,9};x=f(a,3,7);printf("%d\n",x);}A.10 B.18 C.8 D.15


正确答案:A
函数的功能是对数组某一区域内的元素隔个求和;a[3]=4,所以从4开始进行隔个求和,a[7]=8,即对4到8的元素隔个求和,4+6=10。

第2题:

递延期为m期,连续支付n期,每期支付A元,折现率为i的递延年金现值等于 ( )。

A.A×(P/A,i,n)×(P/S,i,m)

B.A×[(P/A,i,m+n)-(P/A,i,m)]

C.A×[(P/A,i,m+n)×(P/A,i,m)]

D.A×(S/A,i,n)×(P/S,i,m+n)


正确答案:ABD
解析:选项AB都是教材上已有的方法;选项D实际上是先求出递延年金在第m+n年末的终值,再将其乘以m+n期的复利现值系数从而求得递延年金现值。

第3题:

下列各项中,代表递延年金现值系数的是( )。

A.(P/A,i,n)(P/F,i,n—s)

B.[(p/A,i,n)—(F/A,i,n—5)]

C.(P/A,i,s)(P/A,i,n—S)

D.(P/A,i,n—s)(P/F,i,s)


正确答案:D
解析:递延年金现值系数的计算公式为户=A[(P/A,i,n)-(P/A,i,s)]或:P=A(P/A,i,n-s)×(P/F,i,s)

第4题:

设有如下程序: Private Sub Form. Click( ) Dim s As Long,f As Long Dim n As Integer,i As Integer f=1 n=4 For i=1 To n f=f*i s=s+f Next i Print s End Sub 程序运行后,单击窗体,输出结果是( )。

A.32

B.33

C.34

D.35


正确答案:B
B。【解析】本题考查For循环,当f=1时,i=1,计算f=f*i=1*1=1;S=S十f=0十1=1,循环继续,当i=2时,f=f*i=1*2=2,S=s+f=1+2=3,循环继续,当i=3时,f=f*i=2*3=6,S=s+f=3+6=9,循环继凄,当i=4时,f=f*i=6*4=24,S=s+f=9+24=33,所以最后输出结果为33,答案选择B。

第5题:

学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组s中,请编写函数fun(),该函数的功能是:把高于等于平均分的学生数据放在b所指的数组中,低于平均分的学生数据放在c所指的数组中,高于等于平均分的学生人数通过形参n传回,低于平均分的学生人数通过形参m传回,平均分通过函数值返回。

注意:部分源程序给出如下。

请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。

试题程序:

include <stdio.h>

define N 12

typedef struct

{char num[10];

double S;

} STREC;

double fun(STREC *a,STREC *b,STREC *C,int *n,int *m)

{

}

main()

{

STREC s[N]={{“GA05”,65},{“GA03”,86},

{“GA02”,76},{“GA04”,95},{“GA01”,93},

{“GA07”,78},{“GA08”,68},{“GA06”,88},

{“GA09”,60},{“GAll”,54},{“GAl2”,56},

{“GAl0”,98}};

STREC h[N],l[N],t;

FILE *out;

int i,j,m,n;

double ave;

ave=fun(S,h,l,&n,&m);

printf("The %d student data which is higher than %7.3f:\n",n,ave);

for(i=0;i<n;i++)

printf("%s %4.lf\n",h[i].num,

h[i].s);

printf("\n");

printf("The %d Student data which iS lower than%7.3f:\n",m,ave);

for(i=0;i<m;i++)

printf("%s %4.1f\n",l[i].num, l[i].s);

printf("\n");

ut=fopen("out26.dat", "w");

fprintf(out, "%d\n %7.3f\n",n,ave);

for(i=0;i<n-1;i++)

for(j=i+1;i<n;j++)

if(h[i].s<h[j].s)

{t=h[i];h[i]=h[i];h[j]=t;}

/*分数从现到低排列*/

for(i=0;i<n; i++)

fprintf(out,“%4.1f\n",h[i].s);

fprintf(out,"%d\n %7.3f\n",m,ave);

for(i=0;i<m-1;i++)

for(j=i+1;i<m;j++)

if(l[i].s<l[j].s)

{t=l[i];l[i]=l[j];l[j]=t;}

/*分数从高到低排列*/

for(i=0;i<m;i++)

fprintf(out,"%4.1f\n",l[i].s);

fclose(out);

}


正确答案:double fun (STREC *aSTREC *bSTREC *C int *nint *m) { int i; double av=0.0; *n=0; *m=0; for(i=0;iN;i++) av=av+a[i].S; av=av/N; /*求平均值*/ for(i=0;iN;i++) if(av=a[i].s) { b[*n]=a[i]; /*将高于等于平均分的学生存从所指存储单元中并统计人数*/ *n=*n+l; } else { c[*m]=a[i]; /*将低于平均分的学生存入c所指存储单元中并统计人数*/ *m=*m+1; } return av; /*返回平均分*/ }
double fun (STREC *a,STREC *b,STREC *C, int *n,int *m) { int i; double av=0.0; *n=0; *m=0; for(i=0;iN;i++) av=av+a[i].S; av=av/N; /*求平均值*/ for(i=0;iN;i++) if(av=a[i].s) { b[*n]=a[i]; /*将高于等于平均分的学生存从所指存储单元中,并统计人数*/ *n=*n+l; } else { c[*m]=a[i]; /*将低于平均分的学生存入c所指存储单元中,并统计人数*/ *m=*m+1; } return av; /*返回平均分*/ } 解析:本题中第1个循环的作用求出所有分数的总和,只有进行了av=av/N后才得到平均值(我们在前面的程序中碰到过类似问题)。第2个循环的作用是将高于等于平均分的学生存/kb所指存储单元中,将低于平均分的学生存入c所指存储单元中。同一结构体变量之间可以互相赋值。
本程序中直接用*n,*m来分别表示b,c的下标,注意开始时要给*n,*m赋0,且使用时不能少*号。因为单独的n, m是一个指针变量,而我们要用的是它所指向的那个存储单元中的值。

第6题:

下面程序的运行结果是【17】。

#define N 10

#define s(x)x*x

#define f(x)(x*x)

main()

{ int i1,i2;

i1=1000/s(N); i2=1000/f(N);

printf("%d %d\n",i1,i2);

}


正确答案:
1000 10

第7题:

递延期为m期,连续支付n期,每期支付A元,折现率为i的递延年金现值等于 ( )。

A.A×(P/A,i,n)×(P/F,i,m)

B.A×[(P/A,i,m+n)-(P/A,i,m)]

C.A×[(P/A,i,m+n)×(P/A,i,m)]

D.A×(F/A,i,n)×(P/F,i,m+n)


正确答案:ABD
解析:选项AB都是教材上已有的方法;选项D实际上是先求出递延年金在第m+n年末的终值,再将其乘以m+n期的复利现值系数从而求得递延年金现值。

第8题:

函数 void fun(float *sn, int n)的功能是:根据以下公式计算S,计算结果通过形参指针sn传回;n通过形参传入,n的值大于等于0。请填空。

void fun( float *sn, int n)

{ float s=0.0, w, f=-1.0;

int i=0;

for(i=0; i<=n; i++)

{ f=( )* f;

w=f/(2*i+1);

s+=w; }

( )=s;}


正确答案:
-1;*sn

第9题:

下列给定程序中,函数fun()的功能是:从n个学生的成绩中统计出高于平均分的学生人数,人数由函数值返回,平均分存放在形参aver所指的存储单元中。例如输入8名学生的成绩:

85 65.5 69 95.5 87 55 62.5 75

则高于平均分的学生人数为4(平均分为74.312500)。

请改正程序中的错误,使它能得到正确结果。

注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。

试题程序:

include <stdio.h>

include <conio.h>

define N 20

int fun(float *S,int n,float *aver)

{

/*************found*************/

int ave,t=0;

int count=0,k,i;

for(k=0;k<n;k++)

t+=s[k];

ave=t/n;

for(i=0;i<n;i++)

/*************found***************/

if(s[i]<ave)

count++;

/*************found*************/

aver=ave;

return count;

}

main()

{

float S[30],aver;

int m,i;

clrscr();

printf("\nPlease enter m:");

scanf("%d",&m);

printf("\nPlease enter%d mark:\n",m);

for(i=0;i<m;i++)

scanf("%f",s+i);

printf("\nThe number of students:%d\n",

fun(S,m,&aver));

printf(“AVe=%f\n”,aver);

}


正确答案:(1)错误:int avet=0; 正确:float avet=O.O; (2) 错误:if(s[i]ave) 正确:if(s[i]>ave) (3) 错误:aver=ave; 正确: *aver=ave;
(1)错误:int ave,t=0; 正确:float ave,t=O.O; (2) 错误:if(s[i]ave) 正确:if(s[i]>ave) (3) 错误:aver=ave; 正确: *aver=ave; 解析:错误1:ave和t分别用来存放成绩的平均值和总分,应为实型数。错误2:根据题意,找出高于平均分的数,所以此处的关系运算符应为“>”错误3:aver是指针,而ave是—个数,不能将—个数赋值给一个指针,而要用符号‘*’。

第10题:

设有如下程序: fun(float*p1,int n,float*p2,int m,float*s) {int i; *s=0.0; for(i=0;i<n;i++)*s+=*p1++; for(i=0;i<m;i++)*s+=*p2++; } main() { float a[]={1.1,2.2},b[]={1.0,2.0,3.0),*s=a; fun(a,2,b,3,s); printf("%f\n",*s); } 上面程序的输出结果是______。

A.8.2

B.9.3

C.3.3

D.1.1


正确答案:A
解析:实参指针变量s指向数组a的第一个元素,在函数fun中首先将s所指数组a的第一个元素赋值为0.0,然后将数组a和b中的元素值依次累加到数组a的第一个元素中。

更多相关问题