当前位置:文档之家› 第2章 顺序结构、选择结构和循环结构的程序设计 习题答案

第2章 顺序结构、选择结构和循环结构的程序设计 习题答案

第二章顺序结构、选择结构和循环结构的程序设计
一、简答
1. 参考书上23页
2. while先判断,后执行,do while先执行,后判断,循环体至少执行一次
3. 参考书上29页
4. continue,结束本次循环
break,结束循环
区别在于,continue只结束本次循环重新进行下次循环,而break结束整个循环
二、填空题
1. 顺序结构,选择结构,循环结构
2. if else 和switch
3. 语句1 ,语句2
4. 零
5. break ,continue
6. 7 ,0
7. ? : ,双目
三、单选
1-5 ABDCC 6-10 DBACA 11-15 CBCDA 16-20 ACBAD 21-25 ADCBB 26-29 BCCA
四、程序分析题
1. end 1end
2. num%10 max = t
3. j%3
4. 99
五、编程题
1.
#include <stdio.h>
int main(){
char str[100] ;
gets(str) ;
int n1 , n2 , n3 , n4 , i ;
n1 = n2 = n3 = n4 = 0 ;
for(i = 0 ; str[i] != '\0' ; ++i) {
if(str[i] >= 'A' && str[i] <= 'Z')
++n1 ;
else if(str[i] >= 'a' && str[i] <= 'z')
++n2 ;
else if(str[i] >= '0' && str[i] <= '9')
++n3 ;
else
}
printf("大写字母:%d\n" , n1) ;
printf("小写字母:%d\n" , n2) ;
printf("数字字符:%d\n" , n3 ) ;
printf("其他字符:%d\n" , n4) ;
return 0;
}
2.
#include <stdio.h>
#include <stdlib.h>
int main(){
int array[4] , min , max , i ;
for(i = 0 ; i < 4 ; ++i)
scanf("%d" , &array[i]) ;
min = max = array[0] ;
for(i = 1 ; i < 4 ; ++i) {
if(array[i] < min)
min = array[i] ;
else if(array[i] > max)
max = array[i] ;
}
printf("min = %d , max = %d\n" , min , max) ;
return 0;
}
3.
#include <stdio.h>
int main(){
float money , lixi ;
int year ;
scanf("%f %d" , &money , &year) ;
switch(year) {
case 1 :
lixi = money * 0.63 / 100 ;
case 2 :
lixi = money * 0.66 / 100 ;
break ;
case 3 :
lixi = money * 0.69 / 100 ;
break ;
case 5 :
lixi = money * 0.75 / 100 ;
break ;
case 8 :
lixi = money * 0.84 / 100 ;
break ;
default :
printf("输入错误\n") ;
return -1 ;
}
printf("%f\n" , money + lixi) ;
return 0;
}
4.
#include <stdio.h>
int main(){
int x , y ;
scanf("%d" , &x) ;
if(x > 100)
y = x + 8 ;
else if(x < -10)
y = -x + 8 ;
else
y = 0 ;
printf("%d\n" , y) ;
return 0;
}
5.
#include <stdio.h>
int main(){
int i , j , k , m = 3 ;
for(k = 5 ; k < 12 ; k += 2 , --m) {
for(i = 0 ; i < m ; ++i)
printf(" ") ;
for(j = 0 ; j < k ; ++j)
printf("*") ;
printf("\n") ;
}
return 0;
}
6.此题可以沿用第五题的思路进一步完善,写出最佳程序。

上课已经演练。

#include <stdio.h>
int main(){
printf(" *****\n") ;
printf(" * *\n") ;
printf(" * *\n") ;
printf("*************\n") ;
return 0;
}。

相关主题