A) 45,23 B) 45,45 C) 23,45 D) 23,23
(42) 若有定义int a=1,b=2,t=3;
struct data { char a; float b[3]; long c; }d1;
则变量d1的长度是( B )。 A) 4 B) 17 C) 12 D) 15
(43) 以下程序的运行结果是( A )。
main()
{ int a[3]={1,2,3};
int *num[3]; int **p,i;
for (i=0;i<3;i++) num[i]=&a[i]; p=num;
printf(\} A) 1 B) &a[0] C) 3
D) num
(44) 下面程序运行后,屏幕显示write ok!,则下面叙述正确的是( C )。
main( ) { FILE *fp;
fp=fopen(“data.txt”,”wt”); if (fp!=NULL)
{ fprintf(fp,”%s\\n”,”File write successd!\\n”); fclose(fp);
printf(“write ok!\\n”); } }
A) 当前工作目录下找不到data.txt文件 B) 当前工作目录的data.txt文件已经打开 C) 当前工作目录的data.txt文件已经关闭
D) 当前工作目录下存在data.txt文件,其中的内容是”write ok!”
(45)( C )为正确的用户标识符。 A) union B) 3_row C) max_at D) min-5
(46) 若有定义:int b=-15;,则( C )为正确的赋值表达式。 A) b=*5 B) *b=6 C) b+=b*3 D) b+10=-5
(47) 以下叙述错误的是( C )。
A) 算术运算符中不包含“=”运算符
B) 模运算符“%”是c语言基本的算术运算符 C) 算术运算符中只有“*”、“/”优先级高于关系运算符
D) 自加和自减运算符只能用于变量,而不能用于常量或表达式
(48) 若有定义:float x=2,y; int a=3; 语句y=1*(x+a)/3;运行后,y的值为( D )。 A) 2.0 B) 1.0 C) 0
D) 1.666667
(49) 若有定义:int arr[15],n=5; 无法正确引用arr数组元素的是( A )。 A) arr[10+n] B) arr[0] C) arr[15-n] D) arr[n]
(50) 以下程序段运行后s的值是( B )。
int a[3][3]={1,2,3,1,2,3,1,2,3}; int i,j,s=0;
for (i=0;i<3;i++)
for (j=i;j<3;j++) s+=a[i][j];
A) 12 B) 14 C) 13 D) 15
(51) 以下程序段的运行结果是( C )。
char a[]=”abcdef”;
char b[]=”xyz”; strcpy(a,b);
printf(“%c”,a[2]); A) c B) y C) z D) b
(52) 以下程序的运行结果是( C )。
#define X a+b main( ) {
int a=3,b=4,s1; s1=2*X;
printf(\} A) 8 B) 14 C) 10 D) 6
(53) 若有定义int x=1,y=2,n=3; 则( C )为正确的表达式。 A) float(y/n) B) (x+y)(y+n)
C) x=y*3,y=(x+n)/y D) x=ny
(54) 若有定义
struct teacher { int num;
char name[10]; char sex; int age;
}t1={2001,”Li Ming”,?M?,35};
则下列( B/C )对结构变量引用是正确的。 A) t1->name B) t1.name C) t1.name[0] D) t1->name[0]
(55) 若有定义enum day{sun,mon,tue,wed,thu,fri,sat};,则枚举常量sun、mon的值分别为( A )。 A) 0 1 B) 7 1 C) 7 0 D) 1 2
(56) 若有语句int a; char c; scanf(“=%c”,&a,&c);,为将整数135赋给a,字符'6'赋给c,正确的数据输入方式是( C )。(说明:
(56) 若有定义int a=3,b=5,c=8; 则表达式!(a-b)|| (c-b)的值为( A )。 A) 1 B) 0 C) 2 D) 3
(57) 若有定义:float x=3.5,y=5.5; 则表达式( A )的值为2。 A) (int)(x+y)%7 B) int (x+y)%7 C) (x+y)%7
D) (int)x+y%7
(58) 若有定义:int i,x=0;语句for (i=1;i<=3;i++) x+=2;与下列( D )程序段不等价。 A) i=1;
for (;i<=3;i++) x+=2; B) for (i=1;i<=3;)
{x+=2;i++;} C) i=1;
for (;i<=3;) {x+=2;i++;}
D) i=1;
for ( ; ;i++) x+=2;
(59) 以下( A )对二维数组arr的初始化是错误的。 A) int arr[2][3]={{1,2},{3,4},{5,6}}; B) int arr[ ][3]={1,2,3,4,5}; C) int arr[2][3]={{1},{3,4,5}}; D) int arr[2][3]={{1,2},{3,4}};
(60) 若有定义:char str1[10],str2[10]=”Fujian”;,能将字符串”Fujian”赋给数组str1的正确语句是( D )。 A) strcopy(str1,str2); B) str1=”Fujian”; C) strcpy(str2,str1); D) strcpy(str1,str2);
(61) C语言中,数组名作为函数调用的实参时,下面叙述正确的是( A )。
相关推荐: