【发布时间】:2020-12-14 03:30:19
【问题描述】:
我对 C 很陌生,并且正在从事一个相当大的项目。我正在尝试制作一个计算器,到目前为止我只有加法。他们的工作方式是在加法语句中询问他们想要多少个数字,然后我使用 while() 循环来尝试获取所有信息。只是一些附带信息 - 我在 Windows 10 操作系统上使用 Cygwin 终端。
#include <stdio.h>
int main(){
char Etype;
printf("Hello! Welcome to your virtual calculator!\n");
printf("Press 'a' for addition!\n");
scanf("%c", &Etype);
if(Etype == 'a' || Etype == 'A') {
int Anum;
int x = 1;
int y;
printf("How many numbers do you want in this addition statement?\n");
scanf("%f", &Anum);
while(x < Anum) {
printf("Emter number %d\n", x);
scanf("%d", &y);
x = x + 1;
}
}
}
每当我回答我想要在我的陈述中包含多少个数字时,什么都没有发生。希望您能帮到您,如果可以,谢谢!
【问题讨论】:
-
您的编译器至少没有告诉您一个主要问题?打开警告 (
-Wall -Wextra) 并重新编译。 -
%f格式应该读取什么类型的值?Anum的类型是什么? -
谢谢!我在编码方面太糟糕了哈哈(o-o)
-
Shawn 我没有 -Wall -Wextra 在我的编译器上工作
-
您使用哪个编译器?你有没有发现如何让它给你常规错误的警告(或者,更好的是,如何让它给你错误)?如果没有,现在花点时间了解如何提高警告,以便您了解代码中的错误。然后注意警告——编译器比你更了解 C。如果您无法让当前的编译器发出警告,请切换到更好的编译器。
标签: c while-loop calculator