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

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

2004年4月高等教育自学考试全国统一命题考试
计算机基础与程序设计  试题
(课程代码2275)
一、单项选择题 (本大题共20小题,每小题1分,共20分)
 
1.微机一般是16位机或32位机,它指的是机器的(      )。
A.速度          B.容量          C.系列号          D.字长
2.若当前路径为C盘TC子目录,仅将A盘根目录下的文件名第3个字符为P,扩展名为C的所有文件复制到C盘TC子目录下,一定成功的命令是(      )。
A.COPY  A:\*P*.C                   B.COPY  A:\??P*.C  C:
C.COPY  A:\??P*.C                   D.COPY  ??P*.C  C:\TC
3.在C程序中,main函数的位置是(      )。
A.必须作为第一个函数                  B.必须作为最后一个函数
C.可以放在任意位置                    D.必须放在它所调用的函数之后
4.设int a=3;下列哪一个表达式的值等于0(      )。
A.a&&(a>0)              B.!a||a              C.a%=a            D.a>=a
5.如果a=5,b=2,c=3,d=4,则表达式a>b? a:c>d? c:d的值是(      )。
A.2                     B.3                  C.4               D.5
6.在C程序中,设一表达式中包含有int, long, char和unsigned类型的变量和数据,这四种类型数据的转换规则是(      )。
A.int→unsigned→long→char                  B.char→int→long→unsigned
C.char→int→unsigned→long                  D.int→char→unsigned→long
7.设有说明:int a=11, b=10;执行表达式a%=b+(a&&b)后,a的值为(      )。
A.0             B.1                C.11              D.22
8.下面程序段的运行结果是(      )。
  main()
  {
  int x=1,y=2,z=3,s=0;
  if(y>x)
  if(y>z) s=1;
  else s=2;
  else s=3;
  printf(”% d\ n”,s);
  }
A.0                B.1              C.2             D.3
9.设有说明:int x=1, y=2;执行条件表达式(x=y)? ++x:--x后,x的值为:(      )。
A.0                B.1              C.2             D.3
10.若k为整型变量,则下面while循环(      )。
   k=10;
   while(k==0)k=k-1
A.执行0次                   B.执行1次
C.执行10次                  D.执行无限次
11.关于for(;;);语句,下面说法正确的是(      )。
A.有语法错误                  B.循环一次也不执行
C.循环只执行一次              D.循环执行无限次
12.以下对一维数组a的正确定义是(      )。
A.int a(10);                     B.int n=10, a[n];
C.int n;                        D.#define SIZE 10
  scanf(”%d”, &n);              int a[SIZE];
  int a[n];
13.以下一维数组初始化语句中,正确的是(      )。
A.int a[5]={1,2};                  B.int a[5]={};
C.int a[5]={5*2}                   D.int a[]=(1,2,0,0,0);
14.若定义字符数组char s[5]=”BOOK”;则输出该串正确的函数调用是(      )。
A.puts(s[10]);                       B.puts(s);
C.printf(”%c”,s);                  D.printf(”%s”,&s);
15.下列定义不正确的是(      )。
A.#define PI 3.1415926               B.static char c;
C.int max(x,y);                      D.int *p[5];
  int x,y;
  {}
16.下列哪种数据不是存放在动态存储区中(      )。
A.局部自动变量                            B.局部静态变量
C.函数调用时的现场保护数据                D.函数形参变量
17.设有char s[]=”top”,*p=s;p[1]=‘a’;则下面说法不正确的是:(      )。
A.s[0]存放字符t                       B.s[1]存放字符0
C.s[1]存放字符a                       D.s[2]存放字符p
18.定义一个指向具有5个元素的一维整型数组的指针变量的正确定义为(      )。
A.int *p[5];            B.int *p;        C.int (*p)[5];        D.int *p[][5];
19.下面程序的运行结果是(      )。
   #define SQR(x)((x)*(x))
   #include <stdio.h>
   main()
   { float v=3.0;
   printf(”sqr=%. 2f\n”, SQR(v)+1);}
