题目
C选择题201306答案0149、C源程序[1]由函数构成,函数则由函数的首体和( )A. 函数体 B. 复合语句 C. 结构体 D. 联合体 E. )。 F. 注释部分在C源程序可独占一行,也可跟在一行语句的后面 G. 花括号"( )"只能用作复合语句的定界符函数是C源程序的基本单位,所有函数名都可以由用户命名分号是C语句之间的分隔符,并不表示一条语句的结束)。注释部分只能单独占用一行,不能跟在一行语句的后面函数体的定界符只能用一对花括号"( )"C源程序中每一行就是一条语句C源程序都是从main()函数开始执行,所以main()函数必须位于程序文件最前面in()函数的位置( C )。必须位于程序文件的最前面必须位于用户自定义函数的前面可位于用户自定义函数之前,也可位于用户自定义函数之后必须位于C库函数的后面)。汇编语言[2]、高级语言[3]和低级语言[4]自然语言[5]、流程图和伪代码机器语言[6]、汇编语言和高级语言高级语言、自然语言和伪代码)。328LongLong3276832768L D.32768+Long)。'a'+3E13 C.'3a' D.'n')。单精度型枚举类型长复数类型 D.整型)。'b''n' C.'t' D."b")。pro?a_countr c; 则表达式c+10*x的结果类型是(har c; 则表达式c+10*x的结果类型是(B )。in( )n",N*2); }61113 D.16)。预处理命令行都必须以#号开始预处理命令“#define N 3”后不能加“;”C源程序加入一些预处理命令是为了改进程序设计环境[7],提高编程效率宏定义也是C语言的语句,可出现在源程序中任意位置)。K 3in( )=2,b=4;n", a *(K+b));}6101411)。M 5N M+1N N*Min( )n",2*NN); }15205260的长度是()。M 3+1 void main( )( int a[2*M]; …… )67810=5,*q=b; 下列运算无意义的是( A )。q+p*q+*pq-p*q-*p[6]=(1,2,3,4,5,6),*p; 下列赋值语句[8]不合理的是()。p=a;p=a[0]p=a[0];p=a[0]+1;=5, *p1=a; float=5.1,*p2=b;下列正确的赋值语句是()。p1=*(a+1);p2=b;b=*p1+*p2;*p2=*a;[5]=(1,2,3,4,5),*pa=a; 下列叙述正确的是( C )。pa与a[0]的值相等a++与pa++的作用相同pa[0]与a[0]的值相等pa+2与a[2]的值相同[5]=(1,2,3,4,5);执行*p=a;后能表示a[1]地址的是()。a++p++a[1]p[1])。in( )=3,b=4,c;int *p1,*p2;; p2=b;p2=p1;=*p1+2*(*p2);n",c); }9 B.7 C.15 D.11)。void fn(int x, int y, int *p)(*p=x+y;)in( ); fn(3,a,b);=%d,b=%dn",a,b);}a=3,b=3 B.a=3,b=6 C.a=6,b=6 D.a=1,b=3)。in( )[2][3]=({1,2,3),(4,5,6)};;;p<a[0]+5;p++)printf("%d ",*p);n");}1 2 3 4 5 61 2 3 4 51 2 3 D.1 4 2 5 3 6)。in( )=1,b=2;=a,*pb=b;=*pb; *pb=*pa;n",a,b);}1,1 B.1,2 C.2,1 D.2,2)。void fn(int *p,int n)( int j;or(j=0;j<n;j++) *(p+j)+=1;)in( )[3]=(1,2,3);int i;,3);or(i=0;i<3;i++)+i));}1 2 32 3 43 4 53 3 4r *name; float score; }stu,*p=stu;)。p.scorestu.nump->numstu.name)。( char c; int k; )data1;in()ta1.k=66;ta1.c='A';n",data1.k);}B65661751、若有以下对结构类型和结构变量的定义:te ( int year; int month; int day; );r name[20]; struct datehar name[20]; structate birthday; }stu;y成员进行正确赋值的是( C )。birthday.day=20date.day=20stu.birthday.day=20stu.day=20r name[20]; }stu1,stu2;)。stu1=stu2;stu1.num=stu2.num;strcpy(stu1.name,stu2.name);stu1.name=stu2.name;)。struct student(int num; float score;) stu1=(1001, 85.0);struct(int num; float score;)stu1=(1001, 85.0);struct student(int num; float score;);student stu1=(1001,85.0);struct student (int num; float score;);struct student stu1=(1001,85.0);1849、若已定义:struct student( int num;r name[20];[2]={{20,"Yan wei"),(19,"Ma tao")};struct student *p=stu;Ma tao "的是( C )。stu[1].name( p+1)->name C.stu.name D.(* (p+1)).name)。[2][2]=(1,2,3,4),(*p)[2];;n",(*p)[2] );1234[5]=(1,2,3,4,5); int *p=a[2]; 则下列值为3的是()。*pp-ap-a[0][5]=(1,2,3,4,5),*p=a[2]; 则不能表示a[0]地址的是()。*p-2a[0]p-21853、若已定义:struct student( int num;t score;[2]={{101,85.5),(102,90.0)},*p=stu;)。p->numstu[2].numstu.nump[1]->num_day; ,则枚举常量[9]tue和thu的值分别是( A )。1和62和42和61和3)。enum a(a,2,b);enum a(x=2,y=1,z);enum a(a=3,b,c=0);enum a(x=-1,y);)。enum a=(a,b,c);enum a(a=-2,b=1,c=3);enum a("a","b","c");enum a=(‘a’,’b’,’c’);)。typedef INTEGER int;typedef INTEGER=inttypedef int INTEGER;typedef int=INTEGER)。week day;week_day day;enum week_day day;enum week day;t内容是()。h>in()ILE *fp;int i=1,j=2;t ","w");printf(fp,"%d",i);close(fp);t","w");printf(fp,"%d",j);close(fp);}121 212ILE *fp;要打开d盘temp文件夹下的file1.txt文件,打开方式是既能读也能写,正确的语句是( A )。fp=fopen("d:tempfile1.txt", "rw");fp=fopen("d:tempfile1.txt", "wr");fp=fopen("d:tempfile1.txt", "w+");fp=fopen("d:/temp/file1.txt", "r+");ILE *fp; 则不能向fp所指向的文件写入字符串"hello"的语句是( D )。fputs("hello",fp);fprintf(fp,"%s","hello");fwrite("HELLO",1,5,fp);fwrite("hello",5,fp);)。h>in()ILE *fp;p = fopen("file1.txt", "w+");n 0;lse( fputs("one",fp);rewind(fp);puts("two",fp);close(fp);return 1;)}onetwoonetwo)。ch=fgetc(fp);ch=fgets(fp);ch=getchar();ch=getc();floatintdoublechar=12,b=8,a+b的值是( C )。412208=2; double x=5.5; 下列不正确的表达式是()。(int)(x%a)(int)(x/a)(int)x/ar c; 则( C )是正确的赋值表达式。c='101'c="101"+10.78c=101c="e"+10.78t x,y,z; 则表达式(D )与右侧所示代数式计算结果不相符。(x+y)/(1+z)/3(x+y)/3/(1+z)(x+y)/(3*(1+z))1/3*(x+y)/(1+z)+(++b); 执行后x,a的值分别是(D )。12,614,512,514,6=2; 语句a*=a-=a+=3; 执行后,a的值是( D )。59 C.3 D.0语言要求运算对象必须是整型的算术运算符是()。/+-%=2; 则( C )是正确的赋值表达式。C.a-=(a*3)a+3=aa-=(a*3)a*3=4; 语句a=(i--)+(i--); 执行后a的值是()。56 C.4 D.7)可用于求x的绝对值。abs(x)log(x) C.fabs(x) D.sqrt(x))是正确的数据输入方式。in(),b,c;nf("%d-%d-%d",a,b,c);n",a,b,c);}12312312123,123,12123-123-12123,12312r ca; 要从键盘输入字符''给变量caa; 要从键盘输入字符'B'给变量ca,应使用的语句是()。putchar(ca); B.getchar(ca); C.scanf("%c", ca); D.ca=getchar( );)可以实现输出结果为:3*2=6 。printf("x*y=%d",x*y); B.printf("%d*%d=%d",x,y,x*y); C.printf("%d*%d=x*y",x,y); D.printf("x,y=x*y");)。in(),b;nf("%d,%d",a,b);n",a,b);}a=3,b=63,636 D.6,3)能正确判断变量a和b的值同时为正或同时为负。(a>0 || b>0)(a<0 || b<0)(a>0 b>0)(a<0 b<0)(a+b>0) (a*b<0)(a>0 b>0)||(a<0 b<0)=4,b=3,c=2; 下列表达式值为0的是( C )。b+c<a+bc%b b/a D.(b-a)(b-c))。x(!y)x==(y!=x)(!x)yx||!yr ca; 判断变量ca值为大写字母的逻辑表达式是(a; 判断变量ca值为大写字母的逻辑表达式是( B )。'A'<=ca<='Z'(ca>='A')(ca<='Z')('A'>=ca) ('Z'<=ca)(ca>=A)(ca<=Z))表达式无法正确表示数学关系式|x-y|>3。(x-y)>3||(x-y)<-3abs(x-y)>3(x-y)<-3 (x-y)>3(x-y)*(x-y)>9=5;float x=5.3; 则表达式 a%3/2+x 的值为()。6.365.3=7; float x=2.5,y=5; 则表达式x+(a/3*(int)(x+y))%4的值是( C )。5.53.54.52.5)。2365)。!、*、+、=*、!、+、= C.!、*、=、+ D.!、=、*、+)。10.40.5x<y?x:y的值是( D )。1243)。in( )( int k=1;h(++k)ult: printf("%d",k);se 1: printf("%d",k);reak;se 2: printf("%d",2*k);se 3: printf("%d",3*k);reak;)}464111,b,c; 则语句( D )与k=a>b?(b>c?1:0):0语句的功能等价。if(a>b||b>c) k=1;if(a<=b) k=0;lse if(b<=c) k=1;lse k=0;if(a>b) k=1;lse if(b>c) k=1;if(a>bb>c) k=1;lse k=0;)不能构成一条if语句。if(x>0) a=1; else a=2;if(x==0) ; else a=2; C.if(x>0) ; D.if(x==0) a=1:b=2;)。in( )=23;%3)ult: printf("DD");se 1: printf("AA");reak;se 2: printf("BB");se 3: printf("CC");}}C.BBCC D.AABBCC D.DAA)。循环体语句执行2次循环体语句执行3次循环体语句一次也不执行循环体语句执行1次的值为()。=0;hile(i++<=6)+=1;reak;+=2;}1 B.4 C.3 D.6)。in()( int i; for(i=7;i>3;i--,i--)");)AA C.AAA D.AAAA)。继续执行continue语句后的循环体各语句结束本次循环并跳出循环体结束本次循环并执行下一次的循环终止程序运行)。int i=8,count=0;hile(i>=2)(++count; i-=2; )10468[5]=(5,3,1);语句的功能描述正确的是( B )。将3个初值依次赋给x[1]至x[3],且其他元素值均为0将3个初值依次赋给x[0]至x[2],且其他元素值均为0将3个初值依次赋给x[2]至x[4],且其他元素值均为0将3个初值依次赋给x[3]至x[5],且其他元素值均为0)。in( )[5]=(1),i;or(i=0;i<4;i++)[i+1]=a[i]+2*(i+1);or(i=0;i<5;i++)[i]);}1 2 3 4 51 3 5 7 91 2 6 15 231 3 7 13 21[8]; 对数组a元素引用正确的是()。a[-1] B.a[5] C.a(6) D.a[8])。[5]=(2,4,3,5,6),i,s=0;or(i=1;i<4;i++)[i-1];n",s);12 B.9 C.14 D.20)。[10]=(0,1,2,3,4,5,6,7,8,9),i=0,t;hile(i<=4)[i];[i]=a[9-i];[9-i]=t;i++;}or(i=0;i<10;i++)[i]);0123456789987654321024680135791357924680rr[][3]=(1,2,3,4,5,6); 则数组a第一维长度是( C )。632 D.1)。in( )[3][3]=(0),i,j;or(i=0;i<3;i++)[i][0]=i+1;or(i=0;i<3;i++)( for(j=0;j<3;j++)[i][j]);n");)}1 2 3 0 0 0 0 0 01 0 0 0 2 0 0 0 30 0 1 0 2 0 3 0 01 0 0 2 0 0 3 0 0rr的是(C )。int arr[2][3]=({1,2),(3,4),(5)};int arr[2][]=(1,2,3,4,5);int arr[2][3]=({1,2),(3,4,5)};int arr[][]=({1,2),(3,4,5)};[ ][4]=({0),(1,2),(3,4,5),(6,7,8,9)}; 则a[2][2]的值为( C )。24 C.5 D.9语言中,二维数组元素的存放顺序是( A)。按行优先由用户自己定义按列优先既可以按行优先,也可以按列优先)。C语言没有字符串类型变量,可用字符数组实现字符串操作字符串中可以含有'0'字符只能利用赋值语句实现字符数组的整体赋值字符数组只能存放字符串,不能存放单个字符r s3[20], s1[10]="How are ", s2[10]="you";t(s1,s2));s3的值是( C )。How areyouHow areHow are yous1 s2)scanf("%s%s",s1,s2);gets(s1[20],s2[20]);scanf("%c%c",s1[20],s2[20] ); D.getch(s1,s2);。r str1[]=( 'Y','o','u','0','a','r','e','0','w','e','l');char str2[]=('w','e','l','c','o','m','e','0');puts(strcat(str1,str2));You welcomeYouarewelwelcomeYou are welcome D.Youwelcome)。r s1[7]="abcdef",s2[4]="12";strcpy(s1,s2);[5]);abcdef1212 e C.12 ef f D.12 f)。数组首元素的值数组的长度数组的首地址 D.数组中每个元素的值)。int fun( int k)h(k)se 2: k++;se 3:se 4: k++;ult: k++;}return k;}in( )n",fun(2)); }2345)。=1,b=2,m=3;,b),m);2,33,3 C.(1,2),3 D.1,3)。函数至少要有一个返回值形参是变量名时,实参[10]也只能是变量名,不可以是表达式函数的形参在被调用前是没有确定值的函数的形参和对应的实参个数应相等,类型可以不兼容)。h>int fun(int x, int y)( int z; z=x>y?x:y;return(x+z);)in()=6,b=3;n",fun(a,b));}129 C.7 D.4)。M 3N M+5
C选择题201306答案
0149、C源程序[1]由函数构成,函数则由函数的首体和( )
A. 函数体B. 复合语句
C. 结构体
D. 联合体
E. )。
F. 注释部分在C源程序可独占一行,也可跟在一行语句的后面
G. 花括号"{ }"只能用作复合语句的定界符
函数是C源程序的基本单位,所有函数名都可以由用户命名
分号是C语句之间的分隔符,并不表示一条语句的结束
)。
注释部分只能单独占用一行,不能跟在一行语句的后面
函数体的定界符只能用一对花括号"{ }"
C源程序中每一行就是一条语句
C源程序都是从main()函数开始执行,所以main()函数必须位于程序文件最前面
in()函数的位置( C )。
必须位于程序文件的最前面
必须位于用户自定义函数的前面
可位于用户自定义函数之前,也可位于用户自定义函数之后
必须位于C库函数的后面
)。
汇编语言[2]、高级语言[3]和低级语言[4]
自然语言[5]、流程图和伪代码
机器语言[6]、汇编语言和高级语言
高级语言、自然语言和伪代码
)。
328Long
Long32768
32768L D.32768+Long
)。
'a'+3
E13 C.'3a' D.'\n'
)。
单精度型
枚举类型
长复数类型 D.整型
)。
'b'
'\n' C.'\t' D."b"
)。
pro
?a
_count
r c; 则表达式c+10*x的结果类型是(
har c; 则表达式c+10*x的结果类型是(B )。
in( )
\n",N*2); }
6
11
13 D.16
)。
预处理命令行都必须以#号开始
预处理命令“#define N 3”后不能加“;”
C源程序加入一些预处理命令是为了改进程序设计环境[7],提高编程效率
宏定义也是C语言的语句,可出现在源程序中任意位置
)。
K 3
in( )
=2,b=4;
\n", a *(K+b));
}
6
10
14
11
)。
M 5
N M+1
N N*M
in( )
\n",2*NN); }
15
20
52
60
的长度是(
)。
M 3+1 void main( ){ int a[2*M]; …… }
6
7
8
10
=5,*q=b; 下列运算无意义的是( A )。
q+p
*q+*p
q-p
*q-*p
[6]={1,2,3,4,5,6},*p; 下列赋值语句[8]不合理的是(
)。
p=a;
p=a[0]
p=a[0];
p=a[0]+1;
=5, *p1=a; float
=5.1,*p2=b;下列正确的赋值语句是(
)。
p1=*(a+1);
p2=b;
b=*p1+*p2;
*p2=*a;
[5]={1,2,3,4,5},*pa=a; 下列叙述正确的是( C )。
pa与a[0]的值相等
a++与pa++的作用相同
pa[0]与a[0]的值相等
pa+2与a[2]的值相同
[5]={1,2,3,4,5};执行*p=a;后能表示a[1]地址的是(
)。
a++
p++
a[1]
p[1]
)。
in( )
=3,b=4,c;
int *p1,*p2;
; p2=b;
p2=p1;
=*p1+2*(*p2);
\n",c); }
9 B.7 C.15 D.11
)。
void fn(int x, int y, int *p)
{*p=x+y;}
in( )
; fn(3,a,b);
=%d,b=%d\n",a,b);
}
a=3,b=3 B.a=3,b=6 C.a=6,b=6 D.a=1,b=3
)。
in( )
[2][3]={{1,2,3},{4,5,6}};
;
;p<a[0]+5;p++)
printf("%d ",*p);
\n");
}
1 2 3 4 5 6
1 2 3 4 5
1 2 3 D.1 4 2 5 3 6
)。
in( )
=1,b=2;
=a,*pb=b;
=*pb; *pb=*pa;
\n",a,b);
}
1,1 B.1,2 C.2,1 D.2,2
)。
void fn(int *p,int n)
{ int j;
or(j=0;j<n;j++) *(p+j)+=1;
}
in( )
[3]={1,2,3};
int i;
,3);
or(i=0;i<3;i++)
+i));
}
1 2 3
2 3 4
3 4 5
3 3 4
r *name; float score; }stu,*p=stu;
)。
p.score
stu.num
p->num
stu.name
)。
{ char c; int k; }data1;
in()
ta1.k=66;
ta1.c='A';
\n",data1.k);
}
B
65
66
1751、若有以下对结构类型和结构变量的定义:
te { int year; int month; int day; };
r name[20]; struct date
har name[20]; struct
ate birthday; }stu;
y成员进行正确赋值的是( C )。
birthday.day=20
date.day=20
stu.birthday.day=20
stu.day=20
r name[20]; }stu1,stu2;
)。
stu1=stu2;
stu1.num=stu2.num;
strcpy(stu1.name,stu2.name);
stu1.name=stu2.name;
)。
struct student{int num; float score;} stu1={1001, 85.0};
struct{int num; float score;}stu1={1001, 85.0};
struct student{int num; float score;};
student stu1={1001,85.0};
struct student {int num; float score;};
struct student stu1={1001,85.0};
1849、若已定义:
struct student
{ int num;
r name[20];
[2]={{20,"Yan wei"},{19,"Ma tao"}};struct student *p=stu;
Ma tao "的是( C )。
stu[1].name
( p+1)->name C.stu.name D.(* (p+1)).name
)。
[2][2]={1,2,3,4},(*p)[2];
;
\n",(*p)[2] );
1
2
3
4
[5]={1,2,3,4,5}; int *p=a[2]; 则下列值为3的是(
)。
*p
p-a
p-a[0]
[5]={1,2,3,4,5},*p=a[2]; 则不能表示a[0]地址的是(
)。
*p-2
a[0]
p-2
1853、若已定义:
struct student
{ int num;
t score;
[2]={{101,85.5},{102,90.0}},*p=stu;
)。
p->num
stu[2].num
stu.num
p[1]->num
_day; ,则枚举常量[9]tue和thu的值分别是( A )。
1和6
2和4
2和6
1和3
)。
enum a{a,2,b};
enum a{x=2,y=1,z};
enum a{a=3,b,c=0};
enum a{x=-1,y};
)。
enum a={a,b,c};
enum a{a=-2,b=1,c=3};
enum a{"a","b","c"};
enum a={‘a’,’b’,’c’};
)。
typedef INTEGER int;
typedef INTEGER=int
typedef int INTEGER;
typedef int=INTEGER
)。
week day;
week_day day;
enum week_day day;
enum week day;
t内容是(
)。
h>
in()
ILE *fp;
int i=1,j=2;
t ","w");
printf(fp,"%d",i);
close(fp);
t","w");
printf(fp,"%d",j);
close(fp);
}
1
2
1 2
12
ILE *fp;要打开d盘temp文件夹下的file1.txt文件,打开方式是既能读也能写,正确的语句是( A )。
fp=fopen("d:\\temp\\file1.txt", "rw");
fp=fopen("d:\temp\file1.txt", "wr");
fp=fopen("d:\temp\file1.txt", "w+");
fp=fopen("d:/temp/file1.txt", "r+");
ILE *fp; 则不能向fp所指向的文件写入字符串"hello"的语句是( D )。
fputs("hello",fp);
fprintf(fp,"%s","hello");
fwrite("HELLO",1,5,fp);
fwrite("hello",5,fp);
)。
h>
in()
ILE *fp;
p = fopen("file1.txt", "w+");
n 0;
lse
{ fputs("one",fp);
rewind(fp);
puts("two",fp);
close(fp);
return 1;
}
}
one
two
onetwo
)。
ch=fgetc(fp);
ch=fgets(fp);
ch=getchar();
ch=getc();
float
int
double
char
=12,b=8,a+b的值是( C )。
4
12
20
8
=2; double x=5.5; 下列不正确的表达式是(
)。
(int)(x%a)
(int)(x/a)
(int)x/a
r c; 则( C )是正确的赋值表达式。
c='101'
c="101"+10.78
c=101
c="e"+10.78
t x,y,z; 则表达式(D )与右侧所示代数式计算结果不相符。
(x+y)/(1+z)/3
(x+y)/3/(1+z)
(x+y)/(3*(1+z))
1/3*(x+y)/(1+z)
+(++b); 执行后x,a的值分别是(D )。
12,6
14,5
12,5
14,6
=2; 语句a*=a-=a+=3; 执行后,a的值是( D )。
5
9 C.3 D.0
语言要求运算对象必须是整型的算术运算符是(
)。
/
+
-
%
=2; 则( C )是正确的赋值表达式。
C.a-=(a*3)
a+3=a
a-=(a*3)
a*3=4
; 语句a=(i--)+(i--); 执行后a的值是(
)。
5
6 C.4 D.7
)可用于求x的绝对值。
abs(x)
log(x) C.fabs(x) D.sqrt(x)
)是正确的数据输入方式。
in()
,b,c;
nf("%d-%d-%d",a,b,c);
\n",a,b,c);
}
12312312
123,123,12
123-123-12
123,12312
r ca; 要从键盘输入字符'
'给变量ca
a; 要从键盘输入字符'B'给变量ca,应使用的语句是(
)。
putchar(ca); B.getchar(ca); C.scanf("%c", ca); D.ca=getchar( );
)可以实现输出结果为:3*2=6 。
printf("x*y=%d",x*y); B.printf("%d*%d=%d",x,y,x*y); C.printf("%d*%d=x*y",x,y); D.printf("x,y=x*y");
)。
in()
,b;
nf("%d,%d",a,b);
\n",a,b);
}
a=3,b=6
3,6
36 D.6,3
)能正确判断变量a和b的值同时为正或同时为负。
(a>0 || b>0)(a<0 || b<0)
(a>0 b>0)(a<0 b<0)
(a+b>0) (a*b<0)
(a>0 b>0)||(a<0 b<0)
=4,b=3,c=2; 下列表达式值为0的是( C )。
b+c<a+b
c%b b/a D.(b-a)(b-c)
)。
x(!y)
x==(y!=x)
(!x)y
x||!y
r ca; 判断变量ca值为大写字母的逻辑表达式是(
a; 判断变量ca值为大写字母的逻辑表达式是( B )。
'A'<=ca<='Z'
(ca>='A')(ca<='Z')
('A'>=ca) ('Z'<=ca)
(ca>=A)(ca<=Z)
)表达式无法正确表示数学关系式|x-y|>3。
(x-y)>3||(x-y)<-3
abs(x-y)>3
(x-y)<-3 (x-y)>3
(x-y)*(x-y)>9
=5;float x=5.3; 则表达式 a%3/2+x 的值为(
)。
6.3
6
5.3
=7; float x=2.5,y=5; 则表达式x+(a/3*(int)(x+y))%4的值是( C )。
5.5
3.5
4.5
2.5
)。
2
3
6
5
)。
!、*、+、=
*、!、+、= C.!、*、=、+ D.!、=、*、+
)。
1
0.4
0.5
x<y?x:y的值是( D )。
1
2
4
3
)。
in( )
{ int k=1;
h(++k)
ult: printf("%d",k);
se 1: printf("%d",k);
reak;
se 2: printf("%d",2*k);
se 3: printf("%d",3*k);
reak;
}
}
46
4
1
11
,b,c; 则语句( D )与k=a>b?(b>c?1:0):0语句的功能等价。
if(a>b||b>c) k=1;
if(a<=b) k=0;
lse if(b<=c) k=1;
lse k=0;
if(a>b) k=1;
lse if(b>c) k=1;
if(a>bb>c) k=1;
lse k=0;
)不能构成一条if语句。
if(x>0) a=1; else a=2;
if(x==0) ; else a=2; C.if(x>0) ; D.if(x==0) a=1:b=2;
)。
in( )
=23;
%3)
ult: printf("DD");
se 1: printf("AA");
reak;
se 2: printf("BB");
se 3: printf("CC");
}
}
C.BBCC D.
AA
BBCC D.DAA
)。
循环体语句执行2次
循环体语句执行3次
循环体语句一次也不执行
循环体语句执行1次
的值为(
)。
=0;
hile(i++<=6)
+=1;
reak;
+=2;
}
1 B.4 C.3 D.6
)。
in()
{ int i; for(i=7;i>3;i--,i--)
");
}
AA C.AAA D.AAAA
)。
继续执行continue语句后的循环体各语句
结束本次循环并跳出循环体
结束本次循环并执行下一次的循环
终止程序运行
)。
int i=8,count=0;
hile(i>=2)
{++count; i-=2; }
10
4
6
8
[5]={5,3,1};语句的功能描述正确的是( B )。
将3个初值依次赋给x[1]至x[3],且其他元素值均为0
将3个初值依次赋给x[0]至x[2],且其他元素值均为0
将3个初值依次赋给x[2]至x[4],且其他元素值均为0
将3个初值依次赋给x[3]至x[5],且其他元素值均为0
)。
in( )
[5]={1},i;
or(i=0;i<4;i++)
[i+1]=a[i]+2*(i+1);
or(i=0;i<5;i++)
[i]);
}
1 2 3 4 5
1 3 5 7 9
1 2 6 15 23
1 3 7 13 21
[8]; 对数组a元素引用正确的是(
)。
a[-1] B.a[5] C.a(6) D.a[8]
)。
[5]={2,4,3,5,6},i,s=0;
or(i=1;i<4;i++)
[i-1];
\n",s);
12 B.9 C.14 D.20
)。
[10]={0,1,2,3,4,5,6,7,8,9},i=0,t;
hile(i<=4)
[i];
[i]=a[9-i];
[9-i]=t;
i++;
}
or(i=0;i<10;i++)
[i]);
0123456789
9876543210
2468013579
1357924680
rr[][3]={1,2,3,4,5,6}; 则数组a第一维长度是( C )。
6
3
2 D.1
)。
in( )
[3][3]={0},i,j;
or(i=0;i<3;i++)
[i][0]=i+1;
or(i=0;i<3;i++)
{ for(j=0;j<3;j++)
[i][j]);
\n");
}
}
1 2 3 0 0 0 0 0 0
1 0 0 0 2 0 0 0 3
0 0 1 0 2 0 3 0 0
1 0 0 2 0 0 3 0 0
rr的是(C )。
int arr[2][3]={{1,2},{3,4},{5}};
int arr[2][]={1,2,3,4,5};
int arr[2][3]={{1,2},{3,4,5}};
int arr[][]={{1,2},{3,4,5}};
[ ][4]={{0},{1,2},{3,4,5},{6,7,8,9}}; 则a[2][2]的值为( C )。
2
4 C.5 D.9
语言中,二维数组元素的存放顺序是( A)。
按行优先
由用户自己定义
按列优先
既可以按行优先,也可以按列优先
)。
C语言没有字符串类型变量,可用字符数组实现字符串操作
字符串中可以含有'\0'字符
只能利用赋值语句实现字符数组的整体赋值
字符数组只能存放字符串,不能存放单个字符
r s3[20], s1[10]="How are ", s2[10]="you";
t(s1,s2));s3的值是( C )。
How are
youHow are
How are you
s1 s2
)
scanf("%s%s",s1,s2);
gets(s1[20],s2[20]);
scanf("%c%c",s1[20],s2[20] ); D.getch(s1,s2);
。
r str1[]={ 'Y','o','u','\0','a','r','e','\0','w','e','l'};char str2[]={'w','e','l','c','o','m','e','\0'};puts(strcat(str1,str2));
You welcome
Youarewelwelcome
You are welcome D.Youwelcome
)。
r s1[7]="abcdef",s2[4]="12";
strcpy(s1,s2);
[5]);
abcdef12
12 e C.12 ef f D.12 f
)。
数组首元素的值
数组的长度
数组的首地址 D.数组中每个元素的值
)。
int fun( int k)
h(k)
se 2: k++;
se 3:
se 4: k++;
ult: k++;
}
return k;
}
in( )
\n",fun(2)); }
2
3
4
5
)。
=1,b=2,m=3;
,b),m);
2,3
3,3 C.(1,2),3 D.1,3
)。
函数至少要有一个返回值
形参是变量名时,实参[10]也只能是变量名,不可以是表达式
函数的形参在被调用前是没有确定值的
函数的形参和对应的实参个数应相等,类型可以不兼容
)。
h>
int fun(int x, int y)
{ int z; z=x>y?x:y;
return(x+z);
}
in()
=6,b=3;
\n",fun(a,b));
}
12
9 C.7 D.4
)。
M 3
N M+5
题目解答
答案
A