出现这个怎么修改啊?error C2065: 'printf' : undeclared identifier

#include<stdio.h>
#include"stdafx.h"
main()
{
long int n,t,i=0;
int a[10];
printf("please enter a digit:");
scanf("%ld",&n);
while(n>0)
{ a[i]=n%10;
i++;
n=n/10;
}for(t=0;a[t];t++)
printf(" %d",a[t]);
return 0;

}

第1个回答  2013-08-29
printf这函数在标准输入输出文件中,也就是头文件stdio.h中,你先看stdio.h有没有print,再看头文件连接上了没。
第2个回答  2013-08-29
#include<stdio.h>
#include"stdafx.h"//编译报错 删了就没问题了 我们也不知道你这头文件有什么
main()
{
 long int n,t,i=0;
 int a[10];
 printf("please enter a digit:");
 scanf("%ld",&n);
 while(n>0)
 {   
     a[i]=n%10;
     i++;
     n=n/10;
 }
 for(t=0;a[t];t++)
 printf("  %d",a[t]);
 return 0;
}

第3个回答  2013-08-29
stdafx.h 不用include
它是mfc中一个预编译的头文件,在C或C++程序中一般不用加,mfc程序中才会添加。

错误的意思是printf是一个未定义的变量。追问

删除后,就有这个错误了,fatal error C1010: unexpected end of file while looking for precompiled header directive

删除后,就有这个错误了,fatal error C1010: unexpected end of file while looking for precompiled header directive

追答

这个时候应该要rebuid一吧。

再一个就是你原来的程序main函数没有写返回类型。即int型,程序尾的return 0;即是返回0的意思。

第4个回答  2013-08-29
#include<stdio.h>
int main()
{
long int n,t,i=0;
int a[10];
printf("please enter a digit:");
scanf("%ld",&n);
while(n>0)
{ a[i]=n%10;
i++;
n=n/10;
}
for(t=0;t<i;t++)
printf(" %d",a[t]);
return 0;

}本回答被提问者和网友采纳
相似回答