如何用C语言绘出一个围棋盘?

Python026

如何用C语言绘出一个围棋盘?,第1张

--

以怎么不用 MS VC++6 ??

编C语言一般都用啊

还有\xCD是C语言

Ascii代码 表示一个图形

用循环语句啊!

等我一下 晚上写出来 贴上哦

晚上10:00 上完课回来

呵呵 分给不给 随便 你的问题让我熟练了许多

分不重要了

我终于写出来了

调试了30分钟啊!

纯粹的循环 + 判断

-- 我就这点水平了 算法可能不好

如果有更好的告诉我 上QQ 或发百度消息给我

百度的显示有问题 最好

用源代码格式化工具格式化一下 百度有搜

#include <stdio.h>

void main()

{

int n,m,x,y,temp,j=0,i=0

printf("输入棋盘的横格数,竖格数:\n")

scanf("%d,%d",&x,&y)

printf("%d,%d\n",x,y)

n=2*x+1

m=2*y+1

printf("%d,%d\n",n,m)

while(j<m)

{

j++

temp=j%2

i=0

if(j==1)

{

while(i<n)

{

i++

if(i==1)

{

printf("\xC9")

continue

}

if(n==i)

{

printf("\xBB\n")

continue

}

if(i%2!=0)

{

printf("\xCB")

continue

}

if(i%2==0)

{

printf("\xCD\xCD\xCD")

continue

}

}

continue

}

if(m==j)

{

while(i<n)

{

i++

if(i==1)

{

printf("\xC8")

continue

}

if(n==i)

{

printf("\xBC\n")

continue

}

if(i%2!=0)

{

printf("\xCA")

continue

}

if(i%2==0)

{

printf("\xCD\xCD\xCD")

continue

}

}

continue

}

if(temp==0)

{

while(i<n)

{

i++

if(i%2!=0)

{

printf("\xBA")

if(n==i)printf("\n")

continue

}

if(i%2==0)

{

printf(" ")

continue

}

}

continue

}

if(temp!=0&&j!=1)

{

while(i<n)

{

i++

if(i==1)

{

printf("\xCC")

continue

}

if(n==i)

{

printf("\xB9\n")

continue

}

if(i%2!=0)

{

printf("\xCE")

continue

}

if(i%2==0)

{

printf("\xCD\xCD\xCD")

continue

}

}

continue

}

}

}

100%编译通过

可以画出任意大小的棋盘

如 5*3 5*5

只要你的屏幕能够显示

以上是用图像库画的棋盘

下面是用 __ 和 |

画的棋盘 其实很简单 替换一下就可以了

#include <stdio.h>

void main()

{

int n,m,x,y,temp,j=0,i=0

printf("输入棋盘的横格数,竖格数:\n")

scanf("%d,%d",&x,&y)

printf("%d,%d\n",x,y)

n=2*x+1

m=2*y+1

printf("%d,%d\n",n,m)

while(j<m)

{

j++

temp=j%2

i=0

if(j==1)

{

while(i<n)

{

i++

if(i==1)

{

printf("__")

continue

}

if(n==i)

{

printf("__\n")

continue

}

if(i%2!=0)

{

printf("__")

continue

}

if(i%2==0)

{

printf("__")

continue

}

}

continue

}

if(m==j)

{

while(i<n)

{

i++

if(i==1)

{

printf("__")

continue

}

if(n==i)

{

printf("__\n")

continue

}

if(i%2!=0)

{

printf("__")

continue

}

if(i%2==0)

{

printf("__")

continue

}

}

continue

}

if(temp==0)

{

while(i<n)

{

i++

if(i%2!=0)

{

printf("|")

if(n==i)printf("\n")

continue

}

if(i%2==0)

{

printf("")

continue

}

}

continue

}

if(temp!=0&&j!=1)

{

while(i<n)

{

i++

if(i==1)

{

printf("__")

continue

}

if(n==i)

{

printf("__\n")

continue

}

if(i%2!=0)

{

printf("__")

continue

}

if(i%2==0)

{

printf("__")

continue

}

}

continue

}

}

}

typedef unsigned char BYTE 的意思 就是在这个说明以后就可以在程序中用BYTE 代替unsigned char了,这只是为了编写代码的方便而已!BYTE在这里还是一个类型,并不是一个变量,里面没有存储东西。你可以 BTYE ar=‘a’,这时候变量ar中存储的就是字符a,你输出变量ar的值的话,取决于什么样的语言。在c语言中输出可以字符或者是与这个字符等价的整数。 在C/C++中char 表示一个字符变量,占8位,但是可以解释为int型的整数。 unsigned char表示 0~255 的整数或者对应的字符,例如‘A’等价于65(十进制),而char表示的范围位-128~127,意义同上。

做个测试,希望有所帮助。代码#include <stdio.h>/*原题是这样的;一个百万富翁遇到一个陌生人(韦伯),陌生人找他谈了一个换钱计划,

该计划如下:我每天给你十万元,而你第一天只需给我一分钱,第二天我给你十万元,你给我两分钱,

第三天我仍给你十万元,而你给我四分钱。。。你们天给我的钱是前一天的两倍。

请编写一个程序计算第几天富翁给陌生人的钱超过或等于陌生人给自己的钱(10万元)*/int main()

{

long double money_all = 100000-0.1

long double money_init = 0.1

int days = 1

while(money_all >= 0)

{

money_init = money_init * 2

money_all = money_all + 100000 - money_init

days++

} printf("\n共需要%d天,富翁给陌生人的钱超过或等于陌生人给自己的钱\n", days)getchar()

return 0

} 结果