文档库 最新最全的文档下载
当前位置:文档库 › c语言综合练习

c语言综合练习

c语言综合练习
c语言综合练习

综合练习2

1.以下程序的运行结果是

#define MAX 10

int a[MAX],I;

main()

{printf(“\n”);sub1();sub3(a);sub2();sub3(a);

}

sub2()

{int a[MAX],I,max;

max=5;

for(I=0;I

}

sub1()

{for(I=0;I< MAX;I++) a[j]=I+1;

}

sub3(int a[])

{int I;

for(I=0;I

printf(“\n”);

}

2.以下程序的正确运行结果是( ).

#include <>

void num()

{extern int x,y;int a=15,b=10;

x=a-b;

y=a+b;

}

int x,y;

main()

{ int a=7,b=5;

x=a+b;

y=a-b;

num();

printf(“%d,%d\n”,x,y);

}

3.以下程序的运行结果是 .

main()

{int a=2,I;

for (I=0;I<3;I++) printf(“4%d”,f(a));

}

{ int b=0;static int c=3;

b++; c++;

return(a+b+c);

}

4.以下程序的功能是根据输入的“y”(“Y”)与“n”(“N”),在屏幕上分别显示出“This is YES.”与“This is NO.”。请填空。

#include <>

void YesNo(char ch)

{ switch(ch)

{ case’y’:

case’Y’:printf(“\nThis is YES.\n”);break;

case’n’:

case’N’: printf(“\nThis is NO.\n”)

}

}

main()

{char ch;

printf(“\nEnter a char ‘y’,’Y’,or’n’,’N’);

ch=___________________;

printf(“ch:%c”,ch);

YesNo(ch);

}

5. 以下Check函数的功能是对value中的值进行四舍五入计算,若计算后的值与ponse值相等,则显示“WELL DONE!!”,否则显示计算后的值。已有函数调用语句Check(ponse,value);请填空。

Void Check(int ponse,float value)

{int val;

val=_______________________________;

printf(“计算后的值:%d”,val);

if(_____________________) printf(“\n WELL DONE!!!\n”);

else printf(“\nSorry the correct is %d\n”,val);

}

6.若输入一个整数10,以下程序的运行结果是【】。

main()

{ int a,e[10],c,i=0;

printf(“输入一整数\n”);

scanf(“%d”,&a);

while(a!=0)

{c=sub(a);

a=a/2;

e[i]=c;

}

for(;i>0;i--) printf(“%d”,e[i-1]);

}

sub(int a)

{ int c;

c=a%2;

return c;

}

7. 函数gongyu 的作用是求整数num1和num2的最大公约数,并返回该值,请填空 gongyu(int num1,int num2)

{ int temp,a,b;

if(num1______num2)

{ temp=num1; num1=num2; num2=temp;}

a=num1; b=num2;

while(_________)

{ temp=a%b; a=b; b=temp; }

return(a);

}

8. 下面函数pi的功能是:根据以下攻势,返回满足精度要求的pi的值

pi 1 1 2 1 2 3 1 2 3 4

─ = 1+─ +── + ─── + ──── +···

2 3 3 5 3 5 7 3 5 7 9

#include<>

#include<>

#include<>

double pi(double eps)

-140-

{ double s,t; int n;

for(_____________;t>eps;n++)

{ s+=t;

t=n*t/(2*n+1);

}

return(__________);

}

main()

{ double x;

printf(“\nPlease enter a precision:”);

scanf(“%lf”,&x);

printf(“\neps=%lf,pi=%lf”,x,pi(x));

}

9.以下程序的运行结果是【】.

#include <>

main()

{printf("FACT(5):%d\n",fact(5));

printf("FACT(1):%d\n",fact(1));

fact(-5);

}

fact(int value)

{if(value<0) {printf("FACT(<0):Error!\n");return(-1);} else if(value==1||value==0) return(1);

}

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

main()

{int i=5;

printf(“%d\n”,sub(i));

}

sub(int n)

{int a;

if(n==1) return 1;

a=n+sub(n-1);

return(a);

}

11.以下程序的运行结果是【】。

#include<>

f(int a[])

{int i=0;

while (a[i]<=10)

{printf(“%d”,a[i]);

i++;}

}

main()

{int a[]={1,5,10,9,11,7};

f(a+1);

}

12. 以下程序的运行结果【】。

main()

{ int a[3][3]={1,3,5,7,9,11,15,17}; int sum;

sum=func(a);

printf(“\nsum=%d\n”,sum);

}

func(int a[][3])

{ int i,j,sum=0;

for(i=0;i<3;I++)

for(j=0;j<3;j++)

{a[i][j]=I+j;

if(i==j)sum=sum+a[i][j];

}

return(sum);

}

编程题

1、写一函数,输入一个二进制数,输出相应的十进制数

2、输入10个整数,将其中最小的数与第一个数对换,把最大的数与最后一个数据对换。

写三个函数:(1)输入10个数据;(2)进行处理;(3)输出10个数据。

相关文档