智慧树知到答案C编程之初体验(山东联盟)最新答案

资源下载
下载价格15

第一章 单元测试

1、判断题:
C语言可以应用到硬件编程中。
选项:
A:对
B:错
答案: 【对】

2、判断题:
C语言的编译软件只有一种。
选项:
A:对
B:错
答案: 【错】

3、单选题:
2011年,ISO正式公布C语言新的国际标准,称为(   )标准。
选项:
A:C11
B:C99
C:C89
D:C90
答案: 【C11】

4、单选题:
C语言源文件的扩展名为(   )。
选项:
A:.c
B:.exe
C:.cpp
D:.obj
答案: 【.c】

5、单选题:
C语言之父是(    )?
选项:
A:比尔盖茨
B:肯.汤普逊
C:马云
D:丹尼斯.里奇
答案: 【丹尼斯.里奇】

6、判断题:
一个 C 程序可以包含若干函数,但必须有主函数。
选项:
A:对
B:错
答案: 【对】

7、判断题:
C程序中可以自定义函数。
选项:
A:错
B:对
答案: 【对】

8、判断题:
C语言的源文件的扩展名为.c。
选项:
A:错
B:对
答案: 【对】

9、判断题:
一个C程序可以有多个主函数。
选项:
A:对
B:错
答案: 【错】

10、判断题:
一个C程序可以没有主函数。
选项:
A:对
B:错
答案: 【错】

11、判断题:
在标准C中,语句必须以“;”结束。
选项:
A:对
B:错
答案: 【对】

12、判断题:
C程序的一行只能写一条语句。
选项:
A:对
B:错
答案: 【错】

13、单选题:
#include
int main()
{
printf(“Hello,World!”);
return 0;
}
以上C语言程序的功能是(    )。
选项:
A:

输出字符串:World!

B:

输出字符串:Hello

C:

输出字符串:Hello,World!

D:

输入字符串

答案: 【

输出字符串:Hello,World!

14、单选题:
C语言语句以(   )结束。
选项:
A:

;

B:

.

C:

,

D:

:

答案: 【

;

15、单选题:
包含头文件stdio.h正确的表示是(  )。
选项:
A:

#include《stdio.h》

B:

include

C:

include《stdio.h》

D:

#include

答案: 【

#include

16、单选题:
#include的功能是(   )。
选项:
A:包含头文件stdio.h
B:定义变量stdio.h
C:定义stdio.h是头文件
D:输出字符串:stdio.h
答案: 【包含头文件stdio.h】

17、判断题:
C语言主函数名必须是main。
选项:
A:错
B:对
答案: 【对】

18、单选题:
以下哪个不是C语言的编译软件?
选项:
A:Visual C++2010 express

B:Visual C++6.0
C:MS Office2010
D:DEV C++
答案: 【MS Office2010】

19、判断题:
只有计算机专业的学生才用学习C语言,其他专业学C语言一定没用。
选项:
A:对
B:错
答案: 【错】

20、单选题:
printf(“***n***n***”);语句的功能是(    )。
选项:
A:输出一行,包含九个*
B:输出三行,每行包含三个*
C:输出九行,每行包含一个*
D:输出一行,包含三个*
答案: 【输出三行,每行包含三个*】

第二章 单元测试

1、单选题:
已知字母A的ASCII码是65,以下程序段的输出的结果是(   )。
char c1=’A’,c2=’Y’;
printf(“%d,%d”,c1,c2);
选项:
A:65,90
B:A,Y
C:65,65
D:65,89
答案: 【65,89】

2、单选题:
有以下程序段:
char c1,c2;
c1=’A’+’8′-‘4′;
c2=’A’+’8’-‘5′;
printf(“%c,%d”,c1,c2);
已知字母A的ASCII码为65,程序运行后的输出结果是(   )。
选项:
A:E,68
B:D,69
C:输出无定值
D:E,D
答案: 【E,68】

3、单选题:
以下选项中可用作C程序合法实数的是(   )。
选项:
A:.1e0
B:3.0e0.2
C:9.12E
D:E9
答案: 【.1e0】

4、单选题:
有以下定义语句,编译时会出现编译错误的是(   )。
选项:
A:

char a=’aa’;

B:

char a=’a’;

C:

