内容发布更新时间 : 2024/11/15 12:39:30星期一 下面是文章的全部内容请认真阅读。
四、程序改错题
1、以下程序的功能是,输入长方形的两边长(边长可以取整数和实数),输出它的面积和周长。
#include
main {
int a,b,s,l;
scanf(\ s=a*b; l=a+b;
printf(\ }
2、以下程序的功能是,输入两个数,求最大值。
#include
mian() {
int a,b;c; scanf(\
c=max(a,b); printf(\ }
int max(int x,int y) { return (x>y?x:y) }
3、以下程序的功能是,输入三个数,求平均值。
include
6
printf(\ scanf(\ prinf(\ average=(a+b+c)/3.0;
printf(\
7
第4章 程序结构
一、选择题:
1、 若char c=?A?;则c = (c>=?A? && c<=?Z?) ? (c+32) : c的值是( ) A.?A? B.?a? C.?Z? D.?z?
2、 设x,y,z,t均为int型变量,则执行以下语句后,t的值为( )
x = y = z = 1; t = ++x || ++y && ++z;
A.不定值 B.2 C.1 D.0 3、 执行以下语句后x的值是( )
a = b = c = 0; x = 35;
if ( ! a ) x - - ; else if ( b ); if ( c ) x = 3; else x = 4; A.34 B.4 C.35 D.3 4、 下面的程序段所表示的数学函数关系是( )
y = -1;
if ( x != 0 ) if ( x>0 ) y = 1; else y = 0; A.y = - 1 (x < 0) ; 0(x = 0) ; 1 (x > 0) B.y = 1 (x < 0) ; -1(x = 0) ; 0 (x > 0) C.y = 0 (x < 0) ; -1(x = 0) ; 1 (x > 0) D.y = - 1 (x < 0) ; 1(x = 0) ; 0 (x > 0)
5、 若有整型变量i, j; 则以下程序段中内循环体的执行次数为( )
for ( i = 5 ; i ; i++ )
for ( j = 0 ; j < 4; j ++ ) { ... }
A.20 B.24 C.25 D.30 6、 假定a和b为int型变量,则执行以下语句后b的值为( )
a = 1 ; b = 10 ;
do { b -= a ; a ++ ; } while ( b -- < 0 ) ;
A.9 B.-2 C.-1 D.8 7、 在C语言中,下列说法中正确的是( )
A.不能使用”do 语句 while (条件)”的循环
B.”do 语句 while(条件)”的循环必须使用”break”语句退出循环 C.”do 语句 while(条件)”的循环中,当条件为非0时结束循环 D.”do 语句 while(条件)”的循环中,当条件为0时结束循环
8、 若abcd都是int类型变量且初值为0,以下选项中不正确的赋值语句是(A.a=b=c=100; B.d++; C.c+b; D.d=(c=22) - (b++);
8
。 )
9、 若变量已正确定义,要将a和b中的数进行交换,下面不正确的语句是( )。 A.a=a+b,b=a-b,a=a-b; B.t=a,a=b,b=t; C.a=t;t=b;b=a; D.t=b;b=a;a=t; 10、 以下关于if语句的错误描述是( )。 A.条件表达式可以是任意的表达式
B.条件表达式只能是关系表达式或逻辑表达式 C.条件表达式的括号不可省
D.与else配对的if语句是其之前最近的未配对的if语句 11、 执行了以下程序段后,x,w的值为( )。
int x=0,y=1,z=2,w; if(x++)w=x;
else if(x++&&y>=1)w=y; else if(x++&&z>1)w=z;
A.0, 1 B.1, 1 C.2, 1 D.3, 2 12、 对于下面①,②两个循环语句,( )是正确的描述。
①while(1) ;
②for( ; ; ) ;
A.①②都是无限循环 B.①是无限循环,②错误 C.①循环一次,②错误 D.①②皆错误
二、填空题
1、 结构化程序设计规定的三种基本结构是 结构, 结构和 结构。
2、 以下两条if语句可合并成一条if语句为 。
if ( a <= b ) x = 1 ; else y = 2 ;
if ( a > b ) printf( “ **** y = %d \\n ” , y ) ; else printf( “ #### x = %d \\n ” , x ) ;
3、 设i , j , k均为型变量,则执行如下语句后,k的值为 。
for ( i = 0 , j = 10 ; i <= j ; i ++ , j -- ) k = i + j ;
三、程序分析题
1、 阅读程序,写出运行结果( ) #include\
main() { float a,b,area; scanf(\
9
area=a*b;
printf(\}
2↙ 3↙
2、 阅读程序,写出运行结果( ) #include\main() {
char c1,c2,c3; c1='a'; c2='b'; c1=c1-32; c2=c2-32;
printf(\ }
3、阅读程序,写出运行结果( ) #include\main() {
int x,a;
x=(a=3,6*3);
printf(\ x=a=3,6*a;
printf(\ }
4、 阅读程序,写出运行结果 ( )
main ( ) {
int y = 9 ;
for ( ; y > 0 ; y -- )
if ( y%3 == 0 ) { printf( “%d” , -- y ) ; }
5、阅读程序,写出运行结果( ) #include
int a=3,b=8,c=5,t; if(a>b) {t=a;a=b;b=t;}
10
cintinue ; }