标签:编程 c 计算机 微软 visual stduio vs2013 c语言 c++
#include<stdio.h>
/*
两种方式实现生成一个10*10的方阵,然后输出此方阵对角线上元素之和。
*/
#define N 10
void doubleFor();
void main()
{
doubleFor();
}
//双重for循环,二位数组的方式实现
void doubleFor()
{
int num[N][N];
for (int a = 0; a < N; a++)
{
for (int b = 0; b < N; b++)
{
num[a][b] = N*a + b + 1;
printf("%-5d", num[a][b]);
}
printf("\n");
}
//对角线的和
int sum = 0;
for (int i = 0; i < N; i++)
{
sum += num[i][i]; //对角线,正好是a=b时
}
printf("\n对角线的和为:%d", sum);
system("pause");
}
运行结果
第二种方式:
#include<stdio.h>
/*
两种方式实现生成一个10*10的方阵,然后输出此方阵对角线上元素之和。
*/
#define N 10
void oneFor();
void main()
{
oneFor();
}
//双重for循环,二位数组的方式实现
void doubleFor()
{
int num[N][N];
for (int a = 0; a < N; a++)
{
for (int b = 0; b < N; b++)
{
num[a][b] = N*a + b + 1;
printf("%-5d", num[a][b]);
}
printf("\n");
}
//对角线的和
int sum = 0;
for (int i = 0; i < N; i++)
{
sum += num[i][i]; //对角线,正好是a=b时
}
printf("\n对角线的和为:%d", sum);
system("pause");
}
运行结果
#include<stdio.h>
/*
两种方式实现生成一个10*10的方阵,然后输出此方阵对角线上元素之和。
*/
#define N 10
void doubleFor();
void oneFor();
void main()
{
doubleFor();
oneFor();
}
//双重for循环,二位数组的方式实现
void doubleFor()
{
int num[N][N];
for (int a = 0; a < N; a++)
{
for (int b = 0; b < N; b++)
{
num[a][b] = N*a + b + 1;
printf("%-5d", num[a][b]);
}
printf("\n");
}
//对角线的和
int sum = 0;
for (int i = 0; i < N; i++)
{
sum += num[i][i]; //对角线,正好是a=b时
}
printf("\n对角线的和为:%d", sum);
system("pause");
}
//用单循环实现
void oneFor()
{
int num[N][N];
int a = 0;
for (int i = 0; i < N*N; i++)
{
num[i / N][i%N] = ++a;
printf("%-5d",num[i/N][i%N]);
if ((i+1)%N == 0) //每N个换行
{
printf("\n");
}
}
system("pause");
}
标签:编程 c 计算机 微软 visual stduio vs2013 c语言 c++
原文地址:http://blog.csdn.net/mini0520/article/details/25819917