鱼C论坛

 找回密码
 立即注册
查看: 3147|回复: 8

[已解决]编译错误 不知道如何修改

[复制链接]
发表于 2022-7-4 21:02:24 | 显示全部楼层 |阅读模式

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

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

x
本帖最后由 panzhengwang 于 2022-7-4 21:17 编辑

#include <stdio.h>
void main()
int a;
printf( "input a number:\n" );
scanf( "%d\n", &a);
if( a < 60 )
{
        printf( "E\n" );
}                                                           //第一次编译错误指示标在这里行
else if( (60 <a || a==60) && a<70 )
{
        printf( "D\n");
}
else if( (70 <a || a==70) && a<80 )
{
        printf( "C\n" );
}
else if( (80 <a || a==80) && a<90 )
{
        printf( "B\n" );
}
else
{
        printf( "A\n" );
}


编译错误 出来了,就在注释的哪一行,但是我就是照不出来错在那里 求助各位大神 谢谢
最佳答案
2022-7-4 21:19:34
main是一个函数,它的从属代码块需要用花括号包裹
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2022-7-4 21:19:34 From FishC Mobile | 显示全部楼层    本楼为最佳答案   
main是一个函数,它的从属代码块需要用花括号包裹
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

 楼主| 发表于 2022-7-4 21:22:57 | 显示全部楼层
wp231957 发表于 2022-7-4 21:19
main是一个函数,它的从属代码块需要用花括号包裹

谢谢 根据你的指导 ,我进步了!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-7-4 21:24:16 From FishC Mobile | 显示全部楼层
panzhengwang 发表于 2022-7-4 21:22
谢谢 根据你的指导 ,我进步了!

你看的资料是有问题的
void main()这样的写法已经被最新的c标准所淘汰
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-7-4 21:26:18 | 显示全部楼层
本帖最后由 6YKT6ZKm5LqI 于 2022-7-4 21:28 编辑

我也是小白,我觉得有两个地方有点问题:
1. main函数应该写上返回值并且main下面的代码是需要用大括号括起来的;
2. 把"\n"写在scanf里面是有问题的,scanf没有办法读取"\n", 所以会导致用户输入数据后按回车没有反应;
  1. #include <stdio.h>

  2. int main()
  3. {
  4.     int a;
  5.     printf("input a number:\n");
  6.     scanf("%d", &a); // 这里最好不要写\n噢!
  7.     if (a < 60)
  8.     {
  9.         printf("E\n");
  10.     } //第一次编译错误指示标在这里行
  11.     else if ((60 < a || a == 60) && a < 70)
  12.     {
  13.         printf("D\n");
  14.     }
  15.     else if ((70 < a || a == 70) && a < 80)
  16.     {
  17.         printf("C\n");
  18.     }
  19.     else if ((80 < a || a == 80) && a < 90)
  20.     {
  21.         printf("B\n");
  22.     }
  23.     else
  24.     {
  25.         printf("A\n");
  26.     }
  27.     return 0;
  28. }
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

发表于 2022-7-4 21:27:07 | 显示全部楼层
  1. #include <stdio.h>
  2. int main() // main 函数必须返回 int
  3. { // main 函数里面的代码必须有花括号包裹
  4.     int a;
  5.     printf( "input a number:\n" );
  6.     scanf( "%d", &a); // 输入里不要加 \n
  7.     if( a < 60 ) // 条件不要乱写 , 有 <= 和 >= , 做到不重复不遗漏
  8.     {
  9.         printf( "E\n" );
  10.     }                                                
  11.     else if( 60 <= a && a < 70 )
  12.     {
  13.         printf( "D\n");
  14.     }
  15.     else if( 70 <= a && a < 80 )
  16.     {
  17.         printf( "C\n" );
  18.     }
  19.     else if( 80 <= a && a < 90 )
  20.     {
  21.         printf( "B\n" );
  22.     }
  23.     else
  24.     {
  25.         printf( "A\n" );
  26.     }
  27.     return 0; // main 函数要返回 0
  28. }// 同第 3 行
复制代码

照着例子写
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

 楼主| 发表于 2022-7-4 21:30:07 | 显示全部楼层
6YKT6ZKm5LqI 发表于 2022-7-4 21:26
我也是小白,我觉得有两个地方有点问题:
1. main函数应该写上返回值;
2. 把"\n"写在scanf里面是有问题 ...

谢谢大佬,你指出了另一个错误,这里就是因为多了一个\n,导致我在输入整型数字后,必须加上一个逗号,然后回车,才能使得输入结束,
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-7-4 21:35:16 | 显示全部楼层

谢谢老师
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-7-4 22:57:33 | 显示全部楼层

都是同学 , 我也刚学的
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-6-4 15:06

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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