鱼C论坛

 找回密码
 立即注册
查看: 2176|回复: 3

[已解决]C语言编程课后作业,在PTA平台总是编译错误请教

[复制链接]
发表于 2021-3-30 19:08:57 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
刚学了if语句和分支结构,结果第一题就一直卡住了
题目是 :键盘输入一个英文字母,如果是大写字母,输出ASCII码,如果是小写字母输出对应的大写字母。
我的答案是:#include <stdio.h>
int main()
{
    char x;
    scanf("%c",&x);
    if(x>='a')
                x=x-32;
                printf("%c",x);
    else
                printf("%d",x);
}
但是这个运行不了,运行出一堆乱码
a.c: In function ‘main’:
a.c:6:5: warning: this ‘if’ clause does not guard... [-Wmisleading-indentation]
     if(x>='a')
     ^~
a.c:8:3: note: ...this statement, but the latter is misleadingly indented as if it is guarded by the ‘if’
   printf("%c",x);
   ^~~~~~
a.c:9:5: error: ‘else’ without a previous ‘if’
     else
     ^~~~
a.c:5:5: warning: ignoring return value of ‘scanf’, declared with attribute warn_unused_result [-Wunused-result]
     scanf("%c",&x);
     ^~~~~~~~~~~~~~
请教一下我的错误出在了哪里,正确的这个程序应该怎么写,因为是刚学C语言还请写的简单一点
最佳答案
2021-3-30 19:15:56
c 的代码块加 {}
int main()
{
    char x;
    scanf("%c",&x);
    if(x>='a')
        {
                x=x-32;
                printf("%c",x);
        }
    else
        {
                printf("%d",x);
        }
}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-3-30 19:15:56 | 显示全部楼层    本楼为最佳答案   
c 的代码块加 {}
int main()
{
    char x;
    scanf("%c",&x);
    if(x>='a')
        {
                x=x-32;
                printf("%c",x);
        }
    else
        {
                printf("%d",x);
        }
}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-3-30 19:38:01 | 显示全部楼层
ba21 发表于 2021-3-30 19:15
c 的代码块加 {}
int main()
{

感谢指点,做对了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-3-30 19:42:56 | 显示全部楼层
ba21 发表于 2021-3-30 19:15
c 的代码块加 {}
int main()
{

还有我的大小写字母范围没有界定清楚,在你的指点下我改成了#include <stdio.h>
int main()
{
    char x;
    scanf("%c",&x);
    if(x>='a' &&x<='z')
        {
                x=x-32;
                printf("%c",x);
        }
    else
        {
                if(x>='A' &&x<='Z')
                printf("%d",x);
        }
}
现在已经答对了,感谢!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-9-22 01:01

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表