點擊查看2016計算機三級網(wǎng)絡(luò)技術(shù)精選試題匯總
1.下列程序的功能是:利用以下所示的簡單迭代方法求方程:
cos (x) -x=0的一個實根。
xn+1=cos(xn )
迭代步驟如下:
(1)取x1初值為0.0。
(2)x0=x1,把x1的值賦給x0。
(3)x1=cos(x0),求出一個新的x1。
(4)若x0-x1的絕對值小于0.000001,執(zhí)行步驟(5),否則執(zhí)行步驟(2)。
(5)所求x1就是方程cos(x)-x=0的一個實根,作為函數(shù)值返回。
請編寫函數(shù)countValue ( )實現(xiàn)程序要求,最后調(diào)用函數(shù)writeDAT( )把結(jié)果輸出到文件out9.dat中。
注意:部分源程序已給出。
請勿改動主函數(shù)main()和寫函數(shù)writeDAT()的內(nèi)容。
#include
#include
#include
void writeDAT();
float countValue( )
{
float x0,x1=0.0; /*定義兩個浮點型變量進行迭代*/
while(1) /*無條件循環(huán)*/
{
x0=x1; /*將x1賦值給x0*/
x1=cos(x0); /*求出新的x1*/
if(fabs(x0-x1)<1e-6) break; /*若x0-x1的絕對值小于0.000001,則結(jié)束循環(huán)*/
}
return x1; /*返回 x1的值*/
}
void main( )
{
system("CLS");
printf("實根=%f\n",countValue( ));
printf("%f\n",cos(countValue( ))-countValue( ));
writeDAT( );
}
void writeDAT( )
{
FILE *wf;
wf=fopen("out9.dat","w");
fprintf(wf,"%f\n",countValue( ));
fclose(wf);
}
2.請編寫函數(shù)void countValue(int *a,int *n),它的功能是:求出1到1000之內(nèi)能被7或11整除但不能同時被7和11整除的所有整數(shù)并存放在數(shù)組a中,并通過n返回這些數(shù)的個數(shù)。
注意:部分源程序已給出。
請勿改動主函數(shù)main()和寫函數(shù)writeDAT()的內(nèi)容。
#include
#include
void writeDAT();
void countValue(int *a,int *n)
{
int i; /*定義循環(huán)控制變量*/
*n=0 ; /*初始化計數(shù)器變量*/
for(i=1;i<=1000;i++) /*在這個范圍內(nèi)尋找符合條件的數(shù)*/
if((i%7==0 && i%11!=0)||(i%7!=0 && i%11==0))
/*如果當前的數(shù)可以被7整除而不可以被11整除,或者可以被11整除而不可以被7整除*/
{
*a=i; /*保存符合條件的數(shù)*/
*n=*n+1; /*統(tǒng)計個數(shù)*/
a++;
}
}
void main()
{
int aa[1000],n,k;
system("CLS");
countValue(aa,&n);
for(k=0;k
if((k+1) %10 ==0)
{
printf("%5d",aa[k]);
printf("\n");
}
else printf("%5d",aa[k]);
writeDAT();
}
void writeDAT()
{
int aa[1000],n,k;
FILE *fp;
fp=fopen("out10.dat","w");
countValue(aa,&n);
for(k=0;k
if((k+1)%10==0)
{
fprintf(fp,"%5d",aa[k]);
fprintf(fp,"\n");
}
else fprintf(fp,"%5d",aa[k]);
fclose(fp);
}
相關(guān)推薦:
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |