有关C语言分支结构的代码题目

电子说

1.3w人已加入

描述

Hi!今天我们来做有关分支结构的代码题目,每道题都需要用到分支结构。

【1】编写程序,输入有关月份值,输出该月份是第几季度。

【2】根据键盘输入的年、月,输出该年该月的天数。

【3】编写程序,判断输入的年份是否为闰年。

【4】由键盘输入一个3位的整数,判断该数是否位升序数。如果输入的不是3位数,输出“输入错误”。升序是指高位数依次小于其低位数。

【5】编写程序,输入一个整数,判断它是奇数还是偶数。

【1】编写程序,输入有关月份值,输出该月份是第几季度。

 


#include
//2023.2.3渔火 Linux迷 www.linuxmi.com
int main()
{
  
  int month;
  printf("输入月份:");
  scanf("%d",&month);
  switch((month-1)/3)
  {
    case 0:
      printf("%d月是第1季度
",month);
      break;
    case 1:
      printf("%d月是第2季度
",month);
      break;
    case 2:
      printf("%d月是第3季度
",month);
      break;
    case 3:
      printf("%d月是第4季度
",month);
      break;
    default:
      printf("输入错误
");
      break;
   } 
          //2023.2.3渔火 Linux迷 www.linuxmi.com
  return 0;
}
运行结果如下://输入2,结果是第1季度

Switch

分析:本题中构造的表达式为“(month-1)/3”。当输入月份1、2、3时,表达值为0,以此类推。

【2】根据键盘输入的年、月,输出该年该月的天数。

#include
//2023.2.3渔火 Linux迷 www.linuxmi.com
int main()
{
  
  int year,month,days;
  printf("请输入年,月:");
  scanf("%d,%d",&year,&month);
  switch(month)
  {
    case 1:
    case 3:
    case 5:
    case 7:
    case 8:
    case 10:
    case 12:
      days=31;
      break;
    case 4:
    case 6:
    case 9:
    case 11:
      days=30;
      break;
    case 2:
      if(year%400==0||year%4==0&&year%100!=0)
        days=29;
      else
        days=28;
        break;
      
  }
  printf("%d年%d月的天数是%d天
",year,month,days);
            //2023.2.3渔火 Linux迷 www.linuxmi.com
  return 0;
}
运行结果如下://输入2023,2 输出结果是2023年2月的天数是28天

Switch

【3】编写程序,判断输入的年份是否为闰年。

#include
/2023.2.3渔火 Linux迷 www.linuxmi.com
int main()
{
  
  int year,k;
  printf("输入年份:");
  scanf("%d",&year);
  if((year%4==0&&year%100!=0)||(year%400==0))
    k=1;
  else
    k=0;
  if(k)
    printf("%d是闰年
",year);
  else
    printf("%d不是闰年
",year);
            //2023.2.3渔火 Linux迷 www.linuxmi.com
  return 0;
}
运行结果如下://输入2023输出结果为2023年不是闰年

Switch

分析:k作为“标志变量”,用于表示输入的年份是否为闰年。如果是闰年,就使k的值为1,如果不是闰年,就使k的值为0。

最后检查k的值,如果是1,就是闰年,输出”是闰年“的信息;如果是0,就不是闰年,输出”不是闰年“的信息。

【4】由键盘输入一个3位的整数,判断该数是否位升序数。

如果输入的不是3位数,输出“输入错误”。升序是指高位数依次小于其低位数。

#include
//2023.2.3渔火 Linux迷 www.linuxmi.com
int main()
{
  
  int n,x,y,z;
  scanf("%d",&n);
  if(n<100||n>999)
    printf("输入错误!
");
  else
  {
    x=n/100;
    y=n/10%10;
    z=n%10;
    if(x
运行结果如下://输入789,输出结果为789为升序数

Switch

【5】编写程序,输入一个整数,判断它是奇数还是偶数,并输出判断结构。

#include
//2023.2.3渔火 Linux迷 www.linuxmi.com
int main()
{
  
  int x;
  printf("请输入一个整数:");
  scanf("%d",&x);
  if(x%2!=0)
    printf("%d是奇数
",x);
  else
    printf("%d是偶数
",x);
              //2023.2.3渔火 Linux迷 www.linuxmi.com
  return 0;
}
运行结果如下:输入0,输出结果为0是偶数

 

Switch








审核编辑:刘清

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分