c练习三_11_06_09 答案_三只小猪练习题集答案

2020-02-29 其他范文 下载本文

c练习三_11_06_09 答案由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“三只小猪练习题集答案”。

综合强化练习三

一、单选题(共30分)1.下列叙述中错误的是(A)。

A、主函数中定义的变量在整个程序中都是有效的 B、在其他函数中定义的变量在主函数中不能使用 C、形式参数也是局部变量

D、复合语句中定义的变量只在该复合语句中有效 2.以下叙述中正确的是(C)。

A、C语言比其他语言高级

B、C语言可以不用编译就能被计算机识别执行

C、C语言以接近英语国家的自然语言和数学语言作为语言的表达式

D、C语言出现的最晚,具有其他语言的一切优点 1.(A)是C程序的基本构成单位。

A、函数

B、函数和过程 C、超文本过程

D、子程序

2.C语言规定,必须用(C)作为主函数名。

A、function

B、include

C、main

D、stdio 3.以下(A)是C语言提供的关键字。

A、continue

B、procedure

C、begin

D、append 4.下列可以作为变量名的是(C)。

A、+a

B、123425e

C、a3B

D、5e+0 5.在C语言中以下合法的字符常量是(C)。

A、’824’

B、’x243’

C、’0’

D、”” 6.设d为字符变量,则下列表达式不正确的是(C)。

A、d='m'

B、d=97

C、d=“a”

D、d='101' 7.表达式(double)(23/3)的值是(B)。A、4 B、7.0 main(){ int x=4, y=0,z;

} A、14 40

B、20 0

C、20 4

D、14 4 9.已知year为整型变量,不能使表达式(year%4= =0&&year%100!=0)||(year%400= =0)的值是1的整型数据是(A)。

A、1990

B、1988

C、1992

D、2000 10.若x=4,y=z=3,则下列表达式的值分别是(A)。(1)(z>=y>=x)?1:0(2)y+=z, x*=y A、0 24

B、1 8

C、0 8

D、1 12 11.若已定义a和b为double类型,则表达式:a=1,b=a+3/2的值是(C)。

A、1.0

B、1.5

C、2.0

D、3.0 12.若有定义:int m, n;char a, b, c;在程序运行时输入数据

15.有如下程序段:

int n=25;while(n>22){ n--;

printf(“%dn”,n);} x*=3+2;printf(“%dt”,x);x*=(y= =(z=4));printf(“%d”,x);

C、7.7

D、3 8.下列程序的输出结果是(B)。

}

A、1 3

B、3 5

C、5 3

D、5 5 14.有程序段如下: i=1;

