سلام !
این برنامه مثلا قراره یه عدد رو دریافت کنه و اعداد اول کوچکتر از اون رو نمایش بده ! موقع کامپایل کردن توی TC 2.01 هیچ ایرادی نمیگیره و کامپایل میشه , منتها خروجی نداره ! یعنی عدد رو میگیره و بعدش هیچی (یه getch اجرای میشه اون آخر هم) ! توی کامپایلر lcc-win32 ولی درست اجرا میشه فقط وقع کامپایل کردن وارنینگ میده دو تا !
حالا سوالم اینه که اولا TC چرا خروجی نمیده ؟! مشکل زا کدهای منه دیگه , نه ؟!
و اینکه چرا توی lcc-win32 وارنینگ میده ؟!
Warning e:\lcc\a.c: 11 Statement has no effect
Warning e:\lcc\a.c: 11 possible usage of n before definition
اصولا وارنینگ گرفتن نشون دهنده ی اشکال در کد ئه ؟! یا صرفا حدس های کامپایلر ؟!
#include<stdio.h>
#include<conio.h>
void main(void)
{
long int a,n;
int check,i;
clrscr();
printf("Enter the number:");
scanf("%d",&a);
for(n==2;n<=a;n++) {
if(n==2)
check=1;
for(i=2;i<=n/2;i++) {
if((n%i)==0)
{
check=0;
break;
}
check=1;
}
if(check==1)
printf("%4d ",n);
}
getch();
}
ممنون !