A.sqr=3.0             B.sqr=9.0             C.sqr=10       D.sqr=10.00
20.feof函数用来判断文件是否结束,如果文件没有结束,则返回值是(      )。
A.-1                  B.0                   C.1            D.EOF
二、多项选择题 (本大题共5小题,每小题2分,共10分)
在每小题列出的五个备选项中有二至五个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选、少选或未选均无分。
21.下面哪些软件属于操作系统范畴?(          )。
A.DOS                  B.Foxpro                  C.Turbo C
D.UNIX                 E.Windows
22.在下列各说法中,正确的说法有(          )。
A.与while结构相比,do…while结构至少要执行一次循环。
B.for结构和do…while结构类似,也是“先判断后执行”。
C.do…while结构是“先执行后判断”。
D.进入do…while循环的条件是:条件表达式为1。
E.退出while循环的条件是:条件表达式为1。
23.若有如下定义和赋值(          )。
int a=3, *p, *q;
p=&a; q=p;
则能够输出变量a的地址值的语句是:
A.printf(”%d\n”,p);         B.printf(”%d\n,*q”);      C.printf(”%d\n”,a);
D.printf(”%d\n”,*p);        E.printf(”%d\n”,q);
24.设有定义int x[4][5],*p;以及赋值p=*x;则非法的表示x数组元素的形式是(          )。
A.x[4][5]                  B.x[1]                  C.*(x[1]+2)
D.x[2][3]                  E.p[20]
25.表达式~0<<2的值可以是(          )。
A.-4                       B.-3                  C.0xfffc
D.0177774                  E.65531
三、填空题(本大题共10小题,每小题1分,共10分)
请在每小题的空格中填上正确答案。错填、不填均无分。
26.用一字节表示十进制-7在机内的存储形式是___________。
27.C语言中的函数应由___________和函数体两部分组成。
28.在格式输出语句中,用于字符串输出的格式符是%___________。
29.设有int x=10;则执行while(x^x) ++x;后,x的值是___________。
30.设i,y,s均为int型变量,则执行下面for循环后,y的值为___________。
   for(i=0, y=0; i<4;){s=i*i;y=y+s;i++;}
31.设有int y[2][3]={5,4,6,7,8,9};则y[1][1]的值为___________。
32.定义在函数内部的变量和函数的形参都是___________变量。
33.若p为指针变量,则(*p)++表示先取指针p指向的对象再使对象的___________。
34.已知定义:union{long x;int y;}data;
   则变量data占用内存的字节数是___________。
35.字符串读函数fgets()的格式是fgets(str,n,fp);它的功能是从与fp有联系的文件中读___________个字符。
四、简答题(本大题共4小题,每小题3分,共12分)
36.简述字符常量与字符串常量的差异。
 
 
 
 
 
37.在C语言的if语句中,用作条件判断的“表达式”可以是什么类型的表达式?
 
 
 
 
 
 
38.用字符串指针变量处理字符串与用字符数组处理字符串有何不同?
 
 
 
 
 
36.简述fread函数的作用,其使用格式如下:
   fread(stu,size,n,fp);
   其中fp为文件指针,size为字节数,n为整数,stu为内存地址。
 
 
五、阅读分析题(本大题共7小题,每小题4分,共28分)
40.阅读下列程序并写出运行结果。
   #include ”stdio.h”
   #include ”string.h”
   main()
   { char str[]=”department”,*p=s;
     printf(”the length of srt is %d”,strlen(p));
     prinft(”\n%s”,p);
   }
 
 
41.阅读下列程序并写出运行结果。
   main()
   { int i=3, b;
     b=(i--)+(i--)+(i--);
     printf(”%d,%d\n”,b,i);
   }
 
 
42.阅读下列程序,并回答问题。
   main()
   {int s=0, k;
     for(k=4;k>=0;k--)
      { switch(k)
        { case 1:
          case 4: s++;break;
          case 0:
          case 2: break;
          case 3: s+=2;break;
        }
      }
      printf(”s=%d\n”,s);
   }
   试回答switch语句共执行多少次并写出运行结果。
43.阅读下列程序并写出运行结果。
   main()
   { int y[2][3]={5,4,6,7,8,9};
     int m[2],k,j;
     for (k=0;k<2;k++){
          m[k]=y[k][0];
          for(j=1;j<3;j++)
              if(y[k][j]<m[k]) m[k]=y[k][j];
     }
     k=0;
     printf(”%d\n”,m[k]);
   }
 
 
第44题、第45题请参阅下面程序,并回答相关问题:
  main()
  {int i,j,x=0;
    for(i=0;i<2;i++)
    {x++;
    for (j=0;j<=3;j++)
    { if(j%2) continue;
      x++;}
    x++;}
   printf(”x=%d\n”,x);}
44.if(j%2) continue;语句的作用是什么?continue语句执行了多少次?
 
 
45.程序输出结果是多少?
 
 
 
46.设指向单向链表的头结点指针head是一个全局指针变量,且有如下程序:
   void display(  )
   { struct food *p=head;
     while (p!=NULL)
     { printf(”%s\n”, p→name);
       printf(”%d\n”, p→product);
       p=p→next;
     }
   }
设程序已经提供了关于food结构体的全部信息,试写出结构体food的定义。
 
 
六、程序设计题(本大题共2小题,第47题8分,第48题12分,共20分)
47.对下面的3行3列的二维整型数组x:
   int x[3][3]={1,2,3,4,5,6,7,8,9};
   编程求每一行中元素的累加和并输出之。
 
 
 
 
 
 
 
48.从键盘输入一些字符,逐个把它们送到磁盘上并统计这些字符的个数,直到输入一个“#”为止。设磁盘ASCII码文件名为ab.txt。

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

发布于:2019-01-10

上一篇:2018年4月全国自考《计算机基础与程序设计》考前试题押题和答案02275

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