在子类构造函数之前所有父类的构造函数要调用。
called:被调用,
派生类构造时,先构造基类因此正确
基类构造函数总是在派生类构造函数调用之前被先调用。Called的意思就是被调用。
基本是这个意思
#include "stdio.h"
#include "stdlib.h"
int fun(int p)
{
int i;
if(p==1) return 0;
for(i=2;i
if(p%i==0) return 0;
return 1;
}
void main()
{
int n;//用于接收输入的整数
FILE *fp;//用于操作文件data.txt
int i;//用于每次输入5个数的循环
char s;//用于接收Y/N
//如果data.txt创建失败,则退出程序
if((fp=fopen("data.txt","w"))==NULL)
{
printf("data.txt open error!");
exit(1);
}
//开始循环
while(1)
{
//输入5个数并处理
for(i=0;i<5;i++)
{
printf("Please enter NO.%d number:",i);
scanf("%d",&n);
if(fun(n))//如果是素数
{
printf("%d is a prime!\n",n);
fprintf(fp,"%d ",n);
}
else
{
printf("%d is not a prime!\n",n);
}
}
//询问是否继续
retry: printf("continue?(y/n)");
//清空缓冲区,以防之前输入整数时按的回车键被这里误接收了
fflush(stdin);
scanf("%c",&s);
//输入y或者Y则继续
if(s=='y' || s=='Y')
continue;
//输入n或者N则退出
else if(s=='n' || s=='N')
break;
//输入了其它字符则提示
else
{
printf("Please input y/n");
goto retry;
}
}
fclose(fp);
}