char a=’-‘;

D:

char a=”;

答案: 【

char a=’aa’;

5、判断题:
float和double都是定义浮点类型的关键字。
选项:
A:错
B:对
答案: 【对】

6、单选题:
可在C程序中用作用户标识符的一组标识符是(   )。
选项:
A:case    Big1
B:

Date    y-m-d

C:

and    _2007

D:

Hi    Dr.Tom

答案: 【

and    _2007

7、单选题:
以下选项中表示一个合法的常量是(   )。
选项:
A:0Xab
B:123E0.2
C:2.7e
D:2/3
答案: 【0Xab】

8、判断题:
已知:int a=5; 那么逗号表达式:a+3,a=a/2,a+4的值为8。
选项:
A:错
B:对
答案: 【错】

9、单选题:
若有定义语句:int x=12,y=8,z; ,在其后执行语句z=0.9+x/y;,则z的值为(   )。
选项:
A:

1

B:

2

C:

1.9

D:

2.4

答案: 【

1

10、单选题:
若有定义语句:int a=10;double b=3.14; ,则表达式 ‘A’+a+b 值的类型是(   )。
选项:
A:

char

B:

float

C:

double

D:

int

答案: 【

double

11、单选题:
设有定义:int x=2; ,以下表达式中,值不为6的是(   )。
选项:
A:

x++,2*x

B:

x=x*(1+x)

C:

2*x,x+=2

D:

x*=x+1

答案: 【

2*x,x+=2

12、单选题:
若有定义语句:int x=10; ,则表达式x – = x + x的值为(   )。
选项:
A:

10

B:

-20

C:

–10

D:

0

答案: 【

–10

13、单选题:
以下程序段的输出结果是(   )。
int a=10,b=10;
printf(“%d,%d”,a–,–b);
选项:
A:

10,9

B:

10,10

C:

9,9

D:

9,10

答案: 【

10,9

14、单选题:
若变量已正确定义并赋值,符合C语言语法的表达式是(   )。
选项:
A:

a=7+b+c,a++:b*c

B:

int(12.3/5)

C:

a=a+7

D:

a=a+1=c+b

答案: 【

a=a+7

15、单选题:
若变量均已正确定义并赋值,以下合法的C语言赋值语句是(   )。
选项:
A:

x=y=5;

B:

x+n=i;

C:

x=n%2.5;

D:

x=5=4+1;

答案: 【

x=y=5;

16、单选题:
若有定义:double a=22;int i=0,k=18; ,则不符合C语言规定的赋值语句是(   )。
选项:
A:

a=a++,i++;

B:

i=!a;

C:

i=(a+k)<=(i+k);

D:

i=a%11;

答案: 【

i=a%11;

17、判断题:
int a=3; 那么a++的值为4。
选项:
A:错
B:对
答案: 【错】

18、判断题:
int a=3,b=4;那么(a+b)++的值为7。
选项:
A:错
B:对
答案: 【错】

19、判断题:
b*=a+3等价于b=b*(a+3)。
选项:
A:对
B:错
答案: 【对】

20、判断题:
定义符号常量N为3.14可以用语句:#define N=3.14
选项:
A:错
B:对
答案: 【错】

第三章 单元测试

1、单选题:
有以下程序,若输入d,则输出结果为(   )。(注:字母a的ASCII码是97)
#include
int main( )
{
char c,d;
c=getchar();
d=c-33;
printf(“%d,%c”,c,d);
return 0;
}
选项:
A:

99,C

B:

100,D

C:

100,C

D:

100,c

答案: 【

 

2、单选题:
以下不能输出字符a的语句是(   )。
选项:
A:

printf(‘%c’,’A’+32);

B:

printf(‘%c’,97);

C:

printf(‘%c’,’a’-1);

D:

printf(‘%d’,’a’);

答案: 【

 

3、判断题:
命令putchar(97)的执行结果为:97。
选项:
A:错
B:对
答案: 【】

4、判断题:
命令putchar(’98’)的执行结果为:98。
选项:
A:对
B:错
答案: 【】

5、单选题:
若变量已正确定义为int型,要通过语句scanf(“%d,%d,%d”,&a,&b,&c);给a赋值1,给b赋值2, 给c赋值3, 以下输入形式中错误的是(   )。(注:下列选项中□表示一个空格。)
选项:
A:

