2007 年(上)全国信息技术水平考试
一、选择题(每小题1.5分,共60分)
1 .以下说法正确的是( )
B ) main 函数必须放在C 程序的最后。
c ) main 函数可以放在C 程序的中间部分,在执行C 程序时则是从程序的开头执行。
D ) main 函数可以放在C 程序的中间部分,但在执行C 程序时则是从main 函数开始执行。
2 .一个C 程序可以包含任意多个不同名的函数,但有且仅有一个( )
A )变量 B )主函数 C ) include D )过程
3 .在算术表达式中允许使用的括号类型是( )
A ) { } B ) [] C ) () D )以上三项皆错
4 .对以下函数的说法正确的是( )
int add ( int x ; int y )
{
z = x + y ;
return z ;
}
A )此函数能单独运行 B )此函数存在语法错误
C )此函数只能通过main 函数调用 D )此函数没有语法错误
5 .在C 语言中,正确的实型常数是( )
A ) 2e B ) 0. 9 C ) 3e2.1 D ) e5
6 .有如下程序段,不能表示为地址的是( )
Int x = 2 , * p ;
p= & x ;
x = x + 1 ;
A ) & x B ) p C ) & p D ) & ( x + l )
7 .设int x , y , * p;下列表达式中有错误的是( )
A ) + + x + ( y= 2) B ) ( x + 1 ) + +
C ) p + + D ) x + = x + l
8 .下列选项中,与以下程序段等价的是( )
Int x = l , y , * p ;
p = & x ;
y = + + x ;
A ) int x = l , y , * p=&x ; + + * p ; y = x ;
A ) int x = l , y , * p=&x ; + + * p ; y = x ;
B ) int y , * p = & x , x = 1 ; + + x ; y = x ;
霍建华的血型C ) int x = l , y , * p ; p=&x ; * p + + ; y = x ;
D ) int x = 1 , y , * p=&x : y = x + + ;
Int z , a = 15 , b = 100 ;
z = MOD ( b , a ) ;
printf ( " % d \ n " , z ) ;
A ) 11 B ) 10 C ) 6 D )宏定义不合法
10 .栈的插入与删除操作是在( )进行的
A )栈顶 B )栈底 C )任意位置 D )指定位置
11 .以下程序当输入7 时,输出的结果是( )
( same Pro as 16 , different input ) 男男生子
# include < stdio. h >
main ( )
{
Int x , y , z ;
scanf ( " % d ' , & x ) ;
if ( x > 5 )
{
y = 100 ;
z =-5 ;
}
printf (" %d %d %d " , x , y , z ) ;
}
A ) 7 100 -5 B ) 7 3 -5
12 .以下各项中,continue 语句有助于实现的任务是( )
A )无限执行一个语句
B )绕过循环体的剩余部分,并将控制权转交给循环的开始
C )将控制权传递到循环之外
D ) ( B )和(C )
13 .在下面的代码段中,语句x = 1 会执行( )次
for ( j = 1 ; j < = n ; j + + ) 徐若瑄 天使心
for ( k = l ; k < = j ; k + + )
x = l ;
A ) n B ) n ( n + 1 ) C ) n² D ) n ( n + l ) / 2
14 .在C 语言中,变量所分配的内存空间大小( )
A )均为一个字节 B )由用户自己定义
C )由变量的类型决定 D )是任意的
15 .若己定义:int*p, a; ,则语句p=&a;中的运算符“&”,的含义是( )
A )位与运算 B )逻辑与运算
C )取指针内容 D )取变量地址
16 .在C 语言中,具有动态申请内存块功能的函数是( )
A ) malloc () B ) free () C ) int () D ) delete ()
17 .如果n=2 ,以下程序输出结果是( )
switch ( n )
{
case (l): printf (" You have chosen to add data \ n" ) ; break ; case (2): printf (" You have chosen to delete data \ n " ) ; break ; case (3): printf (" You have chosen to view data \ n") ;
case ( 4 ) : printf (" You have chosen to print data \ n " ) ; break ; default : printf ( " Invalid input \ n " ) ; break ;
}
A )You have chosen to add data B ) You have chosen to delete data C )You have chosen to delete data Invalid input
D )You have chosen to delete data You have chosen to view data
18 .一维数组是( )
A )一种数据的集合,这些数据均属于同一种类型,并且在存储位置上彼此相邻
B )一种数据的集合,这些数据属于多种类型,并且在存储位置上彼此相邻
C )一种数据的集合,这些数据均属于同一种类型,但在存储位置上没有特定的顺序
D )一种数据的集合,这些数据属于多种类型,在存储位置上没有特定的顺序
19 .以下代码段中的赋值语句产生的结果是( )
Int x [3] ;
丝绸之路的起点和终点X[3] = 25 ;
A ) 25 被赋给x 的第三个元素 B ) 25 被赋给x 的第二个元素
C ) 25 被赋给x 的所有三个元素 D ) x [3]越界
20 .以下程序的输出结果是( )
Void main ()
{
char ch [2] [5] = { " 6937 " , " 8254 " } , * p [2] ;
int i , j , s = O ;
for ( i=0 ; i < 2 ; i++)
p [i] = ch [i〕 ;
for ( i=0 ; i < 2 ; i++)
for ( j = 0 ; p [i] [j] >' \ 0 ' ; j +=2 )
s = 10 * s + p [i] [j] -‘O ' ;
printf ( " % d \ n " , s ) ;
}
A ) 69825 B ) 63825 C ) 6385 D ) 693825
21 .数组int x [4] [5]可以存储( )个整数
A ) 22 B ) 20 C ) 9 D ) 12
22 .以下数组声明非法的是( )
A ) int a [] []; B ) int room [-2 ][2] ;
C ) char x[25] [890]; D ) A 和B
23 .以下程序的输出结果是( )
Int a , b ;
Void fun ()
{
a = 100 ;
b = 200 ;
}
Void main ()
{
Int a = 7 , b = 5 ;
fun () ;
} printf ( "%d %d \ n " , a , b ) ;
A ) 10O200 B ) 57 C ) 20010O D ) 75
24 .在C 语言中,用户定义的数据类型使用以下( )关键字定义
A ) struct B ) union C ) typedef D )以上三项皆错
25 .以下程序的输出结果是( )。
Void main ()
{ int a = 0 ,i;
for ( i=1 ; i < 5 ; i + + ) 除甲醛排名第一的品牌
switch ( i )
{ case 0 :
Case 3 : a + = 2
Case l :
Case 2 : a + = 3 ;
default : a + = 5 ;
}
}
printf ( " % d ,a );
}
A)白蚁怎么消灭才干净31 B)13 C)10 D)20
26 .在C 语言中,以下正确的说法是( )
A )实参和与其对应的形参各占用独立的存储单元
B )实参和与其对应的形参共占用一个存储单元
C )只有当实参和与其对应的形参同名时才共占用一个存储单元
D )形参是虚拟的,不占用存储单元
27 .若有以下说明和语句:
struct student
{
int age;
int num;
发布评论