计算机二级

3773考试网计算机等级考试计算机二级正文

2011计算机二级C语言考点:选择结构程序设计

来源:fjzsksw.com 2010-11-3 13:21:26

 

 方法二:用switch语句

  分析:

  switch语句是用于处理多分支的语句。注意,case后的表达式必须是一个常量表达式,所以在以用switch语句之前,必须把0~100之间的成绩分别化成相关的常量。所有A(除100以外),B,C,D类的成绩的共同特点是十位数相同,此外都是E类。则由此可得把score除十取整,化为相应的常数。

  #include"stdio.h"

  main()

  {

  int g,s;

  char ch;

  printf("\ninput a student grade:");

  scanf("%d",&g);

  s=g/10;

  if(s<0||s>10)

  printf("\ninput error!");

  else

  { switch (s)

  { case 10:

  case 9: ch='A'; break;

  case 8: ch='B'; break;

  case 7: ch='C'; break;

  case 6: ch='D'; break;

  default: ch='E';

  }

  printf("\nthe student scort:%c",ch);

  }

  }

  输入测试数据,同方法一一样调试程序并写出结果。

  【例3】有一函数:

  y=xx<1

  2x-11=  3x-11x>=10

  用scanf函数输入x的值(分别为x<1,1~10,>=10三种情况),求y值。

  分析:y是一个分段表达式。要根据x的不同区间来计算y的值。所以应使用If语句。

  main()

  {

  int x,y;

  printf(“please input x :”);

  scanf(“%d”,&x);

  if (x<1)

  {

  y=x;

  printf(“y=%d\n”,y);

  }

  else if (x<10)

  {

  y=2*x-1;

  printf(“y=%d\n”,y);

  }

  else

  {

  y=3*x-11;

  printf(“y=%d\n”,y);

  }

  【作业】

  1. c语言如何表示“真”与“假”?系统如何判断一个量的“真”与“假”?

  2. 写出下面各逻辑表达式的值。设a=3,b=4,c=5

  (1) a+b>c&&b= =c

  (2) a||b+c&&b-c

  (3) !(a>b)&&!c||1

  (4) !(x=a)&&(y=b)&&0

  (5) !(a+b)+c-1&&b+c/2

  3. 有3个整数a、b、c,由键盘输入,输出其中最大的数。

  4.有一函数:

  y=xx<1

  2x-11=  3x-11x>=10

  写一程序,输入x,输出y。

  5.给出一百分制成绩,要求输出成绩等级A、B、C、D、E。90分以上为A,80~89为B, 70~79分为C,60~69分为D,60分以下为E。

  6.给一个不多于5位的正整数,要求:

  a. 求出它是几位数;

  b. 分别打出每一位数字;

  c. 按逆序打出各位数字,例如原数为321,应输出123。

  7.输入4个整数,要求按由小到大的顺序输出。

 

 

上一页  [1] [2] 

触屏版 电脑版
3773考试网 琼ICP备12003406号-1