scanf(\printf(\
若从键盘上输入:10A10<回车>,则输出结果是: A A) 10,A,10 B) 10,a,10 C) 10,a,0 D) 10,A,0 21.在屏幕中显示如下字符(提示:用printf ) ****Hello*****
World ============
22.从键盘输入一个小写字母,将其变成大写字母输出?
(提示:1.假定输入的字母一定符合要求2.大小写字母ASCII码相差32) 23.从键盘输入一个100—999之间的数,将该数的个,十,百位数字相加的和输出?
(提示:1.假定输入的数一定符合要求2.可以通过 %, / 实现)
int a,b,c,num,sum; scanf(“%d”,&num);
a=num;b=num/10;c=num/100; sum=a+b+c; printf(“%d”,sum);
第四章 选择结构
复习要点:
1.逻辑关系的表示。 2.条件运算符。
11
3.用if语句实现选择结构。
4.用switch语句实现多分支选择结构。 5.选择结构的嵌套。
1.下面各逻辑表达式的值,设a=3,b=4,c=5。 (1)a>b
2.下列表达式中,不满足“当x的值为偶数时值为真,为奇数时值为假”的要求( B )。
A)x%2==0 B)!x%2!=0 C)(x/2*2-x)==0 D)!(x%2)
3.能正确表示“当x的取值在[1,10]和[200,210]范围内为真,否则为假”的表达式是( C )。
A)(x>=1) && (x<=10) && (x>=200) && (x<=210) B)(x>=1) | | (x<=10) | | (x>=200) | | (x<=210) C)(x>=1) && (x<=10) | | (x>=200) && (x<=210) D)(x>=1) | | (x<=10) && (x>=200) | | (x<=210)
4.以下程序段中与语句k=a>b?(b>c?1:0):0;功能等价的是(A ) A)if((a>B)&&(b>C)) k=1; B) if((a>B)||(b>C)) k=1 else k=0;
C)if(a<=B) k=0; D) if(a>B) k=1; else if(b<=C) k=1; else if(b>C) k=1; else k=0;
12
5.对if语句的理解错误的是: ( C )
A)if结构,将判断表达式的值视为逻辑值 B)系统将if---else结构视为一条语句
C)else总是与其之前最近的且尚未配对的if配对 D)else可以独立出现
(以下6到12题必须掌握) 6.有如下程序。 #include
int n=20; if(n<10);
printf(\ \
if(n=10)printf(\ \ else
if(n>10) printf(\ \ else printf(\ \
}
程序执行后输出的结果是: 7.有如下程序。 main ( ) {
13
int n;
scanf(\ switch (n/10)
{
default: printf(\
case 6: printf(\ case 10:
case 9: printf(\ case 8: printf(\ case 7: printf(\ }
}
从键盘上输入的数是:999,输出的结果是 从键盘上输入的数是:100,输出的结果是 8.有如下程序。 void main ( ) {
int x , y; char op; x=20; y=10; scanf(\ switch (op)
14
{ case '+': y+=x;break; case '-': y-=x;break; case '*': y*=x;break; case '/': y/=x;break; default: y+=x; }
printf(\}
从键盘上输入的字符是:’+’,输出的结果是 9.以下if嵌套中实现的逻辑意义不同的是
(1)void main ( ) { int n;
scanf(\
if(n==10)printf(\ \ else
if(n>10) printf(\ \ else printf(\ \ }
(2)#include
15