1□2□3<回车>

B:

1,□□□2, □□□3<回车>

C:

□□□1,2,3<回车>

D:

1,2,3<回车>

答案: 【

 

6、单选题:
有以下程序
#include
int main( )
{
int a1,a2;char c1,c2;
scanf(“%d%c%d%c”,&a1,&c1,&a2,&c2);
printf(“%d,%c,%d,%c”,a1,c1,a2,c2);
return 0;
}
若想通过键盘输入,使得a1的值为12,a2的是为34,c1的值为字符a,c2的值为字符b,程序输出结果是:12,a,34,b,则正确的输入格式是(   )(注:□表示一个空格)
选项:
A:

12,a,34,b

B:

12a34b

C:

12□a□34□b

D:

12□a34□b

答案: 【

 

7、单选题:
根据下面的程序及数据的输入方式和输出形式,程序中输入语句的正确形式应该为(   )。

#include
int main( )
{
char ch1,ch2,ch3;
输入语句
printf(‘%c%c%c’,ch1,ch2,ch3);
return 0;
}
输入形式:  A□B□C
输出形式:  A□B
(注:□表示一个空格)
选项:
A:

scanf(‘%c%c%c’,&ch1,&ch2,&ch3);

B:

scanf(‘%c,%c,%c’, &ch1,&ch2, &ch3);

C:

scanf(‘%c%c’,&ch1,&ch2,&ch3);

D:

scanf(‘%c□%c□%c’,&ch1,&ch2,&ch3);

答案: 【

 

8、单选题:
#include
int main( )
{
int a=1,b;
scanf(‘%2d%2d’,&a,&b);
printf(‘%d*%d’,a,b);
return 0;
}
以上程序段,如果输入是12345  6,则输出是(  )。
选项:
A:12*45
B:12345*6
C:12*6
D:123*345
答案: 【】

9、判断题:
对于scanf(‘%3d%f’,&a,&b);若输入123456.789,则a=123,b=456.789
选项:
A:对
B:错
答案: 【对】

10、单选题:
已知字母A的ASCII码是65,以下程序的执行结果是(   )。
#include
int main( )
{
char c1=’A’;
printf(‘%d’,c1+3);
return 0;
}
选项:
A:

67

B:

65

C:

66

D:

68

答案: 【

 

11、单选题:
阅读以下程序,当输入数据的形式为:25,13,10 ,正确的输出为(   )。
#include
int main( )
{
int x,y,z;
scanf(‘%d,%d,%d’,&x,&y,&z);
printf(‘x+y+z=%d’,x+y+z);
return 0;
}
选项:
A:

x+y+z=48

B:

x+z=35

C:

不确定值

D:

x+y+z=35

答案: 【

12、单选题:
已知字母A的ASCII码是65,以下程序的执行结果是(   )。
#include
int main( )
{
char c1=’A’,c2=’Y’;
printf(‘%d,%d’,c1,c2);
return 0;
}
选项:
A:

A,Y

B:

65,90

C:

65,89

D:

65,65

答案: 【

 

13、单选题:
下列程序的输出结果是(   )。
int main( )
{
double d=3.2;
int x,y;
x=1.2;
y=(x+3.8)/5.0;
printf(‘%d’,d*y);
return 0;
}
选项:
A:

3

B:

3.07

C:

0

D:

3.2

答案: 【

 

14、单选题:
下列语句输出结果是(   )。
int a=1,b=1,c=1;
a=a+b+c;
printf(‘%d’,a);
选项:
A:

6

B:

4

C:

5

D:

3

答案: 【

 

15、单选题:
有以下程序
#include
int main( )
{
char c1,c2;
c1=’A’+’8′-‘4′;
c2=’A’+’8’-‘5’;
printf(‘%c,%d’,c1,c2);
return 0;
}
已知字母A的ASCII码为65,程序运行后的输出结果是(   )。
选项:
A:

E,D

B:

输出无定值

C:

A.E,68

D:

D,69

答案: 【

 

16、单选题:
有以下程序, 程序运行后的输出结果是(   )。
#include
void main()
{
int a=1,b=0;
printf(‘%d,’,b=a+b);
printf(‘%d’,a=2*b);
}
选项:
A:

