C语言程序设计实验报告——实验六

C语言程序设计实验报告——实验六

  • 实验六 数组
    • 一、实验目的及要求
    • 二、实验环境
    • 三、实验内容
      • 实验题目(1)
      • 实验题目(2)
      • 实验题目(3)
      • 实验题目(4)

实验六 数组

一、实验目的及要求

1.掌握一维数组的定义,赋值,数组及其元素的引用。
2.掌握二维数组的定义,赋值,数组及其元素的引用。

二、实验环境

硬件要求:计算机一台。
软件要求:Windows操作系统,Dev-C++或VC++6.0编译环境

三、实验内容

实验题目(1)

利用数组来处理斐波那契数列问题。

斐波那契数列应该是耳熟能详的了,属于常见题型,难度系数不高,由于斐波那契数列的无穷性,博主在这里只取了数列的前20项。

源代码如下:

#include
int main()
{
		int a[20],i;
		for(i=1;i<=20;i++)
		{
			if(i<=2)
			{
				a[i]=1;
				printf("%d\n",a[i]);
			}
			else
			{
				a[i]=a[i-2]+a[i-1];
				printf("%d\n",a[i]);
			}
		}
		return 0;
}


实验题目(2)

利用冒泡法对10个整数进行排序,要求利用数组存放整数。

冒泡法应该是再熟悉不过的排序方法了,至于难度,因人而异,话不多说,上代码。

代码如下:

#include
int main() {
	int a[10];
	int i,j,temp;//i为总共进行判断的次数,j为每一次进行判断的次数。
	for(i=0; i<10; i++) {
		scanf("%d",&a[i]);
	}
	for(i=0; i<9; i++)
		for(j=0; j<9-i; j++)
			if(a[j]>a[j+1]) {
				temp=a[j];
				a[j]=a[j+1];
				a[j+1]=temp;
			}
	for(i=0; i<10; i++)
		printf("%d\n",a[i]);
	printf("\n");
	return 0;
}


实验题目(3)

将一个二维数组行列元素互换,存到另外一个二维数组中。

博主表示,这个算法,也不是很难,初学者应该很容易就能上手,如果对线性代数有了解的就更容易了。

源代码如下:

#include
#include
int main()
{
		int a[2][4]={{13,15,79,46},{76,46,49,23}};
		int b[4][2],i,j; 
		printf("a:\n");
		for(i=0;i<=1;i++)
		{
			for(j=0;j<=3;j++)
			{
				printf("%5d",a[i][j]);
				b[j][i]=a[i][j];
			}
			printf("\n");
		}
		printf("b:\n");
		for(i=0;i<=3;i++)
		{
			for(j=0;j<=1;j++)
				printf("%5d",b[i][j]);
			printf("\n");
		}
		return 0;
}


实验题目(4)

输入一行元素,统计其中有多少个单词,单词之间用空格分开。

这道题目,博主认为不要钻牛角尖,这些入门的实验题目还不至于智能到分辨是否是英语单词的地步,所以怎么简单怎么想吧。最简单的就是输入一行字符,以空格作为分割单词的标准,然后计数再输出就行了。

源代码如下:

#include 
//输入一行字符,统计其中有多少单词,单词之间用空格分隔开
int main() {
	int i,num=0,word=0;
	char str[80];
	gets(str);
	for(i=0; (str[i])!='\0'; i++)
		if(str[i]==' ')
			word=0;
		else if(word==0) {
			word=1;
			num++;
		}
	printf("there is %d words in this line;\n",num);
	return 0;
}

你可能感兴趣的:(#,C语言程序设计实验,程序设计,c语言)