C语言之条件语句练习题


第1关:判断平方和是否大于100

编程要求
请仔细阅读右侧代码,根据方法内的提示,在Begin - End区域内进行代码补充,具体任务如下:

输入两个整数a,b,如果a的平方加b的平方和大于100,则输出其和的百位以上(包括百位)的数字,否则输出a+b的值。

注:通过条件语句实现

测试说明
补充完代码后,点击测评,平台会对你编写的代码进行测试,当你的结果与预期输出一致时,即为通过。

例如:

测试输入:5 6
预期输出:11

测试输入:8 9
预期输出:1

代码如下:

#include<stdio.h>
int main()
{
  /*********begin*********/
int a,b,c;
scanf("%d%d",&a,&b);
if(a*a+b*b>100)
{c=(a*a+b*b)/100;
printf("%d\n",c);
}
else
{c=a+b;
printf("%d\n",c);}
  /*********end*********/
  return 0;
}

在这里插入图片描述

第2关:判断学生成绩等级

编程要求
请仔细阅读右侧代码,根据方法内的提示,在Begin - End区域内进行代码补充,具体任务如下:

给出一百分制成绩,要求输出成绩等级A、B、C、D。

85分以上为A;

84~70分为B;

69~60分为C;

60分以下为D。

测试说明
补充完代码后,点击测评,平台会对你编写的代码进行测试,当你的结果与预期输出一致时,即为通过。

例如:
测试输入:89。
预期输出:成绩是89,相应的等级是A。

测试输入:56 。
预期输出:成绩是56,相应的等级是D。

代码如下:

#include<stdio.h>
int main()
{
    /*********begin*********/
int a;
scanf("%d",&a);
if(a>=85)
printf("成绩是%d,相应的等级是A",a);
else if(a>=70&&a<84)
printf("成绩是%d,相应的等级是B",a);
else if(a>=60&&a<69)
printf("成绩是%d,相应的等级是C",a);
else if(a<60)
printf("成绩是%d,相应的等级是D",a);
    /*********end*********/
    return 0;
}

在这里插入图片描述

第3关:区间内求和

编程要求
请仔细阅读右侧代码,根据方法内的提示,在Begin - End区域内进行代码补充,具体任务如下:

输入两个整数a,b,0<a<b<=10000,将[a,b]间所有能整除7或11的数累加,输出最终累加的和。

测试说明
补充完代码后,点击测评,平台会对你编写的代码进行测试,当你的结果与预期输出一致时,即为通过。

例如:
测试输入:3,20。
预期输出:32。

测试输入:10,30。
预期输出:96。

代码如下:

#include<stdio.h>
int main()
{
    /*********begin*********/
int a,b,sum=0,i;
scanf("%d,%d",&a,&b);
for(i=a;i<=b;i++)
  {
    if(i%7==0||i%11==0)
    sum+=i;
  }
   printf("%d\n",sum);
    /*********end*********/
    return 0;
}

在这里插入图片描述

第4关:判断是否为闰年

编程要求
输入一个年份,请程序判断输出这一年是否为闰年。

测试举例:

测试输入:1999。
预期输出:1999年不是闰年。。

测试输入:2000。
预期输出:2000年是闰年。。

测试输入:1800。
预期输出:1800年不是闰年。。

测试说明
平台会对您的代码进行运行测试,如果实际输出与预期输出相同,则算通关。

代码如下:

#include <stdio.h>
int main()
{
   /*********begin*********/
int year;
scanf("%d",&year);
if(year%400==0)
printf("%d年是闰年。",year);
else
 if(year%4==0&&year%100!=0)
 printf("%d年是闰年。",year);
 else
 printf("%d年不是闰年。",year);
   /*********end*********/

}

在这里插入图片描述

第5关:判断数字是否相同

编程要求
请仔细阅读右侧代码,结合相关知识,在Begin-End区域内进行代码补充,完成编写判断数字是否相同的小程序。

测试说明
例如:
测试输入: 123。
预期输出:0。

测试输入:555。
预期输出:0。

测试输入:252。
预期输出:1。

代码如下:

#include<stdio.h>
int main()
{	
   /*********begin*********/
int a,g,s,b;
scanf("%d",&a);
g=a%10;
s=a%100/10;
b=a/100; 
if(g==s&&s==g)
printf("0");
else
if(g==s||g==b||s==b)
printf("1");
else
printf("0");
   /*********end*********/
}

在这里插入图片描述

第6关:判断日期是一年中的第几天

编程要求
请仔细阅读右侧代码,根据方法内的提示,在Begin - End区域内进行代码补充,具体任务如下:

输入一个日期,输出此日期是该年中的第几天。

注意:

输入日期中年月日间用"-"分隔;
需要区分平年与闰年。
测试说明
测试举例:

测试输入:2016-1-5。
预期输出:5。

测试输入:2013-3-1。
预期输出:60。

代码如下:

#include<stdio.h>
int main()
{
   /*********begin*********/
int y,m,d,z;
scanf("%d-%d-%d",&y,&m,&d);
switch(m)
 {
  case 1:z=d;break;
  case 2:z=d+31;break;
  case 3:z=d+31+28;break;
  case 4:z=d+31+28+31;break;
  case 5:z=d+31+28+31+30;break;
  case 6:z=d+31+28+31+30+31;break;
  case 7:z=d+31+28+31+30+31+30;break;
  case 8:z=d+31+28+31+30+31+30+31;break;
  case 9:z=d+31+28+31+30+31+30+31+31;break;
  case 10:z=d+31+28+31+30+31+30+31+31+30;break;
  case 11:z=d+31+28+31+30+31+30+31+31+30+31;break;
  case 12:z=d+31+28+31+30+31+30+31+31+30+31+30;break;
 }
if(y%400==0||y%4==0&&y%100!=0&&m>2)
z=z+1;
printf("%d\n",z);
   /*********end*********/
   return 0;
}

在这里插入图片描述


  • 3
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值