1,0

B:

1,2

C:

3,2

D:

0,0

答案: 【

 

17、单选题:
有以下程序:

#include
void main()
{ int x=10,y=3;
printf(‘%d’,y=x/y);
}
执行后的输出结果是(   )。
选项:
A:

3.333333

B:

4

C:

3

D:

0

答案: 【

 

18、单选题:
以下不能输出字符A的语句是(   )。(注:字符A的ASCII码值为65,字符a的ASCII码值为97)
选项:
A:

printf(‘%c’,’B’-1);

B:

printf(‘%d’,’A’);

C:

printf(‘%c’,’a’-32);

D:

printf(‘%c’,65);

答案: 【

printf(‘%d’,’A’);

19、单选题:
有以下程序段
char ch;
int k;
ch=’a’;
k=12;
printf(‘%c,%d,’,ch,ch);
printf(‘k=%d’,k);
已知字符a的ASCII码值为97,则执行上述程序段后输出结果是(   )。
选项:
A:

a,97,k=12

B:

97,97,k=12

C:

a,a,12

D:

a,97,12

答案: 【

20、判断题:
复合语句用{}括起来。
选项:
A:对
B:错
答案: 【】

第四章 单元测试

1、单选题:
void main( )
{ int a,b,min;
scanf(“%d,%d”,&a,&b);
if(a>b)________;
else ________;
printf(“%d”,min); }
该程序的功能是输入两个整数赋值给变量a和b,求较小的数并输出,程序中的两处下划线处应该分别填写(    )。
选项:
A:

b=a 和 min=a

B:

min=b 和 min=a

C:

a=b 和 min=b

D:

min=a 和 min=b

答案: 【

 

2、单选题:
运行以下程序后,输出(  )。
void main()
{ int k=-3;
if(k<0) printf(‘**** ‘)
else  printf(‘&&&& ‘);
}
选项:
A:

####&&&&

B:

&&&&

C:

****

D:

有语法错误,else上面一行缺少分号

答案: 【

 

3、单选题:
void main( )
{ int a,b,t;
scanf(“%d,%d”,&a,&b);
if(a>b){t=a;____________;b=t;}

printf(“%d”,min); }
该程序的功能是输入两个整数赋值给变量a和b,按由小到大顺序输出,下划线处应该填入(    )。
选项:
A:

b=t

B:

t=b

C:

a=b

D:

a=t

答案: 【

 

4、单选题:
下程序的功能是判断输入的一个整数是否能被3或7整除,若能整除,输出YES,否则输出NO。在下划线处应填入的选项是(           )
#include
void main()
{ int  k;
printf(‘Enter a int number : ‘); scanf(‘%d’, &k);
if  ________  printf(‘YES’);
else          printf(‘NO’);
}
选项:
A:

(k/3==0) || (k/7==0)

B:

( (k%3==0)&&(k%7==0) )

C:

( (k%3==0) || (k%7==0) )

D:

( (k%3=0) || (k%7=0))

答案: 【

 

5、单选题:
以下程序段的输出结果为(  )
int a=0,b=0,c=0;
if(a==b+c) printf(“*** ”);
else printf(“$$$ ”);
选项:
A:有语法错误,不能通过编译
B:可以通过编译但不能通过连接
C:输出***
D:输出$$$
答案: 【】

6、判断题:
if语句中可以有else也可以没有else。
选项:
A:错
B:对
答案: 【】

7、判断题:
else语句必须和if语句配合使用,不能单独使用。
选项:
A:错
B:对
答案: 【】

8、判断题:
一个if语句可以与多个else语句配对。
选项:
A:对
B:错
答案: 【】

9、单选题:
有以下程序段,输出结果为(     )。
int x=6,y;
switch(x):
{
case 1: y=x; break;
case 2: y=2*x;break;
case 3: y=3*x;break;
defualt:y=-x;break;
}
printf(“%d”,y);
选项:
A:

12

B:

6

C:

18

D:

–6

答案: 【

 

10、单选题:
有以下程序段,输出结果为(     )。
int x=3,y;
switch(x):
{
case 1: y=x;break;
case 2: y=2*x;break;
case 3: y=3*x;break;
defualt:y=-x;break;
}
printf(“%d”,y);
选项:
A:

9

B:

6

C:

–3

D:

3

答案: 【

 

11、单选题:
以下关于switch语句正确的是(   )。
选项:
A:switch中可以使用else
B:switch语句是循环结构语句
C:switch中多个case后的值可以相等
D:switch语句是多分支选择结构语句
答案: 【】

12、单选题:
有以下程序段,输出结果为(     )。
int x=1,y;
switch(x):
{
case 1: y=x++;
case 2: y=x++;
case 3: y=x++;
}
printf(“%d ”,y);
选项:
A:4
B:2
C:1
D:3
答案: 【】

13、单选题:
int x=8,y;
switch(x):
{
case 1: y=x; break;
case 2: y=2*x;break;
case 3: y=3*x;break;
defualt:y=-x;break;
}
printf(“%d ”,y);以上程序段,输出结果为(     )。
选项:
A:18
B:6
C:12
D:-8
答案: 【】

14、判断题:
switch语句中必须要有break语句。
选项:
A:对
B:错
答案: 【】

15、判断题:
switch语句中,case后可的各常量表达式的值不能相同,否则会出现矛盾。
选项:
A:对
B:错
答案: 【】

16、单选题:
max=a>b?a:b; 的功能是(   )。
选项:
A:

max等于b

B:

max等于a、b中较大的

C:

max等于a、b中较小的

D:

max等于a

答案: 【

 

17、单选题:
若整型变量a、b、c、d中的值依次为 :1、4、3、2。则条件表达式 a<b?a:c<d?c:d 的值是(   )。
选项:
A:2
B:3
C:1
D:4
答案: 【】

18、单选题:
“逻辑与”的运算符是(  )。
选项:
A:

|

B:

&&

C:

||

D:

&

答案: 【

 

19、单选题:
“逻辑或”的运算符是(  )。
选项:
A:

&&

B:

&

C:

||

D:

|

答案: 【

 

20、判断题:
if(x%2=0)可以判断x是否为偶数。
选项:
A:错
B:对
答案: 【】

第五章 单元测试

1、单选题:
有以下C语言程序段:
int x;
scanf(“%d”,&x);
while(x>0)
{
x=x-1;
printf(“%d”,x);
}
当x输入为0时,输出结果为(     )。
选项:
A:

0

B:

43210

C:

5

D:

答案: 【

 

2、单选题:
while与do-while语句的区别是(    )。
选项:
A:

while语句比do-while语句执行循环体的次数多一次

B:

如果开始时循环语句不成立,那么while语句的循环一次都不执行,do-while语句的循环至少执行一次

C:

do-while语句比while语句执行循环体的次数多一次

D:

while与do-while的功能完全一样

答案: 【

 

3、单选题:
已定义i和sum都为整数,以下C语言程序段的功能为(    )。
sum=0;  i=1;
while(i<=100)
{  sum=sum+i;
i++;
}
printf(“%d”,sum);
选项:
A:

求1到100内所有整数的和

B:

求1到100内所有奇数的和

C:

求1到100内所有整数的积

D:

求1到100内所有偶数的和

答案: 【

 

4、单选题:
有以下C语言程序段:
int x;
scanf(“%d”,&x);
while(x>0)
x=x-1;
printf(“%d”,x);
当x输入为5时,输出结果为(     )。
选项:
A:5
B:43210
C:54321
D:0
答案: 【】

5、单选题:
有以下程序段:
int k=5;
while(–k) printf(‘%d’,k -= 3);
执行后的输出结果是(   )。
选项:
A:3
B:0
C:2
D:1
答案: 【】

6、判断题:
do-while语句的循环体至少执行1次,while和for循环的循环体可能一次也执行不到。
选项:
A:错
B:对
答案: 【】

7、单选题:
已定义整型变量sum和i,及实型变量ave,以下程序段的功能是:用do-while语句实现,输入若干学生的整数成绩(以-1结束输入),求这些成绩的平均值ave。请在下划线处填写正确的语句(     )。
i=0;
do
{
scanf(“%d”,&x);
sum=sum+x;
i++;      //i为输入整数成绩的个数
}while(______);
sum=sum+1;//总分去掉多加的-1
ave=1.0*sum/i;
选项:
A:

