数据结构:实验四 字符串和多维数组实验

来源:互联网 发布:网络计划时间参数计算 编辑:程序博客网 时间:2024/05/27 09:49

《数据结构》实验四:    字符串和多维数组 实验

一..实验目的

     巩固字符串和多维数组相关知识,学会运用灵活应用。

1.回顾字符串和多维数组的逻辑结构和存储操作特点,字符和数组的物理存储结构和常见操作。

2.学习运用字符串和和数组的知识来解决实际问题。

3.进一步巩固程序调试方法。

4.进一步巩固模板程序设计。

二.实验时间

   准备时间为第9周到第10前半周,具体集中实验时间为10周周四。2个学时。

三..实验内容

1.从键盘输入一些文本,统计文本单词的个数。

#include<iostream>#include<string>using namespace std;int len(char *s){ int count,state; count=0; state=1; char *p=s; while(*p!='\0') {  if(*p==' ')  {state=1;}  else if(state==1)  {   state=0;   count++;  }  p++; } return count;}int main(){ char ch[50]; cout<<"请输入文本"<<endl; cin.getline(ch,50); cout<<"文本单词个数为"<<endl; cout<<len(ch)<<endl;    return 0;}


2.写程序输出一个5阶幻方:每一行每一列每一个对角线和均相等。

#include<iostream>#include<iomanip> using namespace std;#define n 5void square(int a[][n]){ int i,j,k; i=0;j=n/2; a[i][j]=1; for(k=2;k<=n*n;k++) {  int itemp=i;int 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; }}void main() {      int i,j;     int a[5][5];      for(i=0;i<5;i++){for(j=0;j<5;j++)         a[i][j]=0; }    square(a); cout<<"输出5届幻阶方:"<<endl;     for(i=0;i<n;i++){for(j=0;j<n;j++){cout<<left;  cout<<setw(4)<<a[i][j]<<setw(4);  if(j%4==0&&j!=0)  cout<<endl;  }           }  }






0 0
原创粉丝点击