1、全国高等教育自学考试高级语言程序设计考试试题 标准化管理部编码-99968T-6889628-J68568-1689N全国高等教育自学考试高级语言程序设计考试试题全国2003年1月高等教育自学考试高级语言程序设计(一)试题课程代码:00342第一部分 选择题一、单项选择题(本大题共20小题,每小题1分,共20分)在每小题列出的四个选项中只有一个选项是符合题目要求的,请将正确选项前的字母填在题后的括号内。1.属于C语言基本数据类型的是( ) A.指针型 B.无符号整型 C.数组型 D.结构型语言的长整型数值在计算机中占用的字节个数是( ) 语言中,x3d在内存中占用的字节数是( ) 4.设int
2、 x;则执行printf(%xn,xx);的结果是( ) 5.对于while语句,错误的说法是( ) A.用条件控制循环体的执行次数 B.循环体至少要执行一次 C.循环体有可能一次也不执行 D.循环体中可以包含若干条语句6.设int a=9,b=20;则printf(%d,%dn,a-,-b);的输出结果是( ) ,19 ,20 ,19 ,207.执行下列语句 int a=8,b=7,c=6; if(ac)a=c;c=b; printf(%d,%d,%dn,a,b,c); 后输出的结果是( ) ,7,7 ,7,8 ,7,6 ,7,88.设static char x =12345,y =1,2,
3、3,4,5,0;那么( ) 数组的长度等于y数组的长度 数组的长度大于y数组的长度 数组的长度少于y数组的长度 数组与y数组的存储区域相同9.设int i,x33=1,2,3,4,5,6,7,8,9; 则下面语句 for(i=0;i=A & ch=Z)ch+32:ch);的值是_。23.结构化程序设计的三种基本结构是:选择结构、循环结构和_。24.下列程序 int x=3; doprintf(%d,-x);while(!x); 循环执行的次数是_。25.在C语言中,一个二维数组可以看成若干个_数组。26.设int a34=1,3,5,7,2,4,6,8;则*(*a+1)的值为_。27.若函数定
4、义为 int data( ) float x=; return(x); 则函数返回的值是_。28.设struct student int no;char name12; float score3; s1,*p=&s1;. 用指针变量p给s1的成员no赋值1234的方法是_。29.判断文本文件是否结束时使用的符号常量EOF的值是_。30.设有一个名为的C程序, 其主函数为mian(int argc,char *argv )。如果在执行时,输入的命令行为 myfile aa bb 则形式参数argc的值是_。三、程序分析题(本大题共5小题,每小题5分,共25分) 阅读下列程序,将输出结果写到各题右
5、侧的空白处(int x) int y=0; static int z=3; z+;+y; return(x+y+z); main( ) int I,x=2; for(i=0;i50)break; if(i%2=0) s+=i; printf(i=%d,s=%dn,i,s); (int m,int n) if(m=n)return m; else if(mn) return gcd(m-n,n); else return gcd(m,n-m); main( ) printf(Gcd=%dn,gcd(24,36); 34.# include main( ) int i=0; char c,s=SA
6、BC; while(c=si) switch(c) case A:i+;break; case B:+i; default:putchar(c);i+; putchar(*); a1=300,a2=400; main( ) int a3=100,a4=200; sub1(a3,a4); sub1(a1,a2); printf(%d,%d,%d,%dn,a1,a2,a3,a4); sub1(int x,int y) a1=x; x=y; y=a1; 四、程序填充题(本大题共3小题,每小题6分,共18分) 给出下列程序,将横线处缺少的部分补上,使其能正确运行。36.将十个整数输入数组,求出其平均值
7、并输出。 main( ) int i,a10,sum=0,*p=_; /*第一空*/ for(i=0;i10;i+) scanf(%d,p);sum+=_; /*第二空*/ printf(%8.2fn,_); /*第三空*/ 37.输入一个无符号整数后求出它的各位数之和并输出。 例如若输入123,则将各位之和6(即1+2+3)输出。 _f(num) /*第一空*/ unsigned int num; unsigned int k=0; do k+=_; /*第二空*/ num/=10; while(num); _; /*第三空*/ main( ) unsigned int n; scanf(%
8、d,&n); printf(%un,f(n); 38.为数组输入数据,逆序置换后输出。(逆序置换是指:数组的首元素和末元素置换,第二个元素和倒数第二个元素置换,) # define N 8 main( ) int i,j,t,aN; for(i=0;iN,i+)scanf(%d,a+i); i=0;j=N-1; while(ij) t=*(a+i);_; /*第一空*/ _=t; /*第二空*/ i+;_; /*第三空*/ for(i=0;iN;i+)printf(%5d,*(a+i); 五、程序设计题(第39小题5分,第40、41小题各6分,共17分)。39.将100个整数输入数组后按每行10个数输出。40.计算e=1+的值并输出(设n=20)。41.生成Fibonacci数列的前20项并输出,其中fi=
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1