i<=10

B:

i>=10

C:

x==-1

D:

x!=-1

答案: 【

8、单选题:
有以下C语言程序段:
int x;
scanf(“%d”,&x);
do
{
x=x-1;
printf(“%d”,x);
} while(x>0);
当x输入为5时,输出结果为(     )。
选项:
A:

–1

B:

54321

C:

43210

D:

0

答案: 【

 

9、判断题:
do-while循环中while()后的分号可以省略。
选项:
A:对
B:错
答案: 【】

10、单选题:
以下程序段,可以实现 sum=1-1/(2*2)+1/(3*3)-1/(4*4)+…+1/(n*n),请在下划线处写入正确的语句(    )。

int i,f=1;   //f表示每个加项的正负号
flaotsum=0;
for(i=1;i<=n;i++)
{
sum=sum+_____________;
f=-f;
}
选项:
A:

f*1.0/(i*i)

B:

1/i*i

C:

1.0/(i*i)

D:

1/(i*i)

答案: 【

 

11、单选题:
已定义整型变量i和sum,与以下程序段功能一样的程序有(     )。
sum=0;
for(i=1;i<=100;i++)sum+=i;
选项:
A:

sum=0;for(i=1;i<=100;)  sum+=i;i++;

B:

sum=0;for(i=1;i<=100;){i++;sum+=i;}

C:

sum=0;for(i=1;;i++ )

D:

sum=0;i=1;for( ; i<=100;i++) sum+=i;

答案: 【

 

12、单选题:
for语句后的( )内,有几个表达式(    )?
选项:
A:

4

B:

2

C:

3

D:

1

答案: 【

 

13、单选题:
已定义整型变量s、n和i,以下程序段中,能够实现s=n!,即s为n的阶层。请在下划线处写入正确的语句(       )。
scanf(“%d”,&n);
s=1;
for(i=1;i<=n;i++)
__________;
选项:
A:

s=s+n

B:

s=s*n

C:

s+=i

D:

s*=i

答案: 【

 

14、单选题:
以下关于break说法正确的是(   )。
选项:
A:

break只能用在循环语句中。

B:

break只能用在switch语句中。

C:

break可以终止所有的循环。

D:

break可以终止本层循环。

答案: 【

 

15、单选题:
在C语言的循环语句for、while、do-while中,用于结束本次循环,继续执行下一次循环的语句是(  )。
选项:
A:

if

B:

break

C:

switch

D:

continue

答案: 【

 

16、单选题:
有以下程序段的功能是(   )。
int i, s=0;
for(i=1;i<=100;i++)
{ s=s+i;
if(i>10) break;}
}
选项:
A:1+2+……+10
B:1+2+……+100
C:1+2+……+9
D:1+2+……+11
答案: 【】

17、单选题:
程序的功能是输出以下图形,请在下划线处写入正确的语句。(   )
*
**
***
****
*****
for(i=1;i<=5;i++)
{
for(j=1;________;j++)
putchar(‘*’);
putchar(‘’);
}
选项:
A:

j<=i

B:

j<i

C:

j<=5

D:

j<=3

答案: 【

 

18、单选题:
以下程序段,循环体可以循环几次(   )。
for(i=1;i<=3;i++)
for(j=1;j<=4;j++)
{循环体};
选项:
A:

7

B:

3

C:

12

D:

4

答案: 【

 

19、判断题:
while、do-while、for语句可以互相嵌套,但是不能自身嵌套。
选项:
A:错
B:对
答案: 【】

20、判断题:
若一个循环体中包含另一个完整的循环结构则称为循环的嵌套。
选项:
A:对
B:错
答案: 【】

第六章 单元测试

1、单选题:
下面正确的数组定义语句是(   )。
选项:
A:

float x[3][]={{1},{2},{3}};

B:

int s[2][3]={{1},{1,2}};

C:

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

D:

double t[][3]={0};

答案: 【

 

2、单选题:
二维数组元素的存储规律是(  )。
选项:
A:

按行从左到右存储

B:

按行从右到左存储

C:

按列从左到右存储

D:

按行S路线存储

答案: 【

 

3、单选题:
在定义int a[5][4];之后,对a的引用正确的是(   )。
选项:
A:

a[2][4]

B:

a[0][0]

C:

a[5][0]

D:

a[0,0]

答案: 【

 

4、判断题:
有说明:int a[3][2]={0},则数组中各元素都可以得到初值,但其值不一定为0。
选项:
A:错
B:对
答案: 【】

5、判断题:
int f[3][]={{0,9,8},{7,7,7},{8,6,0}};定义正确。
选项:
A:对
B:错
答案: 【】

6、判断题:
char a[10]={“abcd”}; 那么数组a占用的字节数是10。
选项:
A:对
B:错
答案: 【】

7、判断题:
字符串必须以‘\0’结束,但字符数组可以不包括‘\0’。
选项:
A:错
B:对
答案: 】

8、判断题:
字符串’This’大于字符串’that’。
选项:
A:错
B:对
答案: 【】

9、判断题:
已有定义:char a[]=’xyz’,b[]={‘x’,’y’,’z’};则数组a和b所占字节数相同。
选项:
A:错
B:对
答案: 【】

10、单选题:
下面程序段的运行结果是(   )。
int a[]={2,4,6,8,10};
int y=0,x;
for(x=0;x<4;x++)y+=a[x];
printf(‘%d\n’,y);
选项:
A:

18

B:

19

C:

17

D:

20

答案: 【

 

11、单选题:
在C语言中,引用数组元素时,其数组下标的数据类型允许是(    )。
选项:
A:

任何类型的表达式

B:

整型常量或者整型表达式

C:

整型表达式

D:

整型常量

答案: 【

 

12、单选题:
有如下程序
void main()
{  int a[5]={0,0,0},i,k=3;
for(i=0;i<5;i++)a[i]=i+1;
printf(“%d\n”,a[k]);
}
该程序的输出结果是(   )
选项:
A:

4

B:

2

C:

0

D:

不确定的值

答案: 【

 

13、判断题:
执行下面的程序段后,数组元素s[1]中的值为0。
int k=3,s[2];
s[0]=k;
选项:
A:对
B:错
答案: 【】

14、判断题:
int a[3]={1,2,3,4}; 是正确的。
选项:
A:错
B:对
答案: 【】

15、判断题:
已知程序段{char a[10];scanf(‘%s’,a);printf(‘%s’,a);}输入:ab cd<回车>,输出结果是:ab
选项:
A:错
B:对
答案: 【】

16、单选题:
声明语句为“char a[10];”,执行下列语句后的输出结果为(   )。
printf(‘%d ‘,strlen(strcpy(a,’Windows’)));
选项:
A:

9

B:

8

C:

7

D:

6

答案: 【

17、单选题:
设有数组定义:char array[]=“China”;则strlen(array)的值为(   )。
选项:
A:

6

B:

7

C:

4

D:

5

答案: 【

 

18、单选题:
有定义语句:char s[10];,若要从终端给s 输入5 个字符,错误的输入语句是(   )。
选项:
A:

gets(&s[0]);

B:

gets(s);

C:

scanf(‘%s’,s[1]);

D:

scanf(‘%s’,s);

答案: 【

 

19、判断题:
执行完int a[10]; gets(a);  后,可以为数组a赋值。
选项:
A:对
B:错
答案: 【】

20、判断题:
char a[10]={“abcd”}; 那么strlen(a)的值是4。
选项:
A:对
B:错
答案: 【】

第七章 单元测试

1、单选题:
以下所列的各函数首部中,正确的是________。
选项:
A:

void play(int a,b)

B:

void play(int a,int b)

C:

void play(var a:Integer,var b:Integer)

D:

void play(a as integer,b as integer)

答案: 【

 

2、单选题:
以下说法中正确的是(  )。
选项:
A:

C语言程序中的main()函数必须放在程序的开始部分

B:

C语言程序总是从第一个定义的函数开始执行

C:

C语言程序总是从main()函数开始执行

D:

在C语言程序中,要调用的函数必须在main()函数中定义

答案: 【

 

3、单选题:
函数的返回值是通过函数体中的(  )语句获得。
选项:
A:

scanf函数

B:

return语句

C:

printf函数

D:

goto语句

答案: 【

 

4、单选题:
自定义函数max的功能是(  )。
int max(int x,int y)
{
int z;
z=x>y?x:y;
return z;
}
选项:
A:返回x、y中较大的数
B:返回y的值
C:返回x的值
D:返回x、y中较小的数
答案: 【】

