重庆助学自考网站 今天是2019年 08月 28日 星期三
当前所在位置: 重庆助学自考网 > 自考辅导 > 历年考题 >

2006年4月高等教育自学考试全国统一命题考试 计算机基础与程序设计 试卷 (课程代码 2275)

绝密★启用前
2006年4月高等教育自学考试全国统一命题考试
计算机基础与程序设计 试卷
(课程代码 2275)
本试卷共10页,满分100分,考试时间150分钟。

总分   题号
核分人   题分 20 10 16 30 24
复查人   得分          
 
 
得分 评卷人 复查人
     
一、单项选择题  (本大题共20小题,每小题1分,共20分)

1. CPU处理数据和指令的基本单位是字(Word),一个字的字长是        (   )
A. 8bits                       B. 16bits
C. 32bits                      D. 与CPU数据总线有关的bit位数
2. 与十进制1100等值的十六进制数是                                 (   )
A. 44A                         B. 44C
C. 54A                         D. 54C
3. 退出Turbo C 2.0返回系统,在主菜单File项中可选择               (   )
A. Load                        B. New
C. Save                        D. Quit
4. 设有int a=3, b=-4, c=5;表达式(a<b)? a+b: (a-b,b+4,a-=b+4)的值是(   )
A. -1                          B. 0
C. 3                           D. 7
5. 若有下列程序段,欲使a=2、b=3,对应正确的数据输入方法是          (   )
(其中<CR>表示换行)
  int a, b;
  scanf(″a=%d  b=%d″,&a, &b);
 A. 2<CR>                        B. a=2 b=3<CR>
    3<CR>
 C. a=2, b=3<CR>                 D. 2,3<CR>
6. 下面程序段的输出结果是                                          (   )
main()
{  int s, p;
   s=p=5;
   p=++s;
     p++; ++p;
     printf(″%d\\n″,p);
   }
 A. 5                            B. 6
 C. 7                            D. 8
7. 下列if语句中,有语法错误的是                                   (   )
A. if(x>y);
B. if(x=y)  x+y;
C. if(x!=y)  scanf(″%d″, &x)  else scanf(″%d″,&y)
D. if(x<y)  {x++; y++;}
8. 下面程序段执行后的输出结果是                                    (   )
int  i=-1;
if(i<=0)  printf(″* * * * \\n″);
else printf(″%%%%\\n″);
A. ****                        B.%%%%
C. %%%%c                       D. ****c
9. 下面程序段的循环次数是                                          (   )
int  k=2;
while(k==0)  printf(″%d″,k);
k--; printf(″\\n″);
A. 0次                        B. 1次
C. 2次                        D. 无限次
10. 下面程序段的输出结果是                                         (   )
a=100;
while(a>120);
  a=a+1;
printf(″%d″,a);
A. 100                        B. 101
C. 120                        D. 121
11. 下面程序执行后,i的值是                                       (   )
main( )
{  int a [5]={1,2,3,4,5},i=2
   printf(″%d″,a[i++]);
}
A. 1                          B. 2
C. 3                          D. 4
12. 下面程序的输出结果是                                           (   )
main( )
{  int i, x[3][3]={9,8,7,6,5,4,3,2,1};
for(i=0;i<4;i+=2)   printf(″%d″, x[i][1]);
}
A. 5  1                       B. 5  2
C. 8  2                       D. 9  3
13. 在C程序中,若用基本数据类型所定义的变量调用函数,正确的说法是 (   )
A. 由系统自动指定对应实参和形参是否共用存储单元
B. 对应实参和形参各占一个独立的存储单元
C. 对应实参和形参共用一个存储单元
D. 可以由用户指定对应实参和形参是否共用存储单元
14. 下面叙述中不正确的是                                           (   )
A. 不同函数中可以使用相同名字的变量
B. 形式参数是局部变量
C. 在一个函数内部定义的变量只能在本函数范围内有效
D. 在一个函数内部的复合语句中定义的变量在本函数范围内有效
15. 设有语句int  a[4][10],*p=*a;则下面表达式中属于地址表达式的是   (   )
A. a[1][2]                    B. a[1]
C. *(p+1*10+2)                D. *(a[1]+2)
16. 下面定义不正确的是                                             (   )
A. struct star                     B. struct star
  {                                  {
int  id                              int  id;
char  *name;                          char  *name;
  }  star1={1001, ″Moon″};       };  star1={1001, ″Moon″};
C. struct                          D. struct  star
  {                                 {
int  id;                            int  id;
char  *name;                        char  *name;
  }  star1={123, ″Sun″};          }  star1;
17. 下面各个位运算符的优先级从左到右依次升高的是                 (   )
A. | ^ & >>                   B. ^ >> & ~
C. << | ^ ~                   D. ~ | & >>
18. 设有说明:int u=1, v=14;表达式u+v>>2的值是                    (   )
A. 0                          B. 3
C. 5                          D. 7
19. 如果将文件指针fp指向文件末尾,正确的语句是                    (   )
A. feof(fp);                  B. rewind(fp);
C. fseek(fp,0L,0);            D. fseek(fp,0L,2);
20. 下面程序段中,不能完成的功能是                                 (   )
FILE *fp;
char ch =′v′;
fp=fopen(″boy″, ″rb+″);
fputc(ch,fp);
A. 建立文件指针fp与文件boy的联系       B. 从boy文件中读取一个字符
C. 向boy文件中写一个字符                D. 打开名为boy的二进制文件
得分 评卷人 复查人
     
