C语言程序设计练习题(含程序及参考答案) 联系客服

发布时间 : 星期一 文章C语言程序设计练习题(含程序及参考答案)更新完毕开始阅读c8cbdbe8f8c75fbfc77db2db

2010-2011 C语言程序试题及答案

1、定义一个函数int fun(int a,int b,int c),它的功能是:若a,b,c能构成等边三角形函数返回3,若能构成等腰三角形函数返回2,若能构成一般三角形函数返回1,若不能构成三角形函数返回0。 #include

int fun(int a,int b,int c) {

if(a+b>c && b+c>a && a+c>b) {

if(a==b && b==c )

return 3;

else if(a==b||b==c||a==c) return 2;

else return 1; }

else return 0; }

void main() {

int a,b,c,shape;

printf(\scanf(\

printf(\ shape =fun(a,b,c);

printf(\}

2、编写一个程序,将两个变量的值交换, 例如变量a中的值原为 3,b中的值原为8,程序运行后 a 中的值为8,b中的值为3。 #include void fun(int *x,int *y) {

int t;

t=*x;*x=*y;*y=t

第 1 页 共 34 页

}

void main() {

int a=3,b=8;

printf(\ fun(&a,b);

printf(\}

3、从键盘输入3个数,将最大值放在变量a中,最小值放在变量c中。 例如,输入的数为:55 12 34, 输出结果应当是:a=55.0,b=34.0,c=12.0。 #include

void fun(float *p,float *q,float *s) {

float k; if (*p<*q)

{ k=*p;*p=*q;*q=k;} if (*q<*s)

{ k=*s;*s=*p;*p=k;}

if (*p<*q)

{ k=*p;*p=*q;*q=k;} }

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

printf(\ printf(\ fun(&a,&b,&c);

printf(\}

4、编写函数fun(int n),它的功能是:计算正整数n的所有因子(1和n除外)之和作为函数值返回。例如:n=120时,函数值为239。 #include

第 2 页 共 34 页

#include int fun(int n) {

int i,s=0; for (i=2;i

void main() /*主函数*/ {

void NONO();

printf(\NONO(); }

void NONO( )

{/* 请在此函数内打开文件,输入测试数据,调用 fun 函数, 输出数据,关闭文件。 */ FILE *wf;

wf = fopen(\ fprintf(wf,\ fclose(wf) ; }

5、计算s,并输出

1 1 1 S = 1 + ── + ─── + ?? + ────── 1+2 1+2+3 1+2+3+?+n

n通过键盘输入,例如:若n的值为11时,则函数值为:1.833333 #include #include float fun(int n) { int i;

float s=1.0,h=1;

第 3 页 共 34 页

for (i=2;i<=n;i++) {

h=h+i; s=s+1.0/h;

}

return s; }

void main() {

int n;float s;

printf(\ s=fun(n);

printf(\ }

6、将一个整数中的每一位上为奇数的数依次取出,构成一个新数放在t中。高位仍在高位,低位仍在低位。例如,当s中的数为:87653142时,t中的数为:7531。 #include void fun(long s,long *t) { int d; long s1=1; *t=0;

while (s>0) {

d=s; if(d%2!=0) {

*t=d*s1+*t; s1=s1*10;

} s/=10; } }

第 4 页 共 34 页