C语言模拟题 下载本文

44、 ( )是合法的数组定义

A char str[]={48,49,50,51,52,53}; B int a[5]={0,1,2,3,4,5}; C char srt[]='string'; D int a[]=\

45、( )关于C语言数据类型正确描述

A.变量必须先定义使用 B.枚举类型不是基本类型 C.不允许使用空类型 D. 数组并不是构造类型 46.()语句符合C语言语法

A.float z=28,int x.y=18; B.int x y=z;

C.int x=25,y=25,z=25; D.int x=25;y=25;z=25; 47.()能正确表示数学关系示100<=s<300 的表达式是

A.100<=s<300 B.(s>100)&(s<300) C.(s>=100)&&(s<300) D.(s>=100)and(s<300) 48、 错误的叙述是()

A 构成C语言的源程序的基本单元式算术式, B C程序必须包含一个MAIN()函数。

C一个C语言源程序可由一个或多个函数组成 D 若一条语句较长也可分写在下一行 49、()为正确的变量名

A jeep B-k15 Cint Dk-5 50、下列叙述中,错误的是()

A 自增与自减运算符的结合方向为自右向左 B C语言的表达式求值是其运算符的优先级先高后低的次序进行的

C C语言的运算符不包含摸运算符% D关系运算符的优先级低于算术运算符 51、若已定义float a=2.0,b=3.0; 使a值为5.0的表达式是()

A a+=b B a*=b+2.0 C a-=b+2.0Da/=b+2.0 52、 void mian()

{ int m,n=1,t=1; If(t==0) t=-t; else

m=n>=0?7:3 printf(“%d\\n”,m) }

A 7 B 1 C-1 D3 53、( )合法的数组定义

A char str[]=?string? B int a[]=”……”

C int a[5]={0,1,2…..5} D char str[]={48,49,….53} 54、输出结果是( )

Int a[][4]={1,2……11,12} printf(“%d\\n”,a[1][2]); A 3 B 2 C6 D7

55、 若定义int i=1 ,j=9 ;则表达式(++j)*(i- -)的值为( )

A 8 B 10 C 0 D 9

56、 对于整数变量a ,赋值语句a=(a%3=0?1:0);与( )语句不等价。

A if (a%3 )a=0;else a=1 ; B if( a%3) a=1 ;else a=0

C if (a%3==0 ) a=1;else a=0 D if (a%3!=0)a =0 ;else a=1 57、 do?while 循环与while 循环的主要区别是()

A while 循环体至少无条件执行一次,而do?while循环体可能都不执行 B do?while循环体中可适用break语句,while循环体不允许出现

C do?while循环体至少无条件执行一次,而while循环体可能都不执行

D do?while循环体中可使用continue语句,while 循环体中不允许出现continue 58、 以下程序段运行后,s的值为( )

int a[3][3]={3,2,1,3,2,1,3,2,1}; int j, k, p=1; for (j=0;k<2 ;i++) for( k=j ; k<4 ;k++)

A108 B12 C 18 D2 59、 以下程序段运行后,x[1]的值是( )

int x[5]={5,4,3,2,1}

x[1]=x[3]+x[2+2]-x[3-1] A 1 B 6 C 5 D0 60、以下程序段运行之后输出的结果是( )

Char a[]=”country?; Char b[]=”ganme” Strcpy(a,b)

Printf(“%c”,a[3]); A n B m C e D u

61、 以下程序的运行结果是( )

int fun (int a[4][4]) {int i ;

for ( i=0 ;i=4 ;i++) printf(“-”,a[i][2]); printf(“\\n”); }

main() {

Int a[4][4]={1,1,2,2,1,9,0,0,2,4,0,0,0,5,9,8}; fun(a) }

A 2000 B 2008 C 2009 D 1905 62、 以下程序运行后sum的值是()

Int k=0, sum=0;

Int a[3][4]={1,2,3,4,5,6,7,8,9,10,11,12}; for(; k<3;k++); sum+=a[k][k+1];

A 18 B 19 C21 D 9

63、数组元素下标的数据类型为()、

A实型常量或实型表达式 B 整型常量,字符型常量,或整型表达式 C字符型常量 D 任何类型的表达式 64、用数组名作为函数的实参时,错误的说法是()

A 定义形参数组时,元素的个数必须与实参相同 B 可以使用数组名作为形参 C 可以使用指针变量作为形参, D 实参传递给形参的值是数组的首地址

65、 若有定义#define N 3+2, 则表达式N*2的值是()

A 10 B 0 C 5 D 7

66、以下程序运行后表达式*(p++)的值为()

Char a[5]=\Char *p=a

A 存放'0'de 的地址 B '0' C 存放'w'的地址 D 'w' 67、以下程序运行后的变量ans的值为()

Int a[]={1,2,3},b[]={3,2,1}; Int *p=a,*q=b; Int k, ans=0; For(k=0;k<3;k++); If(*(p+k)==*(q+k)) Ans=ans+*(p+k)*2;

A 4 B 2 C 6 D 12

68、定义结构体类型变量teach1,不正确的是()

A struct Cstruct teacher {int num; {int num;

}teacher int age; }teach1;

B struct{int num; D struct teacher; Int age {int num; }teach1; int age}; 69.若已定义int arr[10],则不能引用arr数组元素的是( ) A arr[10-1] B arr[1] C arr[0] D arr[7+3]

70.自定义函数中若缺省函数值类型,则隐含的类型是( ) A double B float C int D long

71.若有以下程序段,则不能正确引用数组元素a[1][2]的是() Int (*p)[3]

Int a[][3]={1,2,3,4,5,6,7,8,9};p=a; A p[1][2]

B *(*(a+1)+2) C (*(p+1))[2]

D p[1]+2

72、C语言函数体是由()括起来的

A[ ] B{ } C < > D( )

73、()为正确的叙述

A A++3和4等价 B 'G'和\等价 C5/6和5.0/6.0等价 D int5.0/6和5/6等价 74、 若定义int a= -5,b= -8 c= -12 则表达式a>=b||b

A 变量j 的值 B 1 C 0 D 变量i的值

75、 若已定义int m=7则表达式k=m%2/4的值为( )

A5.75 B5.5 C 6.75 D 76、 下列叙述正确的是( )

A main函数必须位于文件的开头 B 每行只能写一条语句 C 程序必须包含输入语句 D 变量按所定义的类型存储数据 77、 ( )正确的叙述是

A ++3与4等价 B (int)5.0\\6与5\\6等价 C 5\\6与5.0\\6.0等价 D 等价

78、若已有定义的int a=1,b=2,t=3 则执行以下程序段后,变量a,b,t的值分别为( )

if(a

A a=2,b=1,t=1 B a=2,b=1,t=2 C a=2,b=1,t=3 D a=3,b=1,t=2 79、以下程序运行后,循环的次数为( )

{int i=8,a=0; for (;i<8;i++) a+=i; }

A 8 B 1 C无限 D 0

80、 以下程序段运行后,x[i]的值为( )

int x[5]={5,4,3,2,1};

x[1]=x[3]+x[2+2]-x[3-1];

A 6 B 1 C 0 D 5 81、 以下程序段运行后,表达式*(p++)的值为( )

char a[5]=\char *p=a;

A 存放?w?的地址 B ?w? C存放?o?的地址 D ?o? 82、 下面程序的运行结果是( )

main() { int a,b;

int *p1=&a,*p2=&b,*t;

a=10;b=20;t=p1;p1=p2;p2=t; intf(\

A 20 10 B 10 20 C 20 20 D 10 10 83、下列什么是正确的字符常量( )

?G?与G