1、用星号打印各种图形及参考答案【4.4】输入 n 值,输出如图所示矩形。【4.5】输入 n 值,输出如图所示平行四边形。【4.6】输入 n 值,输出如图所示高为 n 的等腰三角形。【4.7】输入 n 值,输出如图所示高为 n 的等腰三角形。【4.8】输入 n 值,输出如图所示高和上底均为 n 的等腰梯形。【4.9】输入 n 值,输出如图所示高和上底均为 n 的等腰空心梯形。【4.10】输入 n 值,输出如图所示边长为 n 的空心正六边型。【4.11】输入 n 值,输出如图所示图形。【4.12】输入 n 值,输出如图所示图形。【4.13】输入 n 值,输出如图所示图形。【4.14】输入 n 值,输
2、出如图所示图形。【4.15】输入 n 值,输出如图所示图形。【4.16】输入 n 值,输出如图所示图形。 (例为 n=6 时)【4.17】编写程序,输出如图所示 sin(x) 函数 0 到 2 的图形。【4.18】编写程序,在屏幕上输出一个由*号围成的空心圆。【4.19】编写程序,在屏幕上绘制如图余弦曲线和直线。若屏幕的横向为 x 轴,纵向为 y 轴, 在屏幕上显示 0360 度的 cos(x)曲线与直线 x=f(y)=45*(y-1)+31 的迭加图形。其中 cos 图形用“*“表示,f(y)用“+“表示,在两个图形的交点处则用 f(y)图形的符号。【4.4】分析:打印此图形用两重循环实现。
3、图形要重复 n 行,故采用循环结构实现循环 n 次,循环体内部打印一行* 号,把上述思路表示为:for(i=1;in-i+1 & (i=1|i=n) printf(“*“);else printf(“ “);printf(“*n“);【4.10】分析:此图形可以理解为两个空心梯形反向连接而成,因此可以利用上题的思路进行输出。参考答案:main( ) int i,j,n;printf(“nPlease Enter n:“);scanf(“%d“,&n);for(i=1;in-i+1 & i=1) printf(“*“);else printf(“ “);printf(“*n“);for(i=1;
4、ii+1 & i=n-1) printf(“*“);else printf(“ “);printf(“*n“);【4.12】参考答案:main( ) int i,j,n;printf(“nPlease Enter n:“);scanf(“%d“,&n);for(i=1;in-i) printf(“*“);else printf(“ “);printf(“n“);for(i=1;ii) printf(“*“);else printf(“ “);printf(“n“);【4.16】参考答案:main( ) int i,j,n;printf(“nPlease Enter n: “);scanf(“%d“,&n);for(i=1;imain( ) double x;int y,i,yy;for(i=1;iy ? 40 : y; /* 下一行要打印的字符总数 */for (i=1;imain( ) double y;int x,m;for(y=10;y=-10;y-) /* 圆的半径为 10 */ m = 2.5 * sqrt(100-y*y); /* 计算行 y 对应的列坐标 m */for(x=1;x#include main( ) double y;int x, m, n, yy;for( yy=0;yy=20;yy+) y = 0.1*yy;