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,貌似矩阵还要学明白。
大概吧。
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语言二维数组赋值后输出某一行的主要内容,如果未能解决你的问题,请参考以下文章