for(;i

与上面的语句不等价的是(C)。A、for(i=1;;i++)

{

sum+=i;

if(i= =10)break;} C、i=1;

for(;i

sum=sum+i;

D、i=1;

for(;;){ sum=sum+i;if(i= =10)break;}

i++;

}

B、for(i=1;i

i++;6(回车)YOU(回车)

则把整数5赋值给m,把整数6赋值给n,把字符Y赋值给a,把字符O赋值给b,把字符U赋值给c,以下哪一个是正确的程序段(A)。

A、scanf(“%d□%d□%c□%c□%c”,&m,&n,&a,&b,&c);(□代表空格)

B、scanf(“%d, %d”, &m, &n);a=getchar();b=getchar();c=getchar();

C、scanf(“m=%d,n=%d”,& m, &n);a=getchar();b=getchar();c=getchar();

D、scanf(“%d%d%c%c%c”,&m,&n,&a,&b,&c);13.下列程序的运行结果是(D)。#include main(){

int x, y=1;if(y!=0)

x=5;printf(“%dt”,x);if(y= =0)else x=5;

printf(“%dn”,x);

x=3;} 则以上循环的输出结果是(B)。A、22

B、24

C、23

D、1

0 16.以下能正确表示x的取值范围在[15,80]和[-5,-1]内的表达式是(B)。

A、(x=-1)&&(x=80)B、(x>=-5)&&(x=15)&&(x=-5)||(x=15)||(x=-1)&&(x=80)17.以下能正确判断字符型变量ch为小写字母的表达式是(C)。

A、(ch>='a')AND(ch

B、(ch>='a')&(ch='a')&&(ch

D、(ch>='a')||(ch main(){ int a=23, b=c=0;if(a=b+c)printf(“I like itn”);else

printf(“I hate itn”);} 以上程序(D)。

A、通过编译,但不能连接

B、输出I like it

C、输出I hate it

D、不能通过编译(因为有语法错误)19.下列程序的输出结果是(B)。main(){ int m, a, b;

} A、1 1 0

B、2 1 1

C、0 1 0

D、1 0 1 20.下列语句正确的是(A)。A、char string[]=”china”;B、char string[];string=”china”;

C、char string1[], string2[]=”china”;

string1=string2;D、char string1[], string2[];string2=”china”;

strcpy(string1, string2);a=1;b=1;m=0;m=a++||b++;printf(“n%d %d %dn”, a, b, m);

printf(“%3d”,a[i][2-i]);

A、2 4 6 B、2 4 8 C、3 5 7 D、3 6 7

23.假设arr是一个有20个元素的整型数组,则下列写法中正确的是(A)。

A、arr[0]=2 B、arr=0 C、arr[20]=0 D、arr[-2]=0 24.已知整型变量i的值为3,其内存地址为1000,p为指向int变量的指针变量。若使p指向i,则下列赋值正确的是(D)。

A、&i=3

B、*p=3

C、*p=1000

D、p=&i 25.共用体类型变量在程序执行期间(B)。A、所有成员一直驻留在内存中 B、只有一个成员驻留在内存中

C、部分成员驻留在内存中

D、没有成员驻留在内存中 26.以下循环体的执行次数是(C)。main(){ int i, j;

}

A、3

B、2

C、1

D、0

27.执行下列程序段后,变量k中的值是(B)。

int k=3, s[2];s[0]=k;k=s[1]*10;

A、33 B、不确定值

C、30 D、10 28.下面程序段的执行结果是(B)int x=100;do

x+=1;

while(x>120);

printf(“%d”,x);

A、100

B、101

C、120

D、121 29.以下叙述中正确的是(BC)。

A、全局变量的作用域一定比局部变量的作用域范围大 B、静态(static)类别变量的生存期贯穿于整个程序的运行期间 C、函数的形参都属于局部变量

D、未在定义语句中赋初值的auto变量和static变量的初值都是随机值

30.在对文件的操作中,对文件进行打开操作的标准库函数是(C)。

A、fgetc

B、fputc

C、fopen

D、fclose

二、填空题。(共10分)

1.若有语句“printf(“%0.2f”,23.528);”,则输出__23.53__。

2.在C语言中,输入操作是由库函数____scanf______完成的,输出操作是由库函数___printf_____完成的。

3.若a、b和c均是int型变量,则执行表达式a=(b=4)+(c=2)后,a、b、c的值分别为__6____、__4____、__2___。

4.C语言中,数组名是一个___地址_____常量,代表_数组的首地址______,不能对其进行赋值操作。

5.定义一个包含4行5列共20个float型元素的二维数组arr的形式是__float arr[4][5]____。2

for(i=0, j=1;i

printf(“%dn”,i);

21.如果在一个函数的复合语句中定义了一个变量,则该变量(A)。

A、只在该复合语句中有效,在该复合语句外无效 B、在该函数中任何位置都有效 C、定义方法错误,其变量为非法变量 D、在本程序的原文件范围内均有效 22.以下程序段的输出结果是(C)。int i;int a[3][3]={1,2,3,4,5,6,7,8,9};for(i=0;i

三、读程序写执行过程(共40分,每题5分)

1、#include main()

{ int i, j, x, y;i=9;j=11;x=++i;y=j++;

printf(“%d,%d,%d,%dn”,i, j, x, y);

}10,12,10,112、#include main(){

int a, b, c;a=2;b=4;if(a>b)c=1;else if(a= =b)c=0;else c=-1;printf(“%dn”,c);

}

3、#include main(){

int m;

scanf(“%d”,&m);

switch(m++%4)

{ case 0:

case 1: printf(“%d5”, m);break;

case 2: printf(“%5d”, m*m);

case 3: printf(“%5d”, m*m*m);} } 程序运行后输入2,程序的输出结果是什么?

4、#include

main(){ int i, s, t;

s=0;

for(i=1;i

{ if(i%2==0)t=-i;

else t=i;

s+=t;

} printf(“s=%dn”, s);

}

5、#include main(){ char ch;

int n=0;

ch=getchar();

while(ch!=‟n‟)

{ ++n;

ch=getchar();

}

printf(“%d”,n);

}

程序运行后输入abcdef,程序的输出结果是什么?

6、#include main(){ int i, j;

for(i=2, j=10;i

printf(“%d,%d “, i, j);

}

7、#include main(){ int n=12345, s=0;

while(n)

{ s++;

n/=10;

}

printf(“%d”,s);

}

8、#include main(){ char w[5]={ „3‟,‟4‟,‟2‟,‟6‟,‟1‟}, m,n;

int i;

m=w[0];n=w[0];

for(i=1;i

{ if(w[i]>m)m=w[i];

else if(w[i]

}

printf(“%c %cn”, m, n);

}

四、编程题(共20分,每题10分)

1、编程输入一个四位整数n,求其倒序数nr。例如,输入1256,输出6521。#include void main(){ int n;

printf(“请输入一个四位整数”);scanf(“%d”,&n);while(n!=0){printf(“%d”,n%10);

n=n/10;

}

}

2、输入一字符,判断该字符属于哪一类?

大写字母

„A‟~‟Z‟ 小写字母 „a‟~‟z‟ 数字类 „0‟~‟9‟ 其他字符类

3、定义一个包含5个整数的数组,找出其最大值和最小值,并将最大值和最小值交换位置,重新输出数组中的元素。(要求在程序运行过程中输入数组元素的值)#include void main(){ int a[5],i,max,min,imax,imin,itemp;printf(“请输入五个数作为数组元素”);for(i=0;i

if(max

{

max=a[i];

imax=i;

}

if(min>a[i])

{

min=a[i];

imin=i;

} } itemp=a[imax];a[imax]=a[imin];a[imin]=itemp;printf(“最大值%d,最小值%dn”,max,min);printf(“交换最大最小值重新输出数组元素为”);for(i=0;i

《c练习三_11_06_09 答案.docx》
将本文的Word文档下载,方便收藏和打印
推荐度:
c练习三_11_06_09 答案
点击下载文档
相关专题 三只小猪练习题集答案 答案 习三 三只小猪练习题集答案 答案 习三
[其他范文]相关推荐
    [其他范文]热门文章
      下载全文