章节
问答
课签
笔记
评论
占位
占位

分支结构之多重if-else语句

考试之前,家长说了,你如果考90分以上的话买玩具,如果考70到90之间请吃大餐,否则没有奖励。

那么针对这种多重的条件的话,在C语言中就要用到多重if-else语句,其结构如下:

其语义是:依次判断表达式的值,当出现某个值为真时,则执行对应代码块,否则执行代码块n。 if-else-if语句的执行过程如下图所示:

那么上面家长所说的,用代码实现如下:

注意:当某一条件为真的时候,则不会向下执行该分支结构的其他语句。

任务

某游戏对不同等级的积分的玩家赋予不同的荣誉称号,其对应关系如下:

积分>=10000分为钻石玩家

积分>=5000并且<10000为白金玩家

积分>=1000并且<5000为青铜玩家

积分<1000为普通玩家。

小编现在是有7200分,请在代码编辑器中完善代码,看一下小编是什么级别的玩家。

运行结果: 白金玩家 

?不会了怎么办

1、else if中间是否忘记使用空格分开?

2、最后else子句后面是否有条件判断?

3、判断条件编写正确吗?

4、参考代码

||
1
#include <stdio
    .h>
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
提交
重置代码
||

请验证,完成请求

由于请求次数过多,请先验证,完成再次请求

加群二维码

打开微信扫码自动绑定

您还未绑定服务号

绑定后可得到

  • · 粉丝专属优惠福利
  • · 大咖直播交流干货
  • · 课程更新,问题答复提醒
  • · 账号支付安全提醒

收藏课程后,能更快找到我哦~

使用 Ctrl+D 可将课程添加到书签

邀请您关注公众号
关注后,及时获悉本课程动态

举报

0/150
提交
取消
全部 精华 我要发布

最赞回答 / 君与君慕_fgoEM9
score<10000和score<50000把符号变为<=

最新回答 / 慕尼黑3508501
if后面用了中文的(else后面不能加判断条件

最赞回答 / 朝荣
“%s”是可以去掉的,因为printf(+“文字”)是可以直接将文字输出的,所以你那“%s”放在那也只是好看的罢了;%s是输出一个变量里的字符串

最新回答 / weixin_慕姐3242992
#include <stdio.h>int main() {    int score = 7200;    //完善一下代码    if(score >=10000)     {        printf("%s\n","钻石玩家");    }    else if (score>=5000&& score<10000)     {        printf("%s\n","白金玩家");        }    else if (score>=...

最赞回答 / 慕慕4541561
#include <stdio.h>int main() {    int score = 7200;    //完善一下代码    if(score&   =10000)    {        printf("%s\n","钻石玩家");    }    else if(score&{  =5000&prin&f("%score&白金玩10000)    {        printf("%s\n","白...

最赞回答 / qq_慕虎6484883
不可以,因为计算机识别不了。换成screm<5000&&screm>1000;

最赞回答 / qq_慕九州8370008
最后的else后面不能加判断下载视频          

最赞回答 / 慕仙7052714
你的 if(score >=10000)中的括号好像是中文

最新回答 / qq_慕运维2013106
printf("白银玩家");或者printf("%s","白银玩家");都可以,\n是转义字符,用来回车换行的,不要求强加

最新回答 / 慕正非
第一个用if,后面的一直用 else if就可以,不用考虑那么多

最赞回答 / 入目皆是琳
第九行的那个score你打成了sclre

最赞回答 / 柒寳
加%s表示这是字符串,因为加了引号就表示字符或者字符串,所以这里去掉%s没影响,但要表示小数,整数之类的前面就必须要写%f或者%d

最新回答 / 慕运维5014790
第一个if,当执行mark=0后,mark的值已经改变,没有再次进行初始化,第二个if的位置感觉不太对,给出如下代码进行参考:#include <stdio.h>int main() {    int i,j;    int mark=1;    for(i=2;i<=100;i++)    {        for(j=2;j<i;j++)        {            if(i%j==0)            {                mark=0;    ...

最赞回答 / 慕仰5491312
else 后面不用接()了。
全部 我要发布
最热 最新
只看我的

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

账号登录 验证码登录

遇到问题
忘记密码

代码语言