求C语言高手解题

来自:学习    更新日期:早些时候
求解答c语言~

#include #include #define BLANK -1int matrix[128][128];int N,N2;void snake(int i,int j,char direction,int val){ matrix[i][j]=val; if(val>=N2) return; switch(direction){ case 'R': if(j+10&&matrix[i][j-1]==BLANK){ matrix[i][j-1]=val+1; snake(i,j-1,'L',val+1); }else{ snake(i,j,'U',val); } break; case 'U': if(i>0&&matrix[i-1][j]==BLANK){ matrix[i-1][j]=val+1; snake(i-1,j,'U',val+1); }else{ snake(i,j,'R',val); } break; case 'D': if(i+1<N&&matrix[i+1][j]==BLANK){ matrix[i+1][j]=val+1; snake(i+1,j,'D',val+1); }else{ snake(i,j,'L',val); } break; default: printf("bad direction!
"); }}int main(){ int i,j; scanf("%d",&N); while(N!=-1){ N2=N*N; for(i=0;i<N;i++){ for(j=0;j<N;j++){ matrix[i][j]=BLANK; } } matrix[0][0]=1; snake(0,0,'R',1); for(i=0;i<N;i++){ for(j=0;j<N;j++){ printf("%d",matrix[i][j]); if(j!=N-1) printf(" "); } printf("
"); } scanf("%d",&N); } return 0;}

当x=23,m=5时,if(x%m==0||(x+2)%m==0)break;这句话满足要求 而此时m!=x

代码如下。。。。加了些注释。。。。测试了。。。输入0.0005。。。结果是3.140578。。。。希望能帮到你。。。。我是在Win-tc里面测试的。。。如果你用的是VC++就把最后一句getch();去掉即可。。。。。

#include "stdio.h"
#include "conio.h"

void main(){
float pi=0;/*用于保存pi的结果*/
int n;
float pre;/*精度*/
float tmp,a,b;
int i;

printf("请输入精度 : ");/*提示用户输入精度*/
scanf("%f",&pre);

tmp = 1+1.0/3;
n=2;

while(tmp>=pre){/*当小于精度时,循环停止*/
pi +=tmp;
printf("%f\n",pi);
a=b=1;
for(i=1;i<=n;i++){
a = a*i;
b = b*(2*(i+1)-1);
}
tmp = a/b;

n++;

}

printf("pi的值为:%f",pi*2);
getch();
}


求C语言高手解题视频

相关评论:

相关主题精彩

版权声明:本网站为非赢利性站点,内容来自于网络投稿和网络,若有相关事宜,请联系管理员

Copyright © 喜物网