C语言二维数组赋值后输出某一行

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C语言二维数组赋值后输出某一行相关的知识,希望对你有一定的参考价值。

#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<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,貌似矩阵还要学明白。
大概吧。

参考技术A 打印换行试试看。
void Display()

int i;
for(i=0;i<17;++i)

puts(board[i]);
printf(\n);//换行

参考技术B 没有加结束符吧?
board[i][17]=0
加上去试试

C语言 二维数组有没有默认初值?多少?

这是没有的,没有默认值,如果你想要数组中所有的值都默认成为0的话,只需在定义数组时这样写:int num[2][2]=0;这样数组里面所有的值都被设成0了,如果想要它成为其他值,则需要配合循环结构或者直接赋值,比如:int num[2][2]=1,1,1,1;如果数组里的元素过多,则建议使用循环结构:
int num[5][5],i,j;
for(i=0;i<5;i++)

for(j=0;j<5;j++)

num[i][j]=1;


希望对你有所帮助!
参考技术A

1、一般来说在main前定义的数组默认值都为0。如果想要在函数内定义数组中所有的值都默认成为0的话,只需在定义数组时这样写:int num[2][2]=0;这样数组里面所有的值都被设成0了,如果想要它成为其他值,则需要配合循环结构或者直接赋值,比如:int num[2][2]=1,1,1,1;如果数组里的元素过多,则建议使用循环结构。

2、例程:

int num[5][5],i,j;
for(i=0;i<5;i++)

for(j=0;j<5;j++)

num[i][j]=1;

参考技术B 有的有默认值0,有的是一个未知值。由编译环境决定 参考技术C C语言是不负责初始化空间的,所以定义了一个数组,开始里面都是随机值。 参考技术D 0

以上是关于C语言二维数组赋值后输出某一行的主要内容,如果未能解决你的问题,请参考以下文章

c语言中怎样实现对二维数组元素进行赋值并输出。

c语言二维数组 赋值

C语言 如何将一个二维数组的值全部替换成另一个二维数组

c语言二维数组里的数据如何让两行字符转换为一行字符

VC中如何将一个二维数组的值赋给另一个二维数组?只能用一行。

c语言有关二维数组变量初始化