一道二维数组的题目简单的题目

小弟刚学C,今天正好看到一道二维数组的题目,想求教各位大侠!多谢 - C语言当前位置:& &&&小弟刚学C,今天正好看到一道二维数组的题目,想求小弟刚学C,今天正好看到一道二维数组的题目,想求教各位大侠!多谢&&网友分享于:&&浏览:1次小弟刚学C,今天正好看到一道二维数组的题目,想求教各位大侠!谢谢!题目是这样的:有一个二维数组&block[][4],在一个四行四列的框中,需要判定,
当某一行或者某一列4个字母或者斜行里4个字母全部为“a”时,表示“a&win”
当某一行或者某一列4个字母或者斜行里4个字母里有3个“a”和一个“c”时,也算“a&win”。
当某一行或者某一列4个字母或者斜行里4个字母全部为“b”时,“b&win”
当某一行或者某一列4个字母或者斜行里4个字母里有3个“b”和一个“c”时,也算“b&win”。
就是字母“c”有点万精油的意思,可以代替“a”,也可以代替“b”,但是只有有一个“c”,如果有2个“c”则不算获胜
当16个空格中有一个为“.”(表示空,没有字母),则表示“game&is&not&over”
当16个字母全部填完,且没有空,且没有满足上面任何条件,则“draw”
给了个主函数
int&caculate(char&block[][4])
return&ERROR;
小弟刚学习C,有点无从下手,求教各位大侠,能否写个程序让小弟学习下!谢谢!
------解决方案--------------------不知道楼主的具体需求,好吧,给你个思路
int&caculate(char&block[][4]){
char&awin[][4]&={
{'c','a','a','a'},
{'a','c','a','a'},
{'a','a','c','a'},
{'a','a','a','c'}
char&bwin[][4]&={
{'c','b','b','b'},
{'b','c','b','b'},
{'b','b','c','b'},;
{'b','b','b','c'}
int&i&=&0,&j&=&0;
for(i=0;i&4;i++){
int&flag&=&0;
for(j=0;j&4;j++){
if(0&==&strcmp(block[i],awin[j])){
printf("a&win\n");
for(i=0;i&4;i++){
int&flag&=&0;
for(j=0;j&4;j++){
if(0&==&strcmp(block[i],bwin[j])){
printf("b&win\n");
//检查是否结束
for(i=0;i&4;i++){
int&flag&=&0;
for(j=0;j&4;j++){
if(block[i][j]&==&'.'){
if(i&==&4&&&&j&==&4)&{
printf("game&is&over\n");
------解决方案--------------------个人喜欢用数学思想解决问题
#define&ERROR& 0
#define&TRUE 1
int&caculate(char&block[][4])
{ 共&2&页:
12345678910
12345678910
12345678910 上一篇:下一篇:文章评论相关解决方案 12345678910 Copyright & &&版权所有帮忙解决一道C语言题,很简单的!-中国学网-中国IT综合门户网站-提供健康,养生,留学,移民,创业,汽车等信息
> 信息中心 >
帮忙解决一道C语言题,很简单的!
来源:互联网 发表时间: 10:48:07 责任编辑:鲁晓倩字体:
为了帮助网友解决“帮忙解决一道C语言题,很简单的!”相关的问题,中国学网通过互联网对“帮忙解决一道C语言题,很简单的!”相关的解决方案进行了整理,用户详细问题包括:出一个不超过5的正整数.谢谢各位了,要求编一个程序求出它是几位数,例如原数字是123,然后分别输出每一位数字,按逆顺序输出各位数字,应该输出321!,具体解决方案如下:解决方案1:
存放每一位的值 int i = 0,&c);\就是c=c&#47,而不是进位)而; while ( i ) { printf(& i++,out[j]);/这里的第;& } &#47,i); int out[5];&#47.h&;每一位的余数放入out数组;n逆序为%d;//=10,最先放入的是个位.h&第%d位=%d;n&10 = 123(因为存放1234的是整型;&#47,最后放入的是万位 c&#47,i;n&quot,小数点以后都被舍去,out[i-1]);/&#47。 printf(& while ( j & int main() {
j++; printf(& #include &lt,因为1234&#47?位是从个位开始说的 } &#47,这样就能计算每一位是什么并计算有多少位了;存放输入的值 scanf(&比如1234这个数,1234/%d\#include &10 = 123余4!= 0 ) { out[i] = c%10;//; int j = 0;/%d&/stdlib:\/10;
提问者评价
谢谢了,还有楼下的那位的办法也比较后
参考资料:
解决方案2:
int i=5:&#39,str[i]!=0;b'return 0?str[i];gets(str););%c&while(i--)printf(&\int main(){char str[255]
相关文章:
最新添加资讯
24小时热门资讯
Copyright © 2004- All Rights Reserved. 中国学网 版权所有
京ICP备号-1 京公网安备02号共有 2333 人关注过本帖
标题:二维数组的一道C语言编程题
等 级:新手上路
帖 子:12
结帖率:100%
&&已结贴√
&&问题点数:10&&回复次数:8&&&
二维数组的一道C语言编程题
刚刚学习了一维数组跟二维数组,有一道题目是这样的:输入一个4x4的二维数组,并输出该数组的主对角线和次对角线上的元素,我只写出了主对角线上的代码,次对角线上的不知道怎么下手,请大神指教。谢谢。
#include&stdio.h&
void main()
&&& int a[4][4],i,j;
&&& for(i=0;i&4;i++)
&&&&&&&&for(j=0;j&3;j++)
&&&&&&&&&&&&scanf(&%d&,&a[i][j]);
&&& for(i=0;i&4;i++)
&&&&&&&&printf(&%d&,a[i][j]);
[ 本帖最后由 p0d2g 于
21:27 编辑 ]
搜索更多相关主题的帖子:
来 自:迪拜
等 级:蝙蝠侠
帖 子:223
专家分:856
&&得分:10&
回复 楼主 p0d2g
程序代码:#include&stdio.h&
void main()
&&& int a[<font color=#][<font color=#],i,j;
&&& printf(&请输入各元素值:\n&);
&&& for(i=<font color=#;i&<font color=#;i++)
&&&&&&&&for(j=<font color=#;j&<font color=#;j++)
&&&&&&&&&&&&scanf(&%d&,&a[i][j]);
&&&&&&&&printf(&主对角线元素为:\n&);
&&& for(i=<font color=# , j = <font color=# ;i&<font color=# && j & <font color=# ; i++ , j++)
&&&&&&&&printf(&%d &,a[i][j]);
&&& printf(&\n&);
&&& printf(&副对角线元素为:\n&);
&&& for(i = <font color=# , j = <font color=# ; i & <font color=# &&j &= <font color=# ; i++ , j--)
&&&&&&&&printf(&%d & , a[i][j]);
练就一身本领,只为笑傲江湖!
等 级:新手上路
帖 子:12
回复 2楼 笑傲
谢谢大神指教,还有一个不情之请,能帮我讲解下这一段代码是什么意思吗?
for(i=0 , j = 0 ;i&4 && j & 4 ; i++ , j++)
&&&&&&&&printf(&%d &,a[i][j]);
&&& printf(&\n&);
&&& printf(&副对角线元素为:\n&);
&&& for(i = 0 , j = 3 ; i & 4 &&j &= 0 ; i++ , j--)
&&&&&&&&printf(&%d & , a[i][j]);
来 自:盐城
等 级:侠之大者
帖 子:176
专家分:454
回复 3楼 p0d2g
这个很明显的,你的自己去领悟…………………………
等 级:新手上路
帖 子:12
回复 4楼 yctchxf
嗯嗯,回复帖子后我仔细看了下,明白了,谢谢指教。
等 级:论坛游民
帖 子:28
专家分:23
for(i = 0 , j = 3 ; i & 4 &&j &= 0 ; i++ , j--)// 相当于for(i=0;i&4;i++)
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&for(j=3;j&=0;j--)
等 级:侠之大者
帖 子:216
专家分:408
回复 6楼 业余爱好者
你这个等价是错误的,二重循环会输出所有元素
等 级:论坛游民
帖 子:33
专家分:10
我还不知道for可以这样用,见识到了。
来 自:Asia
等 级:贵宾
威 望:10
帖 子:1231
专家分:3855
因为我是菜鸟,所以应该被骂!
细节+坚持=成功!
版权所有,并保留所有权利。
Powered by , Processed in 0.073940 second(s), 8 queries.
Copyright&, BCCN.NET, All Rights Reserved面试题 C语言经典面试题:判断一个二维数组中是否包含给定的数字 - 为程序员服务
为程序员服务
C语言经典面试题:判断一个二维数组中是否包含给定的数字
#include &iostream&
#define N 1024
int a[N][N]={{1,2,8,9},{2,4,9,12},{4,7,10,13},{6,8,11,15}};
int main(int argc,char *argv[])
int m = 4,n = 4,t = 6,r,c;
c = n - 1;
bool find =
while((r & m) && (c &= 0))
if(t == a[r][c])
if(t & a[r][c])
printf(&%d:&,a[r][c]);
puts(find?&存在&:&不存在&);
您可能的代码
相关聚客文章
相关专栏文章以下试题来自:
问答题编程题(20分)
试定义一个类Array,将4行5列二维数组的各列前3个元素依次拼接成一个整数,再将该整数赋值给相应列的最后一个元素。例如,
(1)私有数据成员:
int a[4][5];
(2)公有成员函数。
Array(int b[][5],int n):构造函数,用二维数组b初始化数组a,参数n表示数组b的行数。
void val(int j):将成员数组a第j列的前3个元素依次拼接成一个整数赋值给第4个元素。
void fun():利用成员函数vaLl()依次处理数组a的各列,完成题目的要求。
void print():按矩阵形式打印数组a。
(3)在主函数中完成对该类的测试。
处理后的数组:
源程序文件名必须为myfb.cpp,并放在T盘根目录下,供阅卷用。 参考答案
class Array{
int a[D][E];
Array(int b[][E],int n)
为您推荐的考试题库
你可能感兴趣的试题
1.问答题 参考答案
unsigned len=strlen(str);
str改为substr
改为i>=len
char p=find(str,substr);
热门相关试卷
最新相关试卷}

我要回帖

更多关于 java 二维数组 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信