C_使用二维数组作出矩阵图
源码:
# include <stdio.h>
int main()
{
int array[16][16];
int i, j, k, m, n;
/* 变量初始化 */
m = 1;
while(m == 1)
{
printf("请输入n(0<n<=15且为奇数):");
scanf("%d", &n);
/* 判断n是否是大于0小于等于15的奇数 */
if((n!=0) && (n<=15) && (n%2!=0))
{
printf("矩阵阶数是 %d\n", n);
m = 0; // 制造循环输入机制,直到输入正确方可退出循环
}
}
/* 数组赋初值为0 */
for(i=1; i<=n; i++)
for(j=1; j<=n; j++)
array[i][j] = 0;
/* 建立魔方阵 */
j = n/2 + 1;
array[1][j] = 1; // 将首行正中间元素设置为1
/* 此时i与j都等于n */
for(k=2; k<=n*n; k++)
{
i = i - 1; // 回到上一行
j = j + 1; // 去往下一列
if((i<1) && (j>n)) // 若是行到达首行且列到达尾列,前进两行,退一列
{
i = i + 2;
j = j - 1;
}
&nb
相关文档:
昨天一个同学和我谈起他在测试C程序时时发现使用-1为下标来访问数组,gcc并没有报错,而且能够运行成功,这个以前我还没试过,处于好奇,今天下午抽了点时间看了一下。
下面是我使用的测试代码,运行环境是DEV-C++4.9.9.2,编译器使用的是gcc。
&nb ......
源码:
# include <stdio.h>
int main()
{
/* 定义字符型变量,并给它们付初值 */
char c1, c2, c3, c4, c5, c6, c7;
c1 = 'C';
c2 = 'h';
c3 = 'i';
c4 = 'n';
& ......
源码:
# include <math.h>
# include <stdio.h> /* 数学函数库 */
int main()
{
/* 用s表示多项式的值,用t表示每一项的值 */
double s, t, x; // 此处用双精度声明变量
int n;
printf ......