5、单选题:
以下函数fun的函数的返回类型是________。
int fun( float  x)
{ int y;
y=(int) x;
return  y;  }
选项:
A:

float

B:

void

C:

不确定

D:

int

答案: 【

 

6、判断题:
main 函数必须写在一个 C 程序的最前面。
选项:
A:对
B:错
答案: 【】

7、判断题:
自定义函数中用return返回值。
选项:
A:对
B:错
答案: 】

8、判断题:
自定义函数的函数类型如果被省略,则默认是void类型。
选项:
A:对
B:错
答案: 【】

9、判断题:
函数不可以自己调用自己。
选项:
A:对
B:错
答案: 【】

10、单选题:
以下程序的输出结果是
void fun(int x,int y,int z)
{ z=x*x+y*y;}

main()
{ int a=31;
fun(5,2,a);
printf(‘%d’,a);
}
选项:
A:

30

B:

29

C:

31

D:

0

答案: 【

11、单选题:
有如下程序
int func(int a,int b)
{ return(a+b); }
int main()
{ int x=2,y=5,z=8,r;
r=func((x-y),z);
printf(‘%d ‘,r);
return 0;}
该程序的输出结果是__________。
选项:
A:

5

B:

10

C:

13

D:

15

答案: 【

 

12、单选题:
以下函数fun形参的类型是________。
float fun( float  x)
{ float  y;
y=3*x-4;
return  y;  }
选项:
A:

float

B:

int

C:

不确定

D:

void

答案: 【

 

13、单选题:
有如下程序
int func(int a,int b)
{ return(a+b); }

main()
{ int x=2,y=5,z=8,r;
r=func(func(x,y),z);
printf(‘%d’,r);  }
该程序的输出结果是__________。
选项:
A:

15

B:

13

C:

14

D:

12

答案: 【

 

14、单选题:
c语言规定,简单变量做实参时,它和对应形参之间的数据传递方式是(   )。
选项:
A:

由实参传给形参,再由形参传回给实参

B:

单向值传递

C:

地址传递

D:

由用户指定传递方式

答案: 【

 

15、单选题:
以下程序的输出结果是
void fun(int x,int y,int z)
{ z=x*x+y*y;}

int main()
{ int a=31;
fun(5,2,a);
printf(‘%d’,a);
return 0;
}
选项:
A:33
B:0
C:31
D:29
答案: 【】

16、单选题:
#include
void fun(int b[ ])
{
int i;
for(i=2;i<10;i++)
b[i]=i+10;
}
void main( )
{
int a[10]={1,2,3,4,5,6,7,8,9,10},i;
fun(a);
for(i=0;i<10;i++)
printf(‘%d  ‘,a[i]);
}
输出的数据是(   )。
选项:
A:1 2 3 4 5 6 7 8 9 10
B:11 12 13 14 15 16 17 18 19 20
C:2 12 13 14 15 16 17 18 19
D:1 2 12 13 14 15 16 17 18 19
答案: 【】

17、判断题:
函数定义时,可以不用定义形式参数。此时,定义的函数称为无参函数。
选项:
A:对
B:错
答案: 【】

18、单选题:
在调用函数时,如果实参是数组名,它与对应形参之间的数据传递方式是(  )。
选项:
A:

地址传递

B:

传递方式由用户指定

C:

由实参传给形参,再由形参传回实参

D:

单向值传递

答案: 【

 

19、单选题:
以下函数的功能是(  )。
double aver(double a[5 ])
{
double sum=0,average;
int i;
for(i=0;i<5;i++)
sum+=a[i];
average=sum/5;
return average;
}
选项:
A:

求a数组中5个元素的平均值

B:

求a数组中5个元素的最小值

C:

求a数组中5个元素的和

D:

求数组a中5个元素中的最大值

答案: 【

 

20、判断题:
数组名字作为函数参数,传递的数组的首地址。
选项:
A:错
B:对
答案: 【】

0
觉得这篇文章对你有用的话,就打赏一下支持文章作者

评论0

请先

站点公告

开放大学课程作业代写,有需要扫码加微信

显示验证码

社交账号快速登录