打印直线f(x)=45*(y-1)+31//怎么改呀
- C/C++ code
#include<stdio.h>int main(){ double y; int x,m,n,yy; for(yy=0;yy<=20;yy++) { y=0.1*yy; /*y:屏幕行方向坐标*/ n=45*(y-1)+31; /*n: 直线上y点对应的列坐标*/ for(x=0;x<=62;x++) /*x: 屏幕列方向坐标*/ if(x==n) printf("+"); /*打印不相交时的直线图形*/ printf("\n"); } return 0;}
[解决办法]
楼主的标题是错误的,应该是f(x)=45*(x-1)+31,而45*(y-1)+31和x一点关系都没有,怎么能说是x的函数呢?
要么写成y = 45 * (x - 1) + 31也可以。
不过这条直线的斜率太大,用字符的方式画显然不好了。
其次,用字符方式来画的话,没有在你的程序中看到类似printf(' ');这样的代码,也就是说在‘+’前面是否应该画一个空格呢?这说明可能是有问题的。