C ';a';未声明(此函数首次使用)错误
我是编程新手,我想创建一个程序,可以打印出pi的前n位,其中n由用户指定。这个问题的原因可能是什么C ';a';未声明(此函数首次使用)错误,c,arrays,loops,C,Arrays,Loops,我是编程新手,我想创建一个程序,可以打印出pi的前n位,其中n由用户指定。这个问题的原因可能是什么 #include <stdio.h> #define MAX_DIGITS 10 int main(void) { int pi[MAX_DIGITS] = {3, 1, 4, 1, 5, 9, 2, 6, 5, 3}; printf("How many digits of pi would you like to print? ");
#include <stdio.h>
#define MAX_DIGITS 10
int main(void) {
int pi[MAX_DIGITS] = {3, 1, 4, 1, 5, 9, 2, 6, 5, 3};
printf("How many digits of pi would you like to print? ");
int digits;
scanf("%d", &digits);
int i = 0;
while (i < digits) {
printf("%d", array[i]);
if (i == 0){
printf(".");
}
i++;
}
printf("\n");
return 0;
}
#包括
#定义最多10位数字
内部主(空){
int-pi[MAX_DIGITS]={3,1,4,1,5,9,2,6,5,3};
printf(“您希望打印多少位pi?”);
整数位数;
scanf(“%d”,和数字);
int i=0;
while(i<位数){
printf(“%d”,数组[i]);
如果(i==0){
printf(“.”);
}
i++;
}
printf(“\n”);
返回0;
}
不确定要做什么,但
没有声明数组[i]。这就是你想做的吗
#include <stdio.h>
#define MAX_DIGITS 10
int main(void) {
int pi[MAX_DIGITS] = {3, 1, 4, 1, 5, 9, 2, 6, 5, 3};
printf("How many digits of pi would you like to print? ");
int digits;
scanf("%d", &digits);
int i = 0;
while (i < digits) {
printf("%d", pi[i]);
if (i == 0){
printf(".");
}
i++;
}
printf("\n");
return 0;
}
#包括
#定义最多10位数字
内部主(空){
int-pi[MAX_DIGITS]={3,1,4,1,5,9,2,6,5,3};
printf(“您希望打印多少位pi?”);
整数位数;
scanf(“%d”,和数字);
int i=0;
while(i<位数){
printf(“%d”,pi[i]);
如果(i==0){
printf(“.”);
}
i++;
}
printf(“\n”);
返回0;
}
此外,您还应该检查数字是否不超过MAX_digitswhile循环中的这段代码就是问题所在
printf("%d", array[i]);
您的数组称为pi,而这里有“array”,所以只需将其重命名为pi,它就可以正常工作了
它应该是i==0,与zywy的答案相反。不过,您可能希望使条件i==0&&digits>1
,以便在请求一位pi时不打印小数点
另一方面,我不认为使用数组来存储所需的pi数字是个好主意,除非您对用户可以输入的n的潜在值有特定限制。考虑使用以下公式计算π:的位数
错误消息准确地说明了问题所在。您的
printf
谈到了array[i]
,但是没有所谓的array
。错误和代码似乎不一致,因为没有使用“a”标识符)。在任何情况下,都没有显示“array”变量..我不理解这个问题。你能不能更具体一点,比如把你的编译器输出/错误粘贴在这里?