一..实验目的
巩固字符串和多维数组相关知识,学会运用灵活应用。
1.回顾字符串和多维数组的逻辑结构和存储操作特点,字符和数组的物理存储结构和常见操作。
2.学习运用字符串和和数组的知识来解决实际问题。
3.进一步巩固程序调试方法。
4.进一步巩固模板程序设计。
二.实验时间
准备时间为第9周到第10前半周,具体集中实验时间为10周周四。2个学时。
三..实验内容
2.写程序输出一个5阶幻方:每一行每一列每一个对角线和均相等。#include<iostream> #include<cstring> using namespace std; void main() { int i,j,count,len; char s[500]; count=0; cout<<"请输入英文文本:"<<endl; cin.get(s,500); len=strlen(s); j=0; for(i=j;i<len;i++) { if(s[i]!=' ') for(j=i;;j++) if(s[j]==' ') { count++; i=j; break; } } cout<<"文本的单词个数为:\n"<<count<<endl; }
2.五阶幻方:
#include <iostream> using namespace std; int main() { int n = 1,m = 3,a[6][6] = {0}; for(int i = 1; i <= 25;++i) { a[n][m] = i; if(n == 1&& m == 5) { ++n; continue; } else { if(n == 1) n = 5; else --n; if(m == 5) m = 1; else ++m; } if(a[n][m] != 0) { n += 2; m -= 1; } } for(n = 1; n <= 5; ++n) { for(m = 1; m <= 5; ++m) { cout << a[n][m] << " "; if(m%5 == 0) cout << endl; } } return 0; }
结果: