一..实验目的
巩固字符串和多维数组相关知识,学会运用灵活应用。
1.回顾字符串和多维数组的逻辑结构和存储操作特点,字符和数组的物理存储结构和常见操作。
2.学习运用字符串和和数组的知识来解决实际问题。
3.进一步巩固程序调试方法。
4.进一步巩固模板程序设计。
二..实验内容
1.从键盘输入一些文本,统计文本单词的个数。
2.写程序输出一个5阶幻方:每一行每一列每一个对角线和均相等。
3. 自己设计一个字符加密算法,并设计程序验证:输入文本,解后加密并输出。在些基础上设计一个你算法的解密程序。
前两题是必做题,第3题是选做题。
三.实验报告要求
在博客中先写上实习目的和内容,画出主要操作运算算法图,然后分别上传程序代码。插入调试关键结果截图。
四.实验报告
(一).从键盘输入一些文本,统计文本单词的个数。
#include<iostream> #include<string> using namespace std; int strlen(char *s) { char *p=s; int leg=0,con=0; for(;*p!=0;p++) { if(*p>='a'&&*p<='z'||*p>='A'&&*p<='Z') { if(con==0) leg++; con=1; } else con=0; } return leg; } int main() { char ch[50]; cout<<"please input your english words(less than 50):"<<endl; cin.getline(ch,50); cout<<strlen(ch)<<endl; return 0; }
#include<iostream> #include<iomanip> using namespace std; const int n=5; int main () {int i,j,itemp,jtemp; int a[n][n]; i=0;j=n/2; a[i][j]=1; for(int k=2;k<=n*n;k++) { itemp=i;jtemp=j; i=(i-1+n)%n; j=(j-1+n)%n; if(a[i][j]>0) {i=(itemp+1)%n; j=jtemp;} a[i][j]=k; } cout<<"五阶幻方为:"<<endl; for(i=0;i<=n-1;i++) { for(j=0;j<=n-1;j++) {cout<<left; cout<<setw(6)<<a[i][j]<<setw(6); } if(j%4==0||j!=0) {cout<<endl;} } return 0;}原文链接:https://www.f2er.com/datastructure/382791.html