二、多项选择题 (本大题共5小题,每小题2分,共10分)在每小题列出的五个备选项中有二至五个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选、少选或未选均无分。
21. 总线是连接微机CPU、内存和外设之间传送信号的公共通道,微机的总线包括有
(      )
A. 电源线                         B. 数据线
C. 地址线                         D. 控制线
E. 网络线
22. 若定义 char c[11]; 可将字符串″I am a boy″ 赋给数组c,下面正确的选项有
                                                            (      )
A. c=″I am a boy″;              B. getchar(c);
C. gets(c);                       D. scanf(″%s″,c);
E. for(i=0;i<10;i++) scanf(″%c″,&c[i];c[10])=\'\\0\';
23. 若有如下定义和语句,则能正确表示数组a首元素地址的表达式有(      )
int  a[10], *p;
p=a;
A. a[0]                           B. a
C. p+1                            D. p
E. *p
24. 设有说明:int  x=1, y=3; 下面表达式的值为2的有           (      )
A. y&~x                           B. x^y
C. x|y                            D. y|x>>1
E. x<<1|y>>2
25. 在C语言中,关于符号FILE下面说法正确的有                 (      )
A. FILE是C的关键字
B. FILE表示一种关于文件参数的结构体类型
C. FILE表示一种关于文件参数的结构体变量
D. FILE*可以用来说明文件指针
E. 文件指针指向的变量的数据类型是FILE
得分 评卷人 复查人
     
三、简答题(本大题共4小题,每小题4分,共16分)
26.C语言中如何表示"真"和"假"?系统如何判断一个量的"真"和"假"?
 
 
 
 
 
27.什么是"直接递归调用"?什么是"间接递归调用"?
 
 
 
 
 
28.判断下面两程序段正确与否,并说明原因。
(1)char  str[12];  str=″program″;
(2)char *str;  str=″program″;
 
 
 
 
 
29.设有说明:
struct language {long spearer; char country[20];} chinese;
试写出对chinese的成员spearer和country分别赋值1250000000和"China"的C语句。
 
 
 
 
 
 
得分 评卷人 复查人
     
四、阅读分析题(本大题共6小题,每小题5分,共30分)
30.阅读下面程序,写出运行结果(已知A的ASCII码为65,a的ASCII码为97)。
#include ″stdio. h″
main( )
{  int k=100;char m;
m=k; putchar(m);
printf(″,%d,%c,%o, ″k,m-32,m);
}
 
 
 
 
 
 
 
31.阅读下面程序,并回答问题:
main()
{  int x, y, z, c;
   scanf(″%d%d%d″,&x, &y, &z);
   if(x<z){c=y; y=z; z=c;}
   if(x<z){c=x; x=z; z=c;}
   if(x<y){c=x; x=y; y=c;}
   printf(″%d, %d, %d″, x, y, z);
}
(1)若程序运行时,输入3、2和5,则输出结果是什么?
(2)写出程序所实现的功能。
 
 
 
 
 
 
 
 
32.阅读下面程序,并回答问题:
main( )
{  int  m, n;
m=65;
n=14;
while(m!=n)
{  while(m>n)m-=n;
   while(n>m)n-=m;
}
printf(″m=%d\\n″, m);
}
(1)程序输出结果是多少?
(2)外循环执行完一次时,m和n的值分别是多少?
(3)将while(n>m)n-=m;语句删除后,程序运行情况如何?
 
 
 
 
 
 
 
 
33.阅读下面程序,并回答问题:
gcd(int x, int y)
{  int  temp;
   while (y){temp=x%y; x=y; y=temp;}
   return x;
}
main()
{  int  a, b, y;
   scanf(″%d, %d″, &a, &b);
   y=gcd(a,b);
   printf(″最大公约数是:%d″, y);
}
(1)gcd函数的返回值类型是什么?
(2)若将return x写成return y会得到什么样的结果?
 
 
 
 
 
 
 
 
34.阅读下面程序,写出运行结果。
mian( )
{  char * str[ ]={″Pascal″, ″C Language″, ″Dbase″, ″Cobol″};
   int k;
   for(k=0; k<4;k++)
   printf(″%s\\n″, str[k]);
}
 
 
 
 
 
 
 
 
35.阅读下面程序段,写出输出结果。
struct num
{  float f1;
   int j;
}u={5.6,8},*p=&u;
printf(″%.2f,%d\\n″,u.f1, u.j);
printf(″%.2f,%d\\n″, (*p).f1,p->j);
 
 
 
 
 
 
 
得分 评卷人 复查人
     
五、程序设计题(本大题共2小题,每小题12分,共24分)
36.若有n行n列数组,试编写一程序,分别求出两条对角线元素之和。(从键盘输入n*n个整型数,n≤20)
 
 
 
 
 
 
 
 
 
37.若在c:\tclt路径下有一个名为zz.dat的文本文件,它包括10个按升序排列的整数,且每两个数之间用逗号隔开,现要插入一个整数使该序列仍保持升序,并把新序列写入到c:\ tclt路径下名为zzz.dat的文本文件中。


 如需要参考答案,请联系重庆自考网的老师,或者加QQ群476598738了解。 

发布于:2019-01-10

上一篇:2005年上半年高等教育自学考试全国统一命题考试 计算机基础与程序设计试卷 (课程代码227 5)

下一篇:2007年4月高等教育自学考试全国统一命题考试 计算机基础与程序设计试题 课程代码:2275