二级C语言-31
(总分79,考试时间90分钟)
一、选择题
1. 请选出以下程序的输出结果_______。
    #include<stdio.h>
    sub(int*s,inty)
    { static int t=3,
      y=s[t];t-;
    }
    main()
    { int a[]={1,2,3,4},i,x=0;
      for(i=0;i<4;i++){
          sub(a,x);printf("%d",x);}
      printf("\n");
    }A. 1234  B. 4321  C. 0000  D. 4444
2. 下列程序执行后的输出结果是
    void func1(int i);
    void func2(int i);
    char st[]="hello,friend!”;
    void func1(int i)
    { printf("%c",st[i]);
      if(i<3){i+=2;func2(i);}}
    void func2(int i)
iframe里面的图片全屏显示
    { printf("%c",st[i]);
      if(i<3){i+=2;func1(i);}}
    { int i=0;func1(i);printf("\n");}A. hello  B. hel  C. hlo  D. hlm
3. 下列表达式中,可以正确表示x≤0或x≥1的关系是    。A. (x>=1)‖(x<=0)  B. x>1‖x=0  C. x>=1 OR x<=0  D. x>=1 && x<=0
4. 下列对于线性链表的描述中正确的是    。A. 存储空间不一定连续,且备元素的存储顺序是任意的  B. 存储空间不一定连续,且前件元素一定存储在后件元素的前面  C. 存储空间必须连续,且前件元素一定存储在后件元素的前面  D. 存储空间必须连续,且各元素的存储顺序是任意的
5. 以下叙述中正确的是A)局部变量说明为static存储数,其生存期将得到延长B)全局变量说明为static存储类,其作用域将被扩大C)任何存储类的变量在未赋初值时,其值都是不确定的D)形参可以使用的存储类说明符与局部变量完全相同
6. 若有程序段:char s[]="china";char *p;p=s;,则下列叙述中正确的是A. s和p完全相同  B. 数组s中的内容和指针变量p中的内容相等  C. s数组长度和p所指向的字符串长度相等  D. *p与s[0]相等
7. 有以下程序段:
    int x=3:
vb文本框不显示内容
    do
    {printf("%d",x-=2);}
    while(!(--x));
    其输出结果是    。A.1  B.3 0  C.1-2  D.死循环
8. 有以下程序:
    main()
    {  int  a[3][3],*p,i;
      p=&a[0][0];
      for  (i=0;i<9;i++)p[i]=i+1;
      printf("%d\n",a[1][2]);
    }
    程序运行后的输出结果是A. 3  B. 6  C. 9  D. 2
9. 有以下程序
    #include<stdio.h>
    void fun(int x)
    {if(x/2>1)fun(x/2);
    printf("%d",x);
    }
    main()
    {fun(7);printf("\n");)
    程序运行后的输出结果是    。 A. 1 3 7  B. 7 3 1  C. 7 3D. 3 7
