★題目66
下列程序prog1.c的功能是:計(jì)算500-800區(qū)間內(nèi)素?cái)?shù)的個(gè)數(shù)cnt,并按所求素?cái)?shù)的值從大到小的順序,再計(jì)算其間隔加、減之和,即第1個(gè)素?cái)?shù)-第2個(gè)素?cái)?shù)+第3個(gè)素?cái)?shù)-第4個(gè)素?cái)?shù)+第5個(gè)素?cái)?shù)...的值sum。請(qǐng)編寫函數(shù)countvalue()實(shí)現(xiàn)程序的要求,最后調(diào)用函數(shù)writeDat()把結(jié)果cnt和sum,輸出到文件OUT11.DAT中。
部分源程序已給出。
請(qǐng)勿改動(dòng)主函數(shù)main()和輸出數(shù)據(jù)函數(shù)writeDat()的內(nèi)容。
#include
int cnt,sum;
int isP(int m)
{ int i;
for(i=2;i if(m % i==0)return 0;
return 1;
}
void countvalue()
{int i,j,k=1;
for(i=800;i>500;i--)
if(isP(i))
{
cnt++;
sum=sum+k*i;
k=k*(-1); }
}
}
void main()
{
cnt=sum=0;
countvalue();
printf("素?cái)?shù)的個(gè)數(shù)=%d\n",cnt);
printf("按要求計(jì)算的值=%d\n",sum);
writeDat();
}
writeDat()
{
FILE *fp;
fp=fopen("OUT11.DAT","w");
fprintf(fp,"%d\n%d\n",cnt,sum);
fclose(fp);
}
題目67
下列程序的功能是:選出5000以下符合條件的自然數(shù)。條件是:千位數(shù)字與百位數(shù)字之和等于十位數(shù)字與個(gè)位數(shù)字之和,且千位數(shù)字與百位數(shù)字之和等于個(gè)位數(shù)字與千位數(shù)字之差的10倍。計(jì)算并輸出這些四位自然數(shù)的個(gè)數(shù)cnt以及這些數(shù)的和sum。請(qǐng)編寫函數(shù)countvalue()實(shí)現(xiàn)程序的要求,最后調(diào)用函數(shù)writeDat()把結(jié)果cnt和sum,輸出到文件OUT13.DAT中。
部分源程序存在文件prog1.c中。
請(qǐng)勿改動(dòng)主函數(shù)main()和輸出數(shù)據(jù)函數(shù)writeDat()的內(nèi)容。
#include
int cnt,sum;
void countvalue()
{int i,thou,hun,ten,data;
for(i=1000;i<5000;i++)
{ thou=i/1000; hun=i%1000/100;
ten=i%100/10; data=i%10;
if(thou+hun==ten+data&&thou+hun==(data-thou)*10) {cnt++;sum+=i;}
}
}
void main()
{
cnt=sum=0;
countvalue();
printf("滿足條件的自然數(shù)的個(gè)數(shù)=%d\n",cnt);
printf("滿足條件的自然數(shù)的個(gè)數(shù)之和=%d\n",sum);
writeDat();
}
writeDat()
{
FILE *fp;
fp=fopen("OUT13.DAT","w");
fprintf(fp,"%d\n%d\n",cnt,sum);
fclose(fp);
}
下列程序prog1.c的功能是:計(jì)算500-800區(qū)間內(nèi)素?cái)?shù)的個(gè)數(shù)cnt,并按所求素?cái)?shù)的值從大到小的順序,再計(jì)算其間隔加、減之和,即第1個(gè)素?cái)?shù)-第2個(gè)素?cái)?shù)+第3個(gè)素?cái)?shù)-第4個(gè)素?cái)?shù)+第5個(gè)素?cái)?shù)...的值sum。請(qǐng)編寫函數(shù)countvalue()實(shí)現(xiàn)程序的要求,最后調(diào)用函數(shù)writeDat()把結(jié)果cnt和sum,輸出到文件OUT11.DAT中。
部分源程序已給出。
請(qǐng)勿改動(dòng)主函數(shù)main()和輸出數(shù)據(jù)函數(shù)writeDat()的內(nèi)容。
#include
int cnt,sum;
int isP(int m)
{ int i;
for(i=2;i
return 1;
}
void countvalue()
{int i,j,k=1;
for(i=800;i>500;i--)
if(isP(i))
{
cnt++;
sum=sum+k*i;
k=k*(-1); }
}
}
void main()
{
cnt=sum=0;
countvalue();
printf("素?cái)?shù)的個(gè)數(shù)=%d\n",cnt);
printf("按要求計(jì)算的值=%d\n",sum);
writeDat();
}
writeDat()
{
FILE *fp;
fp=fopen("OUT11.DAT","w");
fprintf(fp,"%d\n%d\n",cnt,sum);
fclose(fp);
}
題目67
下列程序的功能是:選出5000以下符合條件的自然數(shù)。條件是:千位數(shù)字與百位數(shù)字之和等于十位數(shù)字與個(gè)位數(shù)字之和,且千位數(shù)字與百位數(shù)字之和等于個(gè)位數(shù)字與千位數(shù)字之差的10倍。計(jì)算并輸出這些四位自然數(shù)的個(gè)數(shù)cnt以及這些數(shù)的和sum。請(qǐng)編寫函數(shù)countvalue()實(shí)現(xiàn)程序的要求,最后調(diào)用函數(shù)writeDat()把結(jié)果cnt和sum,輸出到文件OUT13.DAT中。
部分源程序存在文件prog1.c中。
請(qǐng)勿改動(dòng)主函數(shù)main()和輸出數(shù)據(jù)函數(shù)writeDat()的內(nèi)容。
#include
int cnt,sum;
void countvalue()
{int i,thou,hun,ten,data;
for(i=1000;i<5000;i++)
{ thou=i/1000; hun=i%1000/100;
ten=i%100/10; data=i%10;
if(thou+hun==ten+data&&thou+hun==(data-thou)*10) {cnt++;sum+=i;}
}
}
void main()
{
cnt=sum=0;
countvalue();
printf("滿足條件的自然數(shù)的個(gè)數(shù)=%d\n",cnt);
printf("滿足條件的自然數(shù)的個(gè)數(shù)之和=%d\n",sum);
writeDat();
}
writeDat()
{
FILE *fp;
fp=fopen("OUT13.DAT","w");
fprintf(fp,"%d\n%d\n",cnt,sum);
fclose(fp);
}

