标题:新人初学,求大佬。找了好久不知道怎么改
只看楼主
半知
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2020-11-27
结帖率:0
已结贴  问题点数:20 回复次数:2 
新人初学,求大佬。找了好久不知道怎么改
#include "stdio.h"
void main()
{
char ltype;
float reapt;
printf("请输入论文类型:(A代表本科 B硕士 C博士 D一般论文)");
printf("请输入论文重复率;(0到1)");
scanf("%c", &ltype);
scanf("%f", &reapt);
if(ltype=='A')
printf("本科");  
{if(reapt>0.3)
        printf("该本科论文不合格");
    else
        printf("该本科论文合格");}

else if(ltype=='B')
   printf("硕士");

{if(reapt>0.25)
        printf("该硕士论文不合格");
    else
        printf("该硕士论文合格");}

else if(ltype=='C')
   printf("博士");

{if(reapt>0.2)
        printf("该博士论文不合格");
    else
        printf("该博士论文合格");}

else if(ltype=='D')
   printf("一般论文");

{if(reapt>0.3)
        printf("该一般论文论文不合格");
    else
        printf("该一般论文论文合格");}

else
printf("输入错误");
}
搜索更多相关主题的帖子: if 本科 论文 printf 输入 
2020-11-27 16:59
忽左忽右
Rank: 2
等 级:论坛游民
帖 子:1
专家分:10
注 册:2018-8-22
得分:10 
你的问题是吧if判断语句下面的花括号标错了位置。修改后的代码如下:
#include "stdio.h"
void main()
{
char ltype;               //论文类型
float reapt;              //论文重复率
printf("请输入论文类型:(A代表本科 B硕士 C博士 D一般论文)");
scanf("%c", &ltype);

printf("请输入论文重复率;(0到1)");
scanf("%f", &reapt);

if(ltype=='A')
{printf("本科");                            //花括号应该放在这里

if(reapt>0.3)
        printf("该本科论文不合格");
    else
        printf("该本科论文合格");}

else if(ltype=='B')
   {printf("硕士");                           //花括号应该放在这里

if(reapt>0.25)
        printf("该硕士论文不合格");
    else
        printf("该硕士论文合格");}

else if(ltype=='C')
   {printf("博士");                          //花括号应该放在这里

if(reapt>0.2)
        printf("该博士论文不合格");
    else
        printf("该博士论文合格");}

else if(ltype=='D')
   {printf("一般论文");                      //花括号应该放在这里

if(reapt>0.3)
        printf("该一般论文论文不合格");
    else
        printf("该一般论文论文合格");}

else
printf("输入错误");
}
2020-11-28 21:12
风过无痕1989
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:8
帖 子:228
专家分:1050
注 册:2020-7-17
得分:10 
回复 楼主 半知
主要是花括号的位置不正确。其他的地方,帮你作了一些调整
程序代码:
#include "stdio.h"
void main()
{
    char ltype;
    float reapt;
    printf("请输入论文类型:(A博士 B硕士 C本科 D一般论文): ");  // 博士的位置与本科互换(包括后面相应的语句)
    scanf("%c", &ltype);                                          // 此语句调前了一句,不然让人丈二和尚摸不着头脑
    printf("请输入论文重复率;(0到1): ");
    scanf("%f", &reapt);
    if (ltype == 'A')
    {
        printf("博士:");
        if (reapt > 0.2)
            printf("该博士论文不合格\n");                         // 加上回车换行符(下同)
        else
            printf("该博士论文合格\n");
    }

    else if (ltype == 'B')
    {
        printf("硕士:");
        if (reapt > 0.25)
            printf("该硕士论文不合格\n");
        else
            printf("该硕士论文合格\n");
    }

    else if (ltype == 'C')
    {
        printf("本科:");
        if (reapt > 0.3)
            printf("该本科论文不合格\n");
        else
            printf("该本科论文合格\n");
    }

    else if (ltype == 'D')
    {
        printf("一般论文:");
        if (reapt > 0.3)
            printf("该一般论文论文不合格\n");
        else
            printf("该一般论文论文合格\n");
    }
    else
        printf("输入错误\n");
}
2020-11-29 00:08



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-504030-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.255863 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved