C语言程序设计练习题(含程序及参考答案) 下载本文

.

#include float fun(int a,int b,int c) { float p; p=(a+b+c)/2;

return sqrt(p*(p-a)*(p-b)*(p-c));

}

void main() { int a,b,c;

printf(“请输入三角形三条边:\\n”); scanf(“%d%d%d”,&a,&b,&d); if(a+b>c && b+c>a && a+c>b) printf(“三角形面积为:%.2f”,fun(a,b,c)); else

printf(“无法构成三角形”); }

25、编写程序,求E=1+1/1!+1/2!+……+1/n!,要求最后一项的值小于10-4 #include double fun(int n)

整理版

.

{

double m=1.0; int i=1; double p=1.0; do{

m=m+1.0/p;

i++; p=p*i;

} while(1.0/p>=1E-4); return m; }

void main() {

int n; double s;

printf(\ \ scanf(\ s=fun(n); printf(\ }

26、计算并输出给定数组(长度为9)中每相邻两个元素之平均值的平方根之和。

例如,给定数组中的9个元素依次为12.0、34.0、4.0、23.0、

整理版

.

34.0、45.0、18.0、3.0、11.0,输出应为:s=35.951014。 #include #include double fun(double x[9]) {

int i ;

double avg=0.0,sum=0.0; for (i=0;i<8;i++) {

avg=(x[i]+x[i+1])/2; sum+=sqrt(avg); }

return sum; }

void main() {

double s,a[9]={12.0,34.0,4.0,23.0,34.0,45.0,18.0,3.0,11.0}; int i;

printf(\

for(i=0;i<9;i++)printf(\ printf(\ s=fun(a);

printf(\ }

整理版

.

27、将1到m之内(含m)能被7或11整除的所有整数放在数组a中。

例如,若输入m的值为50,则在数组a中的值为: 7 11 14 21 22 28 33 35 42 44 49

#include #define M 100

void fun ( int m, int *a , int *n ) {

int i,count=0; for(i=1;i<=m;i++){

if(i%7==0 || i==0) { a[count++]=i; } } *n=count; }

void main( ) {

int aa[M], n, k; fun ( 50, aa, &n );

整理版