C语言程序设计习题集
printf(“\\n”); }
7.以下程序的输出结果是 。 (2级) #include
printf(\}
void main(void) { int i;
for (i=1; i<=3; i++) f( i );
}
8.以下程序的输出结果是 。 (2级) #include
increment(); increment(); }
void increment(void) {
static int x = 8; x ++;
printf(\
}
9.若有以下程序,执行后输出结果是 。(2级) int f(int x,int y)
{ return((y-x)*x); } main()
{ int a=3,b=4,c=5,d; d=f(f(3,4),f(3,5)); printf(\}
10. 假如在运行程序时输入5 ,写出程序的运行情况及最终结果: 。
67
C语言程序设计习题集
(01~02第二学期试题)
float fac(int n) { float f ;
if(n<0){printf(“n<0,dataerror!”);
f=-1;}
else if (n==0||n==1) f=1;
else f=fac(n-1)*n; return(f);
} main( ) {int n ; float y ;
printf(“input a integer number:”); scanf(“%d”,&n); y=fac(n);
printf(“%d!=%5.0f”, n,y); }
11.下面程序的运行结果是: 。(03试题) func( int x, int y) { int z;
z=x+y; return(z); } main( )
{ int a=6, b=7, c=8, r;
r=func( ( a--, b++, a+b), c--);
printf(“%d”, r) ; }
12.下面程序的运行结果是: 。(04~05第二学期试题) func( int a) { int b=0,c=3;
b++;c++; return(a+b+c);} main( ) { int a=2,i;
for(i=0;i<3;i++) printf(“%d”,func(a)); }
13. 下面程序的运行结果是: 。(往届试题) main( )
68
C语言程序设计习题集
{ int i=5 ;
printf(“%d\\n”, sub(i) ); } sub( int n) { int a;
if(n==1) a=1;
else a= n+sub(n-1); return(a); }
14.下面程序的运行结果是:___________。(往届试题) main( ) { int i=2,p; p=f( i++, ++i ); printf(“%d”, p); } int f( int a, int b ) { int c;
if(a>b) c=1;
else if(a==b) c=0; else c=-1; return(c); }
15. 以下程序的运行结果是:____________。(往届试题) main( )
{ int a[3][3] = { 1, 3, 5, 7, 9, 11, 13, 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.有一个数组,内放10个学生的英语成绩,写一个函数,求出平均分,并且打印
69
C语言程序设计习题集
出高于平均分的英语成绩。(04~05第二学期试题)
2.编写一个函数计算任一输入的整数的各位数字之和。主函数包括输入输出和调用该函数。(1级)
3.已有函数调用语句c=add (a,b);请编写add函数,计算两个实数a和b的和,并返回和值。(1级)
double add (double x, double y) { }
4.已有变量定义语句double a=5.0;int n=5;和函数调用语句mypow (a, n);用以求a的n次方。请编写double mypow (double x, int y)函数。(2级) double mypow (double x, int y)
{ } n
5.已有变量定义和函数调用语句int a, b;b=sum (a);函数sum( )用以求 k, k=1 和数作为函数值返回。若a的值为10,经函数sum的计算后,b的值是55。请编写sum函数。(1级) sum (int n) { }
6.已有变量定义和函数调用语句:int a=1, b=﹣5, c;c=fun (a,b);fun函数的作用是计算两个数之差的绝对值,并将差值返回调用函数,请编写fun函数。(1级) fun (int x, int y) { }
7.已有变量定义和函数调用语句:int x=57;isprime (x);函数isprime ( )用来判断一个整型数a是否为素数,若是素数,函数返回1,否则返回0。请编写isprime 函数。(1级)
isprime (int a) { }
8.利用递归函数调用方式,将所输入的5个字符,以相反顺序打印出来。(2级) 9.函数的递归调用计算阶乘。(2级)
10. 输入10个学生的成绩,分别用函数实现:(往届试题) (1)求平均成绩;
(2)按分数高低进行排序并输出。
11. 若有一4*4二维数组,试编程完成如下功能:(往届试题) (1)求4*4列数组的对角线元素值之和。
(2)将二维数组元素行列互换后存入另一数组,并将此数组输出。
12. 有两个字符串,各有10个字符,是编程完成如下功能:(往届试题) (1)分别找出两个字符串中最大的字符元素;
(2)将两字符串对应位置元素逐个比较,并统计输出两个字符串对应元素大于、小于和等于的次数。
70
相关推荐: