C语言二维数组赋值后输出某一行
#include<stdio.h>#include<stdlib.h>#include<string.h>charboard[17][18];voidResetTheBo...
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
char board[17][18];
void ResetTheBoard();
void Display();
int main()
{
ResetTheBoard();
Display();
return 0;
}
void ResetTheBoard()
{
int i;
for(i=0;i<17;++i)
{
strcpy(board[i],"。。。。。。。。。。。。。。。。。");//这里我加过“\0”结果一样
}
}
void Display()
{
int i;
for(i=0;i<17;++i)
{
puts(board[i]);
}
}
本来想输出的是17X17的“。” 的 但是却把后面的全输出了 展开
#include <stdlib.h>
#include <string.h>
char board[17][18];
void ResetTheBoard();
void Display();
int main()
{
ResetTheBoard();
Display();
return 0;
}
void ResetTheBoard()
{
int i;
for(i=0;i<17;++i)
{
strcpy(board[i],"。。。。。。。。。。。。。。。。。");//这里我加过“\0”结果一样
}
}
void Display()
{
int i;
for(i=0;i<17;++i)
{
puts(board[i]);
}
}
本来想输出的是17X17的“。” 的 但是却把后面的全输出了 展开
3个回答
展开全部
对不起,在我的机器上也是这个问题。大概在“。。。。。。。”这个地方出现问题,我的句号超过八个就会莫名其妙输出很多的“。”。
不知道你是想要练习数组函数还是想弄界面。
这里是我刚写的一个输出小程序,不过没有用到数组函数,数组的大小也不是动态的。水平有限,抱歉啊。
#include<iostream>
using namespace std;
void a();
int max1=1;
int max2=1;
char q='+';
char w[17][17];
void main()
{
cout<<"请输入数组横纵限制"<<endl;
a: cout<<"请输入数组纵坐标(1--17)"<<endl;
cin>>max1;
if(max1>17||max1<=0)
{
cout<<"坐标超界"<<endl;
goto a;
}
b: cout<<"请输入数组横坐标(1--17)"<<endl;
cin>>max2;
if(max2>17||max2<=0)
{ cout<<"坐标超界"<<endl;
goto b;
}
cout<<"请输入输出的符号。"<<endl;
cin>>q;
a();
}
void a()
{
int i=0;
int j=0;
for( j=0;j<max1;j++)
{
for( i=0;i<max2;i++)
{
w[i][j]=q;
}
}
for( j=0;j<max1;j++)
{
for( i=0;i<max2;i++)
{
cout<<w[i][j]<<" ";
}
cout<<endl;
}
}
不知道你是想要练习数组函数还是想弄界面。
这里是我刚写的一个输出小程序,不过没有用到数组函数,数组的大小也不是动态的。水平有限,抱歉啊。
#include<iostream>
using namespace std;
void a();
int max1=1;
int max2=1;
char q='+';
char w[17][17];
void main()
{
cout<<"请输入数组横纵限制"<<endl;
a: cout<<"请输入数组纵坐标(1--17)"<<endl;
cin>>max1;
if(max1>17||max1<=0)
{
cout<<"坐标超界"<<endl;
goto a;
}
b: cout<<"请输入数组横坐标(1--17)"<<endl;
cin>>max2;
if(max2>17||max2<=0)
{ cout<<"坐标超界"<<endl;
goto b;
}
cout<<"请输入输出的符号。"<<endl;
cin>>q;
a();
}
void a()
{
int i=0;
int j=0;
for( j=0;j<max1;j++)
{
for( i=0;i<max2;i++)
{
w[i][j]=q;
}
}
for( j=0;j<max1;j++)
{
for( i=0;i<max2;i++)
{
cout<<w[i][j]<<" ";
}
cout<<endl;
}
}
追问
你了解图形界面怎么弄吗? 我想慢慢来学
追答
我也是个新手,据我所知,弄界面需要win32或者mfc的编程,这些都是基于c或者c++的。可以试试看。
然后有一些库可以支持界面,我最近在用DarkGDK的库,可以做最简单的游戏,有界面。
高端3D游戏至少要学dx,貌似矩阵还要学明白。
大概吧。
展开全部
打印换行试试看。
void Display()
{
int i;
for(i=0;i<17;++i)
{
puts(board[i]);
printf(\n);//换行
}
}
void Display()
{
int i;
for(i=0;i<17;++i)
{
puts(board[i]);
printf(\n);//换行
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
没有加结束符吧?
board[i][17]=0
加上去试试
board[i][17]=0
加上去试试
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询