1、3G 梦工场 1程序测试题_C方正1.选择题 (共 30 分 3 分/题)1.以下程序运行后,输出结果是( )。main() int i,k,a10,p3;k=5;for (i=0;i456789,输出结果是( )。 A. 123,456,789 B. 1,456,789C. 1,23,456,789 D. 1,23,456main() char s100; int c, i;scanf(“%c“, scanf(“%d“, scanf(“%s“,s);printf(“%c,%d,%sn“,c,i,s);3.以下所列的各函数首部中,正确的是( ) 。A. void play(var :Inte
2、ger,var b:Integer)B. void play(int a,b)C. void play(int a,int b)D. Sub play(a as integer,b as integer)4.以下程序中函数 reverse 的功能是将 a 所指数组中的内容进行逆置。void reverse(int a ,int n) int i,t;3G 梦工场 2for(i=0;if(int a) int b=0; static c=3;a=c+,b+;return (a); main( ) int a=2,i,k;for(i=0;imain()int a10=1,2,5,8,9,10,
3、an=5,b10=1,3,4,8,12,18,bn=5;int i,j,k,c20,max=9999;aan+1=bbn+1=max;i=j=k=0;while(ai!=max)|(bj!=max)if(aimain()int i, j, row, column,m;static int array33=100,200,300,28,72,-30,-850,2,6;m=array00;for (i=0; i3; i+)for (j=0; j3; j+)if (arrayijm) m=arrayij; row=i; column=j;printf(“%d,%d,%dn“,m,row,column
4、);上述程序的输出结果是 _。4.以下程序中,主函数调用了 LineMax 函数,实现在 N 行 M 列的二维数组中,找出每一行上的最大值。请填空。#define N 3#define M 4void LineMax(int xNM)int i,j,p;for(i=0; iN;i+) p=0;for(j=1; jM;j+)3G 梦工场 6if(xipxij) 【1】 ; printf(“The max value in line %d is %dn“, i, 【2】 ); main()int xNM=1,5,7,4,2,6,4,3,8,2,3,1;【3】 ; 5.用递归方法求 n!。floa
5、t fac(int n)float f;if(n0) printf(“n0,data error! “);else if( 【1】 ) f=1; else f= 【2】 ; return(f);main()int n=6;float y;printf(“n“);【3】 ; printf(“%d!=%5.0f“,n,y);6.计算圆的周长、面积和球的体积#define PI 3.1415926#define 【1】 L=2*PI*R; 【2】 ; main() float r,l,s,v; printf(“input a radus: “);scanf(“%f“, CIRCLE(r,l,s,v)
6、;printf(“r=%.2fn l=%.2fn s=%.2fn v=%.2fn“, 【3】 ); 7.以下程序将数组 a 中的数据按逆序存放。请填空。#include “stdio.h“#define M 10main()3G 梦工场 7 int aM, m, n, temp;for( m=0; mM; m+) scanf (“%d“, a+m);m=0;n=M-1;while(mn) temp=*(a+m);【1】;*(【2】)=temp;m+;n-;for (m=0;mM;m+) printf(“%3d“, *(a+m);8.当运行以下程序时,从键盘输入 6,则下面程序的运行结果是_。#include “stdio.h“#include “string.h“main() char s=“97531“, c;c=getchar();f(s,c);puts(s);f(char *t, char ch) while (*(t+)!=0);while(*(t-1 )ch)*(t-)=*(t-1);*(t-)=ch;3.编程题 (共 38 分 19 分/题)1.编写一个函数,输入 n 为偶数时,调用函数求 1/2+1/4+.+1/n,当输入 n 为奇数时,调用函数 1/1+1/3+.+1/n(利用指针函数)3G 梦工场 82.反向输出一个链表