实验四


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

一..实验目的

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

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

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

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

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

二.实验时间

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

三..实验内容

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

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

3.  自己设计一个字符加密算法,并设计程序验证:输入文本,解后加密并输出。在些基础上设计一个你算法的解密程序。

    前两题是必做题,第3题是选做题。

.实验总结

1.字符串或串是由数字、字母、下划线组成的一串字符。通常以串的整体作为操作对象,如:在串中查找某个子串、求取一个子串、在串的某个位置上插入一个子串以及删除一个子串等。两个字符串相等的充要条件是:长度相等,并且各个对应位置上的字符都相等。设p、q是两个串,求q在p中首次出现的位置的运算叫做模式匹配。串的两种最基本的存储方式是顺序存储方式和链接存储方式。

2.数组就是相同数据类型的元素按一定顺序排列的集合,就是把有限个类型相同的变量用一个名字命名,然后用编号区分他们的变量的集合,这个名字称为数组名,编号称为下标。组成数组的各个变量称为数组的分量,也称为数组的元素,有时也称为下标变量。数组是在程序设计中,为了处理方便, 把具有相同类型的若干变量按有序的形式组织起来的一种形式。这些按序排列的同类数据元素的集合称为数组。

源程序

1.#include<iostream>
using namespace std;
int main()
{
	char a[100];
	int x=0,i=1;
	cout<<"请输入文本:";
	cin.get(a,100);
	cout<<"The string is:"<<a<<endl;
	while(a[x]!='\0')
	{
		x++;
		if(a[x]==' ') i++;
	}
	cout<<"文本单词个数为:"<<i<<endl;
	return 0;
}
2.#include<iostream> 
#include<iomanip>  
using namespace std;
int main()  
{  
int a[100][100],x;
int i,j,m,n,temp;  
cout<<"输出魔方矩阵n=";  
cin>>x;  
while(x)  
{   
        for(i=0;i<x;i++)  
		{
			for(j=0;j<x;j++)  
                a[i][j]=0;  
        i=0;  
        j=x/2;  
        a[i][j]=1;  
        for(temp=2;temp<=x*x;temp++)  
        {  
            m=i;  
            n=j;  
            i--;  
            j++;  
            if(i<0)  
                i=x-1;  
            if(j>=x)  
                j=0;  
            if(a[i][j]!=0)  
            {  
                i=m+1;  
                j=n;  
             }  
              
            a[i][j]=temp;         }  

   }  
    for(i=0;i<x;i++)  
    {  
        for(j=0;j<x;j++)  
       cout<<a[i][j]<<setw(4); 
		cout<<endl;
    }  
   cout<<"输出魔方矩阵n=";  
   cin>>x; 
    }  
    return 0;  
}



 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值