10. 排序方法中,将整个无序序列分割成若干小的子序列并分别进行插入排序的方法,称为______。A. 希尔排序  B. 冒泡排序  C. 插入排序  D. 选择排序
11. 下列不属于软件调试技术的是        A. 强行排错法  B. 集成测试法  C. 回溯法  D. 原因排除法
12. 设计软件结构是在软件生命周期的    。A. 软件定义期  B. 软件开发期  C. 软件维护期  D. 以上3个都不是
13. 在C语言中,以下一组运算符中,优先级最高的运算符是______。A.<=  B.=  C.%    D.&&
14. SQL语言又称为______。A. 结构化定义语言  B. 结构化控制语言  C. 结构化查询语言  D. 结构化操纵语言
15. 当用户要求输入的字符串中含有空格时,应使用的输入函数是    。A. scanf()  B. getchar()  C. gets()  D. getc()
16. 若某链表最常用的操作是在最后一个结点之后插入一个结点和删除最后一个结点,则采用______存储方式最节省时间。A. 单链表  B. 双链表  C. 单循环链表  D. 带头结点的双循环链表
17. 数据库技术的根本目标是要解决数据的    。A.存储问题  B.共享问题  C.安全问题  D.保护问题
18. 在数据流图(DFD)中,带有名字的箭头表示(  )。A. 模块之间的调用关系  B. 程序的组成成份  C. 控制程序的执行顺序  D. 数据的流向
19. 以下叙述正确的是    。A. continue语句的作用是结束整个循环的执行  B. 只能在循环体内和switch语句体内使用break语句  C. 在循环体内使用break语句或continue语句的作用相
同  D. 从多层循环嵌套中退出时,只能使用goto语句
20. 以下选项中可作为C语言合法整数的是(  )。A. 10110B  B. 0386  C. 0Xffa  D. x2a2
幂函数知识点归纳图21. 以下程序运行后的输出结果是
    #include <string.h>
    main()
    {  char m[20]={'a','b','c','d'},n[]="abc",k[]="abcde";
    strcpy(m+strlen(n),k); strcat(m,n);
    printf("%d%d\n", sizeof(m), strlen(m));
    }A. 2011  B. 99  C. 209  D. 1111
22. 以下对枚举类型名的定义中正确的是______。A. enum a={one, two,three};  B. enum a{one=9,two=1,three};C. enum a={"one","two","three"};  D. enum a{"one", "two","t
hree"};
23. 有以下程序
    #include<stdio.h>
    void fun(int x)
    {if(x/2>1)fun(x/2);
    printf("%d",x);
    }
    main()
免费文本编辑器app    {fun(7);printf("\n");)
    程序运行后的输出结果是    。 A. 1 3 7  B. 7 3 1  C. 7 3D. 3 7
thinkphp6 env set
24. 变量a所占的内存字节数是 ______。A. 4  B. 5  C. 6  D. 8    union U    { char st[4];      int i;      long l;    };    Struct A {  int c;    union U u;    }a;
25. 设有定义:char p[]={'1','2','3',},*q=p;,以下不能计算出一个char型数据所占字节数的表达是______。A. sizeof(p)B. sizeof(char)C. sizeof(*q)D. sizeof(p[0])
26. 设有以下定义:
冒泡排序代码c语言
    int a=0;  double  b=1.25;  char c='A';
    #define d 2
    则下面语句中错误的是(  )。A. a++;  B. b++;  C. c++;  D. d++;
27. 线性表L=(a1,a2,a3,…ai,…an),下列说法正确的是A. 每个元素都有一个直接前件和直接后件  B. 线性表中至少要有一个元素  C. 表中诸元素的排列顺序必须是由小到大或由大到小  D. 除第一个元素和最后一个元素外,其余每个元素都有一个且只有一个直接前件和直接后件
28. 若要求从键盘读入含有空格字符的字符串,应使用函数______。A. getc()  B. gets()  C. getchar()  D.  scanf()
29. 有以下程序:
#include<stdio.h>
#include<stdio.h>
main() {
    char c[6];
    int i=0;
    for(;j<6;c[i]=getchar(),i++);
    for(i=0;i<6;i++)putchar(c[i]);
    printf("\n");
}
如果从键盘上输入:
ab<回车>
c<回车>
def<回车>
则输出结果为 ______。A. a  b  c  d  e  fB. a  b  c  dC. ab  c  dD. abcdef
30. 以下说法错误的是A. 一个算法应包含有限个步骤  B. 在计算机上实现的算法是用来处理数据对象的  C. 算法中指定的操作,不能通过已经实现的基本运算执行有限次后实现  D. 算法的目的是求解
31. 下面结构体的定义语句中,错误的是    。A.struct ord{int x;int y;int z;};struct ord a;  B.struct ord{int x;int y;int z;}struct ord a;  C.struct ord{int x;int y;int z;}a;  D.struct{int x;int y;int z;}a;

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。