❶ c语言问题,打出空心三角形
没法打啊,奇数和偶数情况不一样
❷ c语言打空心直角三角形如图,但我不要第三行的第二个*和第四行的第二、第三个*,也就是要空心的。
#include <stdio.h>
void main()
{
int i,j,n=5;
for(i=1;i<=n;i++)
{for(j=1;j<=i;j++)
if((i==3 && j==2) || (i==4 && (j==2 || j==3)))
printf(" ");
else
printf("* ");
printf("\n");
}
}
❸ c语言如何画空心三角形 边长由键盘输入求大神帮助
三角形#include<stdio.h> main() { int i,j,a; scanf("%d",&a); for(i=0;i<=a;i++) { for(j=0;j<=2*a;j++) { if(i==a) printf("* "); else if(j==a+i||j==a-i) printf("* "); else printf(" "); } printf("\n"); } }
❹ 用c语言输出空心三角形怎么编程啊
我帮你改了一下,可以输出空心三角形了。 #include<stdio.h> void main() { int a,b,c,n,m; scanf("%d",&n); if(n%2!=0) { for(a=1;a<=19;a++) printf(" "); printf("*"); printf("\n"); for(a=2;a<=n-1;a++) { for(c=1;c<=20-a;c++) printf(" "); printf("*"); for(m=0;m<=2*a-4;m++) printf(" "); printf("*"); printf("\n"); } if(a=n) { for(c=1;c<=20-a;c++) printf(" "); for(b=1;b<=2*a-1;b++) printf("*"); printf("\n"); } } else printf("error\n"); }
求采纳
❺ 急!!!C语言如何打出空心底朝右的等腰三角形如图
#include<stdio.h>
intmain(){
inti,j,n;
scanf("%d",&n);
if(n%2==0||n<3)
printf(" 输入有误!");
else{
for(i=(n-1)/2;i>=(1-n)/2;i--){
printf(" ");
for(j=0;j<=(n-1)/2;j++)
if(j==(n-1)/2||j==(i<0?-i:i))
printf("*");
elseprintf("");
}
}
return0;
}
//运行示例:
❻ c程序设计;如何设计空心三角形(用for循环)
假如是n列的,可以构一个 n*2n-1的数组,所有 a[i][n-1-i] 和 a[i][n-1+i]的都是 “*”号,另外,对于
a[n-1][0... n-1]都为*,就可以打出一个空心的三角形哈哈
❼ 求用c语言输入空心正三角形,感谢了
//希望我的回答对你的学习有帮助
#include<stdio.h>
intmain()
{
intside;
while(1)
{
scanf("%d",&side);
if(side==0)break; //边长为0,结束程序
for(inti=0;i<side-1;i++)
{
for(intj=1;j<=side*2;j++)
{
if(j==side+i||j==side-i)printf("*");
elseprintf("");
}
printf(" ");
}
for(intj=1;j<=side*2;j++) //最后一行特殊处理
{
if(j%2!=0)printf("*");
elseprintf("");
}
printf(" ");
}
return0;
}
❽ C语言打印空心等腰三角形
拿去交差吧。~!完美。
#include<stdio.h>
int main()
{
int i,j,n;
scanf("%d",&n);
for(i=1;i<n;i++) {
for(j=1;j<=i-1+n;j++)
if(j==n-i+1||j==n+i-1)
printf("*");
else printf(" ");
printf("\n");}
for(i=1;i<=2*n-1;i++)
printf("*");
}
❾ c语言,空心三角形。
我把你的代码拷到vs2010里正常啊。。。不知道你那里为啥有问题
❿ c语言 空心三角形
好久没写C代码了,敲着试试,以下代码没经过调试,纯手工写的,如有bug自己调试,要学编程还是得多敲代码,这里提供思路:可以把打印的部分划分成三部分,左边和右边的空格是一样多的,主要是中间的打印,它是以一个字符开头和结尾的中间全是空格(除了第一行和最后一行),所以也是主要是找行数和这些空格数的关系。
char ch;
int height;
int row;
int left;
int mid;
while((ch=getchar())!='@')
{
height = getchar() - '0';//读取到的字符数字转成数字
if(height==-1)
break;
row=1;
while(row <= height)
{
//打印左半部分
for(left=0;left<height-row;left++){
printf(" ");
}
//打印中间部分
printf("%c",ch);
if(row==height){
for(mid=1;mid<=2*(row-1)-1;mid++)
{
printf("%c",ch);
}
}else{
for(mid=1;mid<=2*(row-1)-1;mid++)
{
printf(" ");
}
}
if(row!=1){
printf("%c",ch);
}
//打印右半部分
for(left=0;left<height-row;left++){
printf(" ");
}
row++;
}
printf("\n");
getchar();//吸收回车
}