1. (2010.03全国二级C题)有以下程序: void main() { char a,b,c,d; scanf(“%c%c”, c=getchar(); d=getchar(); printf(“%c%c%c%c\n”,a,b,c,d); }当执行程序时,按下列方式输入数据(从第1列开始,代表回车,注意:回车也是一个字符) 12 34则输出结果是()。
A. 1234
B. 12
C. 12 3
D. 1234
2. 假设 float d=12.3456,则表达式printf(" % 10.2f",(int)d/10.0)的输出结果为
A. 12.00
B. 12.34
C. 1.23
D. 1.20
3. 定义如下的变量和数组int i;int y[2][3]={2,4,6,8,10,12}则下面语句输出结果for(i=0;ii++)printf("%d ",y[1-i][i+1]);
A. 104
B. 812
C. 610
D. 10 6
4. 有以下程序段
若从键盘上输入:10A10<回车>,则输出结果是:
A. 10,A,10
B. 10,a,10
C. 10,a,0
D. 10,A,0
5. 以下有关构造函数的叙述不正确的是( )。
A. 构造函数名必须和类名一致
B. 构造函数在定义对象时自动执行
C. 构造函数无任何函数类型
D. 在一个类中构造函数有且仅有一个
6. 以下程序段 :int a=1234;printf("%2d\n",a);输出结果是( )
A. 12
B. 23
C. 1234
D. 提示出错,无结果
7. 有以下程序
执行后输出的结果是
A. 7
B. 6
C. 8
D. 无确定值
8. 有以下程序main(){ int a,b,d=25; a=d/10%9; b=a printf("%d,%d\n",a,b);}程序运行后的输出结果是
A. 6,1
B. 2,1
C. 6,0
D. 2,0
9. 假设 unsigned u=0,从键盘正确读入一个整数给u的语句是
A. scanf("%d",u);
B. scanf("%u",
C. scanf("%ud",u);
D. scanf("%ld",
10. 下列叙述中,错误的是
A. 不同函数中可以使用相同的变量名
B. 全局变量和局部变量可以同名
C. 形式参数是局部变量
D. main() 函数中定义的变量在整个程序中都可
11. 若有说明:int a[3][4];则对a数组元素的非法引用是________
A. a[0][2*1]
B. a[0][4]
C. a[1][3]
D. a[4-2][0]
12. 以下程序执行后,屏幕输出为( )。
void fun(int d) {d++;}
void main() { int d=3; fun(d); d++; cout<<d<<endl; }
A. 3
B. 4
C. 5
D. 6
13. 有以下程序void main(){int a=6,b=7;printf("a=%%d,b=%%d",a,b);}输出结果是( )。
A. a=b,y=3
B. a=%d,b=%d
C. a=%6,b=%7
D. a=%%6,b=%%d
14. 以下说法中正确的是()。
A. C语言程序总是从第一个的函数开始执行
B. 在C语言程序中,要调用的函数必须在main()函数中定义
C. 言程序总是从main()函数开始执行
D. C语言程序中的main()函数必须放在程序的开始部分
15. 如下程序段执行的结果为int a=100,b=0,c;c=(b=100)+ (b0) *a++;printf("%d",c);
A. 200
B. 201
C. 202
D. 203
16. C语言中int变量能够表示的数值范围
A. -32767~32768
B. -32768~32767
C. 0~65535
D. 0~65536
17. c语言标准输出文件stdout是指( )
A. 键盘
B. 显示器
C. 软盘
D. 硬盘
18. 若运行以下程序时,从键盘输入25,15,10,则输出结果为( )。void main(){int a1,a2,a3;scanf("%d%d%d",&a1,printf("a1+a2+a3=%d\n",a1+a2+a3) ;}
A. a1+a2+a3=50
B. a+a2+a3=25
C. a1+a2+a3=10
D. 不确定值
19. 下列数组初始化语句错误的是( )。
A. char s[3]=“abc”;
B. char Letter[2][3]={'a','b','c','d','e','f'};
C. int Student[5]={1,2,3};
D. int a[2][3]={ {1,2,3},{4,5,6}};
20. 对于一个正常运行的C程序,以下叙述中正确的是( )
A. 程序的执行总是从main函数开始,在main函数结束
B. 程序的执行总是从程序的第一个函数开始,在main函数结束
C. 程序的执行总是从main函数开始,在程序的最后一个函数中结束
D. 程序的执行总是从程序的第一个函数开始,在程序的最后一个函数中结束
21. C语言程序设计中,以下叙述中正确的是()。
A. 函数表达式printf("%d%d",1,2+100)是正确的表达式
B. 如果a为整型变量,可以通过scanf("%f",&a)为a赋值
C. 在C语言中,整数可以以十二进制、八进制或十六进制的形式输出
D. 调用getchar函数读入字符时,可以从键盘上输入字符所对应的ASCII码
22. 若有说明:int a[][3]={1,2,3,4,5,6,7};则数组a第一维的大小是________。
A. 3
B. 2
C. 无确定值
D. 4
23. 设有如下说明
则以下选项中,能正确定义结构体数组并赋初值的语句是
A. STD tt[2]={ {1,’A’,62},{2,’B’,75}};
B. STD tt[2]={1,"A",62,2,"B",75};
C. struct tt[2]={ {1,’A’},{2,’B’}};
D. struct tt[2]={ {1,"A",62.5},{2,"B",75.0}};
24. C++借助于( )实现封装。
A. 结构
B. 类
C. 数组
D. 函数
25. 下列程序设计语言中( )是面向对象语言。
A. FORTRAN
B. C语言
C. +
D. 汇编语言
26. 定义了一维int型数组a[10]后,下面错误的引用是_____
A. a[10]=2;
B. a[1]=a[2]*a[0];
C. a[0]=1;
D. a[0]=5*2;
27. 下面程序的运行结果是________int main(){int a[6],i;for(i=1;ii++){a[i]=9*(i-2+4*(iprintf("%2d",a[i]);}return 0;}
A. -4 0 4 0 4
B. -4 0 4 4 3
C. -4 0 4 0 3
D. -4 0 4 4 0
28. c语言中标准输入文件stdin是指( )
A. 键盘
B. 显示器
C. 鼠标
D. 硬盘
29. (2012.09全国二级C题)若有定义和语句:int a,b;scanf(“%d,%d”,以下选项中,不能将值3赋给变量a,值5赋给变量b的是()。
A. 3,5,
B. 3,5,4
C. 3 5
D. 3,5
30. 数字字符0的ASCII值为48,若有以下程序main(){ char a='a',b='b'; printf("%c,",b++); printf("%d\n",b-a);}程序运行后的输出结果是
A. 0,2
B. c,2
C. b,2
D. 2,50
31. 有以下程序main(){ int a,b,p; scanf("m=%dn=%dp=%d", printf("%d%d%d\n",a,b,p);}若想从键盘上输入数据,使变量a中的值为12,b中的值为56,p中的值为89,则正确的输入是
A. m=12n=56p=89
B. m=12 n=56 p=89
C. a=12b=56p=89
D. 12 56 89
32. 进行顺序查找的条件是
A. 数据有序且采用顺序存储方式
B. 数据不需要有序,但需要顺序存储
C. 数据有序且采用链式存储方式
D. 数据不需要有序,也不限制存储方式
33. (2011.09全国二级C题)以下不能输出字符A的语句是()。(注:字符A的ASCII码值为65,字符a的ASCII码值为97)
A. printf("%c
",'a'-32);
B. printf("%d
",'A');
C. printf("%c
",65);
D. printf("%c
",'B'-1);
34. 有如下语句:scanf("a=%d,b=%d,c=%d",为使变量a的值为1,b的值为3,c的值为2,从键盘输入数据的正确格式是( )
A. 132
B. 1,3,2
C. a=1,b=3,c=2
D. a=1 b=3 c=2
35. 以下关于C语言的叙述中错误的是( )
A. 是一种结构化程序设计语言
B. 结构化程序有顺序、分支、循环三种基本结构组成。
C. 使用三种基本结构构成的程序只能解决简单问题
D. 结构化程序设计提倡模块化的设计方法
36. 以下能对二维数组a进行正确初始化的语句是________。
A. int a[][3]={ {1,0,1},{},{1,1}};
B. int a[2][]={ {1,0,1},{5,2,3}};
C. int a[][2]={ {1,2,3},{4,5,6}};
D. int a[][4]={ {1,2,3},{4,5},{6}};
37. C语言设计中下列描述中正确的是( )
A. 所有的输入/输出都是通过调用库函数处理的
B. 所有的输入/输出都是通过输入/输出语句实现的
C. getchar和putchar可以省略
D. 在输入/输出格式中的*表示跳过数据的含义
38. 引用数组元素时,数组下标可以是____
A. 实型常量
B. 实型变量
C. 整型常量
D. 值在[0,n-1]之间的整型表达式,其中n为数组长度
39. 以下叙述中正确的是 ( )
A. 全局变量的作用域一定比局部变量的作用域范围大
B. 静态(static.类别变量的生存期贯穿于整个程序的运行期间
C. 函数的形参都属于全局变量
D. 未在定义语句中赋初值的auto变量和static变量的初值都是随机值
40. 若二维数组a有m列,则在a[i][j]前的元素个数为________。
A. j*m+i
B. i*m+j+1
C. i*m+j-1
D. i*m+j
41. 定义如下变量和数组: int k; int a[3][3]={1,2,3,4,5,6,7,8,9}; 则下面语句的输出结果是________。 for(k=0;kk++) printf("%d ",a[k][2-k]);
A. 3 6 9
B. 1 5 9
C. 1 4 7
D. 3 5 7
42. 若整型变量 int a=1,b=2,c=3,d=4;则条件表达式a
A. 1
B. 2
C. 3
D. 4
43. 假设 float d=12.3456,则表达式printf(" % 10.2f",d)的输出结果为
A. 12.35
B. 12.34
C. 1.20
D. 12.0
44. 阅读程序,指出输出结果是( )。
void main(){
char c1,c2,c3;
c1='a';
c2='z';
c3=c2-c1;
printf("%c,%c,%d ",c1,c2,c3);
}
A. a ,z ,25
B. A,Z,25
C. a,z,\
D. 97,122,25
45. 若有说明语句:int a[][3]={1,2,3,4,5,6,7,8};则a数组的行数是
A. 无确定值
B. 3
C. 2
D. 1
46. x、y、z被声明为int型变量,若从键盘给x、y、z输入数据,正确的输入语句是()
A. INPUT x、y、z;
B. scanf(“%d%d%d”,
C. scanf(“%d%d%d”,x,y,z);
D. read(“%d%d%d”,
47. 以下程序段给数组所有的元素的输入数据,请选择正确的答案
A. x+m
B. &x[m+1]
C. &x[++m]
D. &x[m++]
48. 下面语句中正确C语言语句是( )
A. printf("%c
","student");
B. printf("%c
","c");
C. printf("%s
",
D. printf("%s
","hello");
49. 如下程序段执行的结果为int a=100,b=200,c;c= abc=b++;printf("%d",c);
A. 200
B. 201
C. 300
D. 301
50. 如下程序段执行的结果为 int a=100,b=200,c; c=!a+(b2) % 10; printf("%d",c);
A. 0
B. 10
C. 80
D. 101
51. MAIN函数是程序启动时惟一的入口。( )
52. 数值0x34对应的十进制为 51 。( )
53. ch1:C语言是一种非结构化程序设计语言。
54. char *country[] = {"America", "England", "Australia","China", "Finland"};这条语句定义了一个字符指针数组country,并用初始化列表中的每个字符串的首地址为字符指针数组country的元素进行初始化,并不是将初始化列表中的字符串保存到字符指针数组中。
55. 指针变量所占的内存被释放了,也就意味着它所指向的动态内存也会被自动释放。
56. 算法的复杂性包含两方面:时间复杂性 和 空间复杂性。( )
57. 当递归调用是整个函数体中最后执行的语句且它的返回值不属于任何表达式的一部分(即在回归阶段不需要任何计算)时,这种递归调用就是尾递归。
58. 函数fgetc()的功能是从fp所指的文件中读取一个字符,并将位置指针指向下一个字符。若读取成功,则返回该字符,若读到文件末尾或者读取出错,则返回EOF。EOF是一个符号常量,通常在stdio.h中定义为-1。
59. voidMakeDigit(inta[]){inti,j,temp;srand(time(NULL));for(i=0;ii++){a[i]=i;}for(i=0;ii++){j=rand()%10;temp=a[j];a[j]=a[i];a[i]=temp;}}这个方法其实就是模拟了洗牌的方法对一个有序的数组元素进行随机置乱。
60. fgets()与gets()的不同点是,gets()从指定的流读字符串,读到换行符时将换行符替换为'\0',读入的字符串中不会保留'\n',而fgets()从指定的流读字符串,读到换行符时不替换为'\0',读入的字符串中会保留'\n',在'\n'的后面会再添加一个'\0'。
61. 递归算法的执行过程可分为递推和回归两个阶段。在递推阶段,必须要有终止递归的情况。当满足递归终止条件时,即获得最简单情况的解以后,开始进入回归阶段,即递归返回阶段。
62. 线性查找算法不要求数据表是已排好序的,而二分查找算法要求数据表是已排好序的。
63. 函数feof()的功能是检查是否到达文件尾,只要读完最后一个字符、文件位置指针指向文件尾时(EOF)时,就会返回非0值,否则返回0值。
64. 用free释放指针变量所指向的内存以后,就意味着该指针变量变成了空指针。
65. 条件运算符是C语言中唯一的一个三元运算符.
66. ch1:C语言程序在书写上只能是一条语句写一行。
67. 用c格式符输入字符型数据的时候,为了避免将输入缓冲区中的空白字符(空格、回车换行符、Tab键)作为有效字符读入,可以在%c前面加一个空格。
68. 筛法求素数的核心操作就是在一个按a[2]=2,a[3]=3,......,a[N]=N初始化的数组中依次筛掉所有素数的倍数。
69. 向函数传递字符串,既可以用字符数组做函数参数,也可以用字符指针做函数参数,这两种方式都是传引用调用,就是将字符串的首地址、而非字符串中的全部字符传给形参。
70. int (*f)(int, int);这条语句定义的是一个函数指针f,它可以指向一个有两个整型形参和整型返回值的函数。假设int Fun(int a, int b);那么必须用f=Fun();对f进行初始化,让其指向函数Fun()。
71. 已知 char c= 'a' ; int x=2,k; 执行语句k=c 则x为3,k为2。( )
72. 在一个结构体内可以包含另一个不同类型的结构体作为其成员。
73. 当指针变量指向一维数组的时候,sizeof(数组名)和sizeof(指针变量名)的计算结果是相同的。
74. ch1:C语言函数返回类型的默认定义类型是void
75. 单个字符既可以以c格式符也可以以d格式符输出,前者是输出这个字符,后者是输出这个字符的ASCII码值。
76. 普通变量做函数参数,是将实参值的一个副本传给形参,而指针变量做函数参数是将变量的地址值传给形参,因此你想要修改哪个变量的值,将这个变量的地址传给指针形参就好了。
77. ch1:C语言程序中可以有多个函数,但只能有一个主函数。
78. 和整型、实型、字符型一样,枚举类型也是一种基本数据类型。
79. 下面判断ch是大写或者小写英文字母的表达式是否正确?ch = 'A' = 'Z' || ch = 'a' = 'z'
80. 关键字typedef主要用于定义一种新的数据类型。
81. 通常情况下,不同类型数据的运算结果的类型是取值范围较大的那种类型。
82. ch1:C语言的应用比较广泛,不仅可用来编写应用软件,而且可用来编写系统软件。
83. 函数:在C语言中,调用函数必须在一条独立的语句中完成.
84. 全局变量破坏了函数的封装性,不能实现信息隐藏,依赖全局变量的函数很难在其他程序中复用,对于使用全局变量的程序维护也比较困难,因此建议尽量不用全局变量。
85. fputs()是向任意流写数据,puts()是向标准输出流写数据,二者在写数据时的不同之处是,puts()会在写入的字符串末尾自动添加换行符,而fputs()不会在写入的字符串末尾自动添加换行符,除非字符串本身含有换行符。
86. 在调用printf函数输出数据时,当数据的实际位宽大于printf函数中的指定位宽时,将按照数据的实际位宽输出数据。
87. 数学归纳法是递归的数学基础。
88. 二分查找算法就是先将表的中间位置记录的关键字与查找关键字相比较,如果两者相等,则查找成功,否则将表分成前、后两个子表,根据比较结果,决定查找前一子表还是后一子表。
89. ch1:C语言程序中,出现非法字符时会发出'0信息。
90. 强制类型转换运算符就是强制改变一个变量原有的数据类型。
91. ch1:C语言程序实现与其他高级语言一样也要经过编辑、编译连接和运行这样的三步曲。
92. const常量有数据类型。
93. ch1:C语言的书写格式不会影响程序的可读性。
94. 函数:通过return语句,函数可以带回一个或一个以上的返回值.
95. 函数返回值的类型既可以是字符指针,也可以是字符数组。
96. 二元的算术运算符的结合性都是左结合。
97. 函数:在C语言的函数中,可以有也可以没有形参.
98. ch1:下划线是标识符中的合法字符。
99. ch1:C语言是一种具有某些低级语言特征的高级语言。
100. 在计算一组数据的最大值之前,通常假设这组数据中的第一个数为最大,即用这组数据中的第一个数为存放最大值的变量初始化。 |