那没事了 发表于 2022-1-22 20:15:47

S1E11if语句的课后作业。

各位大佬谁能救救萌新,我自己去百度查报错结果答案是变量名未定义,或者拼写错误。可我自己研究了好几个小时实在是找不到解决办法了,谁能详细讲讲这个问题的到底是我哪儿操作错了嘛还是




#define STRING char *
#define IF if(
#define THEN ){
#define ELSE }else{
#define FI ;}
#define WHILE while(
#define DO ){
#define OD ;}
#define INT int
#define BEGIN {
#define END }
INT main()
BEGIN
    int i;
    printf("请输入您的年龄");
    scanf("%d",&i);
IF i<18
THEN
    printf("您为满18周岁");
ELSE
    printf("您已满18周岁")
FI
    return 0;
END






安装最新的 PowerShell,了解新功能和改进!https://aka.ms/PSWindowsPS C:\Users\29395> cd "d:\Gcc\" ; if ($?) { g++ Untitled-11.cpp -o Untitled-11 } ; if ($?) { .\Untitled-11 }Untitled-11.cpp: In function 'int main()':Untitled-11.cpp:15:5: error: 'printf' was not declared in this scope   15 |   printf("请输入您的年龄");      |   ^~~~~~Untitled-11.cpp:1:1: note: 'printf' is defined in header '<cstdio>'; did you forget to '#include <cstdio>'?+++ |+#include <cstdio>    1 | #define STRING char *Untitled-11.cpp:16:5: error: 'scanf' was not declared in this scope   16 |   scanf("%d",&i);      |   ^~~~~

傻眼貓咪 发表于 2022-1-22 20:15:48

最关键的 #include <stdio.h>

那没事了 发表于 2022-1-22 20:17:11

这个是报错信息,话说我编辑帖子的时候蛮正常的啊,发出来就是一坨了


Windows PowerShell
版权所有(C) Microsoft Corporation。保留所有权利。

安装最新的 PowerShell,了解新功能和改进!https://aka.ms/PSWindows

PS C:\Users\29395> cd "d:\Gcc\" ; if ($?) { g++ Untitled-11.cpp -o Untitled-11 } ; if ($?) { .\Untitled-11 }
Untitled-11.cpp: In function 'int main()':
Untitled-11.cpp:15:5: error: 'printf' was not declared in this scope
   15 |   printf("请输入您的年龄");
      |   ^~~~~~
Untitled-11.cpp:1:1: note: 'printf' is defined in header '<cstdio>'; did you forget to '#include <cstdio>'?
+++ |+#include <cstdio>
    1 | #define STRING char *
Untitled-11.cpp:16:5: error: 'scanf' was not declared in this scope
   16 |   scanf("%d",&i);
      |   ^~~~~

傻眼貓咪 发表于 2022-1-22 20:46:18

#include <stdio.h>
#define STRING char *
#define IF if(
#define THEN ){
#define ELSE }else{
#define FI ;}
#define WHILE while(
#define DO ){
#define OD ;}
#define INT int
#define BEGIN {
#define END }
INT main()
BEGIN
    int i;
    printf("请输入您的年龄");
    scanf("%d",&i);
IF i<18
THEN
    printf("您为满18周岁");
ELSE
    printf("您已满18周岁")
FI
    return 0;
END请输入您的年龄99
您已满18周岁

那没事了 发表于 2022-1-22 21:18:40

傻眼貓咪 发表于 2022-1-22 20:15
最关键的 #include

okok谢谢大佬了,但是话说我刚才试验了一下,不加#include<stdio.h>出来的报错是蛮明显的那个一大串红色的那个欸

cd : 无法将“cd”项识别为 cmdlet、函数、脚本文件或可运行程序的名称。请检查名称的拼写,如果包括路径,请确保路径正确,然后再试一次。
所在位置 行:1 字符: 1
+ cd "d:\Gcc\" ; if ($?) { gcc Untitled-1.c -o Untitled-1 } ; if ($?)...
+ ~~~
    + CategoryInfo          : ObjectNotFound: (cd:String) [], CommandNotFoundException
    + FullyQualifiedErrorId : CommandNotFoundException
我还是蛮好奇就是我那个为啥子会报我scanf有问题啊就,我想不太通,麻烦您了

傻眼貓咪 发表于 2022-1-22 22:09:50

那没事了 发表于 2022-1-22 21:18
okok谢谢大佬了,但是话说我刚才试验了一下,不加#include出来的报错是蛮明显的那个一大串红色的那个欸
...

当然会报错,因为scanf 和 printf 在头文件 stdio.h 里面啊。
页: [1]
查看完整版本: S1E11if语句的课后作业。