算法提高 9-1九宫格  
时间限制:1.0s   内存限制:256.0MB
    
问题描述
  九宫格。输入1-9这9个数字的一种任意排序,构成3*3二维数组。如果每行、每列以及对角线之和都相等,打印1。否则打印0。
样例输出
与上面的样例输入对应的输出。
例:
数据规模和约定
  输入1-9这9个数字的一种任意排序。
方案一: 
 #include<stdio.h>
int main(){
/*定义二维数组,并赋初值为0*/
int a[][];
/*录入A[m][s]*/
for(int i=;i<;i++){
for(int j=;j<;j++){
scanf("%d",&a[i][j]);
}
}
// /*打印A[m][s]*/
// for(int i=0;i<3;i++){
// for(int j=0;j<3;j++){
// printf("%d ",a[i][j]);
// }
// printf("\n");
// }
int row1=,row2=,row3=,pol1=,pol2=,pol3=,Xie1=,Xie2=;
row1 = a[][]+a[][]+a[][];
row2 = a[][]+a[][]+a[][];
row3 = a[][]+a[][]+a[][]; pol1 = a[][]+a[][]+a[][];
pol2 = a[][]+a[][]+a[][];
pol3 = a[][]+a[][]+a[][]; Xie1 = a[][]+a[][]+a[][];
Xie2 = a[][]+a[][]+a[][];
// printf("%d, %d, %d, %d, %d, %d, %d, %d\n",row1,row2,row3,pol1,pol2,pol3,Xie1,Xie2);
for(int i=;i<;i++){
if(row1 == row2 == row3 == pol1 == pol2 == pol3 == Xie1 == Xie2){
printf("");
break;
}else{
printf("");
break;
}
}
}

方案二:

 #include<stdio.h>
int main(){
int sum=,k=;
int s[]={};//结果数组,并赋初值为0
/*定义二维数组*/
int a[][];
int i,j;
/*录入A[m][s]*/
for(i=;i<;i++){
sum=;//每输入一行时sum置为0
for(j=;j<;j++){
scanf("%d",&a[i][j]);
sum = sum+a[i][j];
}
s[k++] = sum;//每行的和 ,这个比较好理解
} for(sum=,i=;i<;i++){
sum=;
for(j=;j<;j++){
sum+=a[j][i];
}
s[k++] = sum;//每列的和 ,联想矩阵转置,也好理解
} for(sum=,i=;i<;i++)
sum+=a[i][i];
s[k++] = sum;//主对角线元素和 s[k++] = a[][]+a[][]+a[][];//副对角线元素和 //类似于选择排序的遍历
bool flag=true;
for(i=;i<k-;i++){
for(j=i+;j<k;j++){
if(s[i] != s[j]){
flag=false;//不相等则flag为假
}
}
}
if(flag)//若flag真
printf("");
else
printf("");
return ;
}
 

C语言 · 9-1九宫格的更多相关文章

  1. C语言:九宫格改进

    #include <stdio.h> /* 如下排列表示 A00 A01 A02 A10 A11 A12 A20 A21 A22 */ unsigned char array[3][3] ...

  2. C语言:九宫格

    #include <stdio.h> /* 如下排列表示 A00 A01 A02 A10 A11 A12 A20 A21 A22 */ int main() { unsigned char ...

  3. Swift 简简单单实现手机九宫格手势密码解锁

    原文:Swift 简简单单实现手机九宫格手势密码解锁 大家可以看到我之前的文章[HTML5 Canvas简简单单实现手机九宫格手势密码解锁] 本文是使用苹果语言对其进行了移植 颜色配色是拾取的支付宝的 ...

  4. 算法笔记_199:第二届蓝桥杯软件类决赛真题(C语言本科)

    前言:以下代码部分仅供参考,C语言解答部分全部来自网友,Java语言部分部分参考自网友,对于答案的正确性不能完全保证. 试题1 数论中有著名的四方定理:所有自然数至多只要用四个数的平方和就可以表示. ...

  5. C/C++编程笔记:C语言打造中国象棋游戏,项目源代码分享!

    中国象棋是起源于中国的一种棋,属于二人对抗性游戏的一种,在中国有着悠久的历史.由于用具简单,趣味性强,成为流行极为广泛的棋艺活动. 它是中国棋文化,也是中华民族的文化瑰宝,它源远流长,趣味浓厚,基本规 ...

  6. 好你个C语言,原来还有这么多副面孔!

    C语言可以这样比喻,是一门非常强大的内功心法,学会它可以做到一法通万法.这也是它至今不衰的原因.说了这么多C语言的优点,现在来说说它的缺点.C语言最大的优点也是它最大的缺点,拥有强大的力量时应时刻保持 ...

  7. C语言 · 高精度加法

    问题描述 输入两个整数a和b,输出这两个整数的和.a和b都不超过100位. 算法描述 由于a和b都比较大,所以不能直接使用语言中的标准数据类型来存储.对于这种问题,一般使用数组来处理. 定义一个数组A ...

  8. Windows server 2012 添加中文语言包(英文转为中文)(离线)

    Windows server 2012 添加中文语言包(英文转为中文)(离线) 相关资料: 公司环境:亚马孙aws虚拟机 英文版Windows2012 中文SQL Server2012安装包,需要安装 ...

  9. iOS开发系列--Swift语言

    概述 Swift是苹果2014年推出的全新的编程语言,它继承了C语言.ObjC的特性,且克服了C语言的兼容性问题.Swift发展过程中不仅保留了ObjC很多语法特性,它也借鉴了多种现代化语言的特点,在 ...

随机推荐

  1. HDUOJ----1114(多重背包)悼念512汶川大地震遇难同胞——珍惜现在,感恩生活

    悼念512汶川大地震遇难同胞——珍惜现在,感恩生活 Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Jav ...

  2. HDUOJ---1102Constructing Roads

    Constructing Roads Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Other ...

  3. HDUOJ---A + B Again

    A + B Again Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total ...

  4. 【LeetCode】51. N-Queens

    N-Queens The n-queens puzzle is the problem of placing n queens on an n×n chessboard such that no tw ...

  5. Android——点击对话框上按钮不关闭对话框

    有时候我没可能需要在点击按钮进行一些检测,但是并不想关闭次对话框(系统默认点击任何一个按钮则关闭对话框),处理方法如下:在点击事件下添加如下代码: try { Field field = dialog ...

  6. 【js】批量判断表单中的文本框非空

    方法一: <script type=”text/javascript”> /* * 批量验证表单非空 * 需要非空验证控件的样式class=”mustadd” */ $(".mu ...

  7. shell 基本学习

    1)查看当前shell echo $SHELL 2)查看兼容shell more /etc/shells 3) 脚本第一行 #!/bin/bash 4) 变量(变量名称的开头是一个字母或下划线符号,后 ...

  8. [ASP.NET]HttpCookieCollection to CookieCollection的最简单方法

    http://www.cnblogs.com/dudu/archive/2012/12/06/httpcookiecollection-to-cookiecollection.html

  9. DBA_实践指南系列2_Oracle Erp R12系统安装配置设定Setup(案例)

    2013-12-02 Created By BaoXinjian

  10. Linux内核同步 - Read/Write spin lock

    一.为何会有rw spin lock? 在有了强大的spin lock之后,为何还会有rw spin lock呢?无他,仅仅是为了增加内核的并发,从而增加性能而已.spin lock严格的限制只有一个 ...