自考真题答案

3773考试网自学考试自考真题答案正文

[图文]全国2010年1月自考高级语言程序设计(一)试题

来源:fjzsksw.com 2010-3-3 10:42:11

二、填空题(本大题共10小题,每小题2分,共20分)
请在每小题的空格中填上正确答案。错填、不填均无分。

16. 设float a,b,c;,若a、b和c分别为三角形的三条边长,它们“能构成等边三角形”的逻辑表达式是____________。
17. 设int i;float f=3.14;,执行i=(int)f;后,变量f的值是____________。
l 8. 设char s[]=”\t\’Name\\Address\n”;,s的长度是____________。
19. 执行printf(“%d\n”,3&&2&5);后的结果是____________。
20. 算术运算符的优先级比关系运算符的优先级____________。
21. 单目运算符的结合性是____________。
22. 设int x=1,y=3,z;,执行z=x>y?++x:y++;后,z的值是____________。
23. 设int m=3;float n=12.6;char ch=’a’;,若用输入语句实现上述三个变量的初始化结果且键入数据形式为:3,12.6a<回车换行>,则scanf语句应是____________。
24. 若定义函数时类型缺省,则该函数默认的类型是____________。
25. 设int a[5]={l,3,5,7,9},*p=&a[2];,则++(*p)的值是____________。

三、程序分析题(本大题共4小题,每小题4分,共16分)
阅读下列程序,将输出结果写到各题右侧的空白处。
26.
void main()
{
  int color=2;
  switch(color)
  {
   case l:printf(“red\n”);break;
   case 2:printf(“yellow\n”);
   case 3:printf(“blue\n”);
  }
}
27.
void main()
{
  int m,n;
  for(m=1;m<=3;m++)
  {
   for(n=1;n<=2*m-l;n++)printf “*”);
   printf(“\n”);
  }
}
28.
void main()
{
  float x=3.6;
  int i;
  i=x;
  printf(‘x=%5.3f, i=%d\n”,x,i);
}
29.
void main()
{
  int a[2][3]={{1,2,3},{4,5,6}};
  int b[3][2],i,j;
  for(i=0;i<=1;i++)
   {
     for (j=0;j<=2;j++)
     { printf(“%5d”,a[i][j]);
      b[j][i]=a[i][j];
     }
    printf(‘‘\n”);
   }
  printf(“array b:\n”);
  for (i=0;i<=2;i++)
  for (j=0;j<=1;j++)
  printf(“%5d”,b[i][j]);
}

四、程序填充题(本大题共3小题,每小题6分,共18分)
请将下列程序横线处缺少的部分补上,使其能正确运行。
30. 从键盘输入10个学生的姓名、性别和成绩,计算并输出这些学生的平均成绩。
#define N 10
struct student
{
  char name [20];
  char sex;
  int score;
} stu[N];
void main( )
{
  int i;
  float aver,sum=0;
  for(i=0;i<N;i++)
  { scanf(“%d,%c%s”,_________);/*第一空*/
   sum=sum+_________; /*第二空*/
  }
  aver=___________; /*第三空*/
  printf(“aver=%6. 2f\n”,aver);
}
31. 从键盘输入一串字符(以“?”作为结束标志),保存到文本文件text. txt中。
#include “stdio.h”
void main()
{
  FILE _______; /*第一空*/
  char ch;
  if( (fp=fopen (“text. txt’’,_______) )==NULL) exit(0); /*第二空*/
  while( (ch=getchar( ))!=’?’) fpute (ch,_________); /*第三空*/
  fclose(fp);
}
32. 用递归方法计算学生年龄,已知第一位学生年龄为10岁,其余学生一个比一个大2岁,求第5位学生的年龄。
递归公式如下:
age(n)=全国2010年1月高等教育自学考试高级语言程序设计(一)试题
int age(int n)
{
  if (n==1) return (________); /*第一空*/
  else return(_________); /*第二空*/
}
void main()
{
  printf(‘‘%d\n”,_________); /*第三空*/
}

五、程序设计题(本大题共2小题,每小题8分,共16分)
33. 从键盘输入三个整数a、b和c,按照由小到大的顺序输出。
34. (1)编写一函数,将指针变量pl和p2所指向的整数值交换。
其中:函数头是void swap (int *pl,int *p2)
(2)编写一个主程序,从键盘输入两个整数,调用上述函数实现两个数据的交换并输出。

上一页  [1] [2] 

触屏版 电脑版
3773考试网 琼ICP备12003406号-1