实验(1)
统计文本单词个数:
源代码如下:
#define _CRT_SECURE_NO_WARNINGS
#include<iostream>
#include<cstdlib>
#include<cstring>
#include<fstream>
using namespace std;
int Match(char str[])
{
int count = 0;
int state = 1;
int i = 0;
while (str[i] != '\0')
{
if (str[i] == ' ')
{
state = 1;
}
else if (state == 1)
{
state = 0;
count++;
}
i++;
}
return count;
}
int main()
{
cout << "读取文本:" << endl;
ifstream file("D:\\words\\words.txt");
if (file.fail()){ cout << "文件不存在!" << endl; }
char T[255];
file.get(T, 255);
cout << "输入的内容是:" << T << endl;
int Length = 0;
Length = Match(T);
cout << "字符串中单词的个数为:" << Length << endl;
system("PAUSE");
return 0;
}
结果如下:
实验(2):5阶幻方
#include<iostream>
#include<iomanip>
#include<stdlib.h>
using namespace std;
const int N = 5;
void square(int a[N][N], int n)
{
int i, j, k;
i = 0; j = n / 2;
a[i][j] = 1;
for (k = 2; k <= N*N; k++)
{
int itemp, jtemp;
itemp = i; jtemp = j;
i = i - 1;
if (i<0)i = n - 1;
j = j - 1;
if (j<0)j = n - 1;
if (a[i][j]>0)
{
i = itemp + 1;
if (i == n)i = 0;
j = jtemp;
}
a[i][j] = k;
}
}
void show(int b[N][N])
{
int i, j;
for (i = 0; i<5; i++)
{
for (j = 0; j<5; j++)
cout << b[i][j] << " ";
cout << endl;
}
}
void init(int c[N][N])
{
int i, j;
for (i = 0; i<5; i++)
for (j = 0; j<5; j++)
{
c[i][j] = 0;
}
}
int main()
{
int a[N][N];
init(a);
square(a, 5);
show(a);
system("PAUSE");
return 0;
}
结果截图如下: