山东管理学院
  1. 二维及多维数组在定义的同时给数组赋初值时,可以省略数组的各维长度。( )

  2. A:对 B:错
    答案:错
  3. 使用字符串处理函数strcmp需要包含头文件string.h。( )

  4. A:错 B:对
    答案:对
  5. 几乎没有不能用C语言实现的软件?( )

  6. A:对 B:错
    答案:错
  7. 设有int a;char abc[5]="abcd";则a=strlen("ABC");执行后a的值为5。( )

  8. A:错 B:对
    答案:错
  9. C语言中,字符串以‘\0’为结束标志。( )

  10. A:错 B:对
    答案:对
  11. 指针变量是把内存中另一个数据的( )作为其值的变量。

  12. A:地址
    B:内容

    答案:地址
  13. 已知: int a(5 ,&ra=a ;下列描述中,错误的是( )

  14. A:ra的值为5
    B:ra 的地址值为&a
    C:改变ra的值为10,变量a值仍为5
    D:ra是变量a的引用,即为变量的别名

    答案:改变ra的值为10,变量a值仍为5
  15. 以下与int *q[5]; 等价的定义语句是( )

  16. A:int (*q)[5]
    B:int q[5]
    C:int *q
    D:int *(q[5])

    答案:int *(q[5])
  17. 若有说明语句char a[]="It is mine";char *p="It is mine";则以下不正确的叙述是( )

  18. A:p 变量中存放的地址值可以改变
    B:a+1表示的是字符t 的地址
    C:a 中只能存放10 个字符
    D:p 指向另外的字符串时,字符串的长度不受限制

    答案:a 中只能存放10 个字符
  19. 以下说法中正确的是( )。

  20. A:C语言程序总是从main()函数开始执行
    B:C语言程序中的main()函数必须放在程序的开始部分
    C:在C语言程序中,要调用的函数必须在main()函数中定义
    D:C语言程序总是从第一个定义的函数开始执行
  21. 如下程序#include <stdio.h> f(int b[],int n) {int i,r; r=1; for (i=0;i<=n;i++) r=r*b[i]; return (r); } main() {int x,a[]={1,2,3,4,5,6,7,8,9}; x=f(a,3); printf( “%d\n”,x); } 运行结果为:( )

  22. A:45
    B:12
    C:24
    D:12.00
  23. 已知: int a[5],*p=a ;则与++*p相同的是( )。

  24. A:a[0]
    B:*++p
    C:*p++
    D:++a[0]
  25. 在下列选项中,不正确的赋值语句是( )。

  26. A:a=b+c=1;
    B:n1=(n2=(n3=0));
    C:++t;
    D:k=i==j;
  27. 若有语句: int *p,a=4; 和p=&a;下面均代表地址的一组选项是( )

  28. A:&a,&*p,p
    B:a,p,*&a
    C:&*a,&a,*p
    D:*&p,*p,&a
  29. C 语言中函数返回值的类型是由 ( )决定的 .

  30. A:return 语句中的表达式类型
    B:函数定义时指定的类型
    C:调用该函数时的实参的数据类型
    D:形参的数据类型
  31. 若有以下说明语句: struct student { int num; char name[ ]; float score; }stu; 则下面的叙述不正确的是 : ( )

  32. A:struct student 是用户定义的结构体类型名
    B:num, score 都是结构体成员名
    C:struct 是结构体类型的关键字
    D:stu 是用户定义的结构体类型名
  33. 下列数组定义语句中,正确的是( )

  34. A:static int a[][]={{1,2,3},{4,5,6}};
    B:int a[][3]= {1,2,3,4,5,6};
    C:int a[][]={1,2,3,4,5,6};
    D:char a[2]「3]='a','b';
  35. 凡是函数中未指定存储类型的局部变量,其隐含的存储类别为( )

  36. A:外部(extern)
    B:静态(static)
    C:自动(auto)
    D:寄存器(register)
  37. 若有定义: int a[2][3], 则对a 数组的第i 行j 列元素地址的正确引用为( )

  38. A:*(a[i]+j)
    B:(a+i)
    C:a[i]+j
    D:*(a+j)
  39. 有如下程序main( ){ int n=9;while(n>6) {n--;printf(“%d”,n);}}该程序段的输出结果是( )。

  40. A:8765
    B:987
    C:9876
    D:876
  41. 若有定义和语句为char s[10]; s=”abcd”; printf(“%s\n”,s); 则结果(u代表空格)是( )。

  42. A:输出abcd u u u u u
    B:输出a
    C:输出abcd
    D:编译不通过
  43. 对两个数组a和b进行如下初始化,char a[]=“ABCDEF”;char b[]={‘A’, ‘B’,‘C’,‘D’,‘E’,‘F’}; 则以下叙述正确的是( )

  44. A:a和b中都存放字符串
    B:a与b长度相同
    C:a与b数组完全相同
    D:a数组比b数组长度长
  45. C 语言程序的执行,总是起始于( )。

  46. A:包含文件中的第一个函数
    B:程序中的第一个函数
    C:程序中的第一条可执行语句
    D:main 函数
  47. 若有说明:int a[][3]={1,2,3,4,5,6,7};则a数组第一维的大小是( )

  48. A:4
    B:2
    C:无确定值
    D:3
  49. 执行下面程序后, #include <stdio.h> void main( ) { int x=41,y=1; if (x%3==0 && x%7==0) { y+=x;printf("y=%d\n",y);} else {y=x;printf("y=%d",y);} } 运行结果是( )

  50. A:y=43
    B:y=1
    C:y=42
    D:y=41
  51. 已有定义int k=2;int *ptr1,*ptr2; 且ptr1 和ptr2 均已指向变量k,下面不能正确执行的赋值语句是( )

  52. A:k=*ptr1+*ptr2
    B:ptr1=ptr2
    C:k=*ptr1*(*ptr2)
    D:ptr2=k
  53. 设a和b均为double型变量,且a=5.5,b=2.5,则表达式(int)a+b/b的值是( )。

  54. A:6
    B:6.500000
    C:6.000000
    D:5.500000
  55. 已有定义int (*p)( ); 指针p 可以( )

  56. A:表示函数返回值的类型
    B:代表函数的返回值
    C:指向函数的入口地址
    D:表示函数的类型
  57. 程序段char *s="abcde";s+=2;printf("%d",s); 运行结果是( )

  58. A:cde
    B:字符'c'
    C:字符'c'的地址
    D:无确定的输出结果
  59. 变量的指针,其含义是指该变量的( )

  60. A:名
    B:一个标志
    C:值
    D:地址
  61. 若有说明和语句:int a=5;a++;此处表达式a++的值是( )。

  62. A:6
    B:5
    C:7
    D:4
  63. 1 void main() 2 { 3 float a[3]={1}; 4 int i; 5 scanf(“%d”,&a);6 for(i=1;i<3;i++) a[0]=a[0]+a[i]; 7 printf(“a[0]=%d\n”,a[0]);8 } 上面程序中有错误的行(每行程序前面的数字表示行号)是( )。

  64. A:7
    B:5
    C:6
    D:3
  65. C语言中,数组名代表了( )。

  66. A:数组第一个元素的值
    B:数组全部元素的值
    C:数组的首地址
    D:数组元素的个数
  67. 以下说明不正确的是( )

  68. A:char a[10],*p=a; p= ”china”
    B:char *a; a= ”china”
    C:char a[10],*p; p=a= ”china”
    D:char a[10]= ”china”
  69. 以下对一维数组a初始化正确的是( )。

  70. A:int a[10]=(0,0,0,0,0);
    B:int a[]={0};
    C:Int a[10]=”10*1”;
    D:int a[10]={};
  71. C语言提供的合法的数据类型关键字是( )。

  72. A:short
    B:Char
    C:integer
    D:Double
  73. 在一个C程序中( )。

  74. A:main函数可以在任何地方出现
    B:main函数必须出现在所有函数之后
    C:main函数必须出现在所有函数之前
    D:main函数必须出现在固定位置
  75. 下列对C语言特点的描述中,错误的是( )。

  76. A:C语言功能较强
    B:C语言编程简洁明了
    C:C语言不是结构化程序设计语言
    D:C语言移植性好
  77. 已知:Struct person { char name[10] ; int age; }class[10]={"LiMing",29,"ZhangHong",21,"WangFang",22} ; 下述表达式中,值为 72 的一个是 ( )。

  78. A:clase->name[5]
    B:class[1].name[5]
    C:class[0]->age + class[1]->age+ class[2]->age
    D:person[1].name[5]
  79. 对语句int a[10]={6,7,8,9,10};说法正确的是( )。

  80. A:将5个初值依次赋给a[6]至a[10]
    B:将5个初值依次赋给a[0]至a[4]
    C:将5个初值依次赋给a[1]至a[5]
    D:因为数组长度与初值的个数不相同,所以此语句错误
  81. 以下不能定义为用户标识符的是( )。

  82. A:sizeof
    B:Main
    C:_int
    D:_0
  83. 定义以下结构体类型structs{intx;floatf:}a[3];语句printf ("%d",sizeof(a))的输出结果为( )

  84. A:4
    B:6
    C:12
    D:18
  85. 下面函数调用语句func((exp1,exp2),(exp3,exp4,exp5)); 含有实参的个数为( )

  86. A:1
    B:5
    C:4
    D:2
  87. C语言中运算对象必须是整型的运算符是( )。

  88. A:=
    B:%=
    C:〈=
    D:/
  89. 设有如下定义:struck sk { int a; float b; }data; int *p; 若要使 P指向 data 中的 a 域,正确的赋值语句是( )

  90. A:p=&a;
    B:*p=data.a;
    C:p=&data.a;
    D:p=data.a;
  91. 运行下面程序时,从键盘输入"12,34,9<CR>", #include <stdio.h> void main( ) { int x,y,z; scanf("%d,%d,%d",&x,&y,&z); if (x<y) if (y<z)printf("%d\n",z); else printf("%d\n",y); else if (x<z)printf("%d\n",z); else printf("%d\n",x); } 则输出结果是( )

  92. A:34
    B:9
    C:不确定的值
    D:12
  93. 以下叙述中正确的是( )。

  94. A:C语言比其他语言高级
    B:C语言可以不用编译就能被计算机识别执行
    C:C语言出现的最晚,具有其他语言的一切优点
    D:C语言以接近英语国家的自然语言和数学语言作为语言的表达形式
  95. 已知:struct sk { int a ; int age; }date,*p ; 如果要使指针 p 指向 data中的成员 a,正确的赋值语句是 ( )。

  96. A:*p = data.a ;
    B:p = (struct sk *)data.a ; C:p = &data.a; D:p = (struct sk *)&data.a ;
  97. 若有:int a[10];则对数组a的元素引用正确的是( )。

  98. A:A[10-10]
    B:a[10]
    C:a(5)
    D:a[3.5]
  99. 下列不是C语言特点的是?( )

  100. A:语言传递参数均是以值传递(pass by value),另外也可以传递指针(a pointer passed by value)。
    B:不同的变量类型可以用结构体(struct)组合在一起。
    C:只有64个保留字(reserved keywords),使变量、函数命名有更多弹性。
    D:C语言是一个有结构化程序设计、具有变量作用域(variable scope)以及递归功能的过程式语言。

温馨提示支付 ¥5.00 元后可查看付费内容,请先翻页预览!
点赞(1) dxwkbang
返回
顶部