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

.

{

printf(\ }

21、从键盘输入high,计算并输出high以内最大的10个素数之和。例如,输入high的值为100,则输出732。 #include

int fun( int high ) {

int sum = 0, n=0, j, yes; while ((high >= 2) && (n < 10)) {

yes = 1;

for (j=2; j<=high/2; j++ ) if (high % j ==0 )

{

yes=0; break; } if (yes==1) {

sum +=high; n++; }

整理版

.

high--; }

return sum ; }

void main ( ) {

printf(\ }

22、请编写函数float fun(int n),它的功能是:返回n(包括n)以内能被5或9整除的所有自然数的倒数之和。例如,n=20,返回0.583333。注意:要求n的值不大于100。 #include double fun(int n) { int i;

double sum=0.0; if(n>0&&n<=100) {

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

整理版

if(i%5==0||i%9==0)

sum+=1.0/i;

.

return sum; }

void main() {

int n; double s; printf(\ \ scanf(\ s=fun(n);

printf(\ }

23、请编一个函数fun(int *a, int n, int *odd, int *even),函数的功能是分别求出数组中所有奇数之和以及所有偶数之和。形参n给出数组a中数据的个数;利用指针odd返回奇数之和,利用指针even返回偶数之和。

例如:数组中的值依次为: 1,9,2,3,11,6;则利用指针odd返回奇数之和24;利用指针even 返回偶数之和8。

#include #define N 20

fun ( int *a, int n, int *odd, int *even ) {

int i,sum_odd=0,sum_even=0;

整理版

.

for(i=0;i

sum_odd+=a[i]; *odd=sum_odd; *even=sum_even; }

void main( ) {

int a[N]={1,9,2,3,11,6}, i, n=6, odd, even; printf ( \

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

fun ( a, n, &odd, &even );

printf ( \ %d\\n\ printf ( \ %d\\n\ }

24、编写计算三角形面积的程序,注意:将计算面积定义成函数float fun(int a,int b,int c)(a,b,c为三角形的三条边,返回三角形的面积),在主函数中调用fun #include

整理版