C语言 程序改写

来源:百度知道 编辑:UC知道 时间:2024/06/04 17:07:43
#include<stdio.h>
#include<math.h>

main(){
char Gsin[20][180];
int i,j,k=0,jj=0;
double a;

for(i=0;i<20;i++){
for(j=0;j<180;j++) Gsin[i][j]=' ';}

for(i=0;i<400;i+=5){
a=i*3.141592 / 180;
j=(int)(sin(a)*10);
jj= j+10; if (jj > 19) jj=19;
else if (jj <0) jj=0;
Gsin[jj][k]='*';
k++;
}

for(i=19;i>=0;i--){
printf("|");
for(j=0;j<74;j++) {
if (i==10 && Gsin[i][j] == ' ') printf("-");
else printf("%c",Gsin[i][j]);}
printf("\n");}

// cos
printf("\n\ncos graph\n");
jj=0;k=0;
for(i=0;i<20;i++){
for(j=0;j<180;j++) Gsin[i][j]=' ';}

for(i=0;i<400;i+=5){ a=i*3.141592 / 180;
j=(int)(cos(a)*10);
if (j < 0)
jj= j+10;
if (jj > 19) jj=19;
else if (jj <0) jj

我觉得执行sin和cos这两项操作可以写成一个函数,而参数值就可以写成二维指针的形式
可以看出不管是执行sin还是cos操作基本相似,可以给函数传第一个bool值,布尔值为真执行sin 为假 执行cos,
这个程序貌似是绘画某种有规律的图案吧。
void paint(char gsin[][],bool check)
{
}
main()
{
字段定义;
函数声明;
check=true;
paint(gsin,check);
check=false;
paint(gcos,check);
}