文档库 最新最全的文档下载
当前位置:文档库 › c++编程小题目及答案

c++编程小题目及答案

99: 第99题 请编写函数fun ,其功能是:计算并输出3到n之间所有素数的平方根之和。

#include
#include
double fun(int n)
{ int i,m,k;
double s=0.0;
for(m=3;m<=n;m++)
{ k=sqrt(m);
for(i=2;i<=k;i++)
if(m%i==0) break;
if(i>=k+1) s+=sqrt(m);
}
return s;
}
main()
{ int n;
double s;
printf("qing shu ru:n=");
scanf("%d",&n);
s=fun(n);
printf("\n%lf\n",s);
}


98: 第98题 请编写函数fun,它的功能是:计算并输出n(包括n)以内能被5或9整除的所有自然数的倒数之和。

#include "stdio.h"
double fun(int n)
{ int i;
double s=0.0, k=1.0;
for(i=1;i<=n;i++)
if(!(i%5)||!(i%9))
s=s+(k/i);
return s;
}
main()
{ int n;
double s;
printf("qing shu ru:n=");
scanf("%d",&n);
s=fun(n);
printf("\n");
printf("n=%d,s=%lf\n",n,s);
}


96: 第96题 请编写函数fun,其功能使:计算并输出给定数组(长度为9)中每相邻两个元素之平均值的平方根之和。

#include "stdio.h"
#include "math.h"
#define N 9
double fun(double a[])
{ float n,s=0.0;
int i;
for(i=0;is+=sqrt((a[i]+a[i+1])/2);
return s;
}
main()
{ double a[N]={5,6,4,5,7,6,5,4,3},i;
double s;
for(i=0;iprintf("%5d",a[i]);
s=fun(a);
printf("\n%fl\n",s);
}


94: 第94题 规定输入字符串中只包含字母和*号。请编写函数fun,它的功能是:将函数字符串中的前导*号全部删除,中间和尾部的*号不删除。

#include "stdio.h"
void fun(char *a)
{ int i,j=0,k;
while(a[j]=='*')
j++;
k=strlen(a)-j;
for(i=0;a[j];i++)
a[i]=a[j++];
a[i]='\0';
}
main()
{ char *a="******adfjksafj***";
printf("\n");
puts(a);
fun(a);
puts(a);
}

89: 第89题 学生的记录是由学号和成绩组成,n名学生的数据已在主函数中放入结构体数组s中,请编写函数fun,它的功能是:把高于等于平均分的学生数据放在b所指的数组中,高于等于平均分的学生人数通过形参n传回,平均分通过函数值返回。
#include "stdio.h"
#define N 5
struct S
{ char a[10];
int b;
};
double fun(struct S s[],struct S b[],int *n)
{ int i,j=0;
double k=0.0;
for(i=0;ik+=(s[i].b);
k=k/N;
for(i=0;iif(k<=(s[i].b)) b[j++]=s[i];
*n=j;
return k;
}
main()
{ struct S a[N]={{"J01",98},{"J02",78},{"j03",89},{"j04",85},{"j05",80}},b[N];

int i,n;
double j;
for(i=0;iprintf("\nxue hao:%s chen ji:%d\n",a[i].a,a[i].b);
j=fun(a,b,&n);
printf("\njun fen:%lf,ren shu:%d\n",j,n);
for(i=0;iprintf("\nxuehao:%s chen ji:%d\n",b[i].a,b[i].b);
printf("\n\n");
}
80: 第80题 程序定义了n×n的二维数组,并在主函数中自动赋值。请编写函数fun,该函数的功能是:使数组左下半三角元素中的值乘以n。

#include "stdio.h"
#includ

e "stdlib.h"
#define N 5
fun(int b[N][N],int n)
{ int i,j;
for(i=0;ifor(j=0;j<=i;j++)
b[i][j]=b[i][j]*n;
}
main()
{ int a[N][N],i,j,n;
for(i=0;i{ for(j=0;jprintf("%5d",a[i][j]=rand()%100);
printf("\n\n");
}
scanf("%d",&n);
fun(a,n);
for(i=0;i{ for(j=0;jprintf("%5d",a[i][j]);
printf("\n\n");
}
}




相关文档