哈尔滨理工大学
软件与微电子学院
实 验 报 告
(2018-2019第一学期)
课程名称: | 结构化程序设计(C) |
班 级: | 软件18- 1 班 |
学 号: | 1814010130 |
姓 名: | 张立辉 |
哈尔滨理工大学软件与微电子学院
实验名称: | 数组程序设计 | 专 业 | 软件工程 | |||
---|---|---|---|---|---|---|
姓 名 | 张立辉 | 学 号 | 1814010130 | 班 级 | 软件18-1 |
一、 实验目的:
(1) 掌握一维数组和二维数组的定义、引用和初始化
(2) 掌握数组输入输出的方法。
二、实验内容:
(1) 用起泡法对10个整数排序。10个整数用scanf函数输入。
(2) 编程将一个数组中的值按逆序重新存放。
(3) 有一个2x3的矩阵,编程求出其中值最小的那个元素的值,以及其所在的行号和列号。
(4) 将两个字符串连接起来,不要用strcat函数。
(5) 有一篇文章,共有2行文字,每行有30个字符。要求分别统计出其中英文字母、 数字、空格以及其他字符的个数。
三、实验设备及软件环境:
计算机,Windows系统,CodeBlocks;
四、实验过程及结果:
(1):用起泡法对10个整数排序。10个整数用scanf函数输入。
#include<stdio.h>
int main()
{
int a[10];
int i,j,t;
for(i=0;i<10;i++)
{
scanf("%d",&a[i]);
}
printf("\n");
for(j=0;j<9;j++)
{
for(i=0;i<9-j;i++)
{
if(a[i]>a[i+1])
{
t=a[i];
a[i]=a[i+1];
a[i+1]=t;
}
}
}
for(i=0;i<10;i++)
{
printf("%d",a[i]);
printf("\t");
}
return 0;
}
(2):编程将一个数组中的值按逆序重新存放。
#include<stdio.h>
int main()
{
int a[10];
int i,j,t;
for(i=0;i<10;i++)
{
scanf("%d",&a[i]);
}
for(j=0;j<9;j++)
{
for(i=0;i<9-j;i++)
{
t=a[i];
a[i]=a[9-i];
a[9-i]=t;
}
}
for(i=0;i<10;i++)
{
printf("%d\t",a[i]);
}
return 0;
}
(3):有一个2x3的矩阵,编程求出其中值最小的那个元素的值,以及其所在的行号和列号。
#include<stdio.h>
int main(void)
{
int a[2][3];
int i,j,sun,x,y;
sun=a[0][0];
for(i=0;i<2;i++)
{
for(j=0;j<3;j++)
{
scanf("%d",&a[i][j]);
if(sun>a[i][j])
{
sun=a[i][j];
x=i+1;
y=j+1;
}
}
printf("\n");
}
printf("%d\n%d\n%d\n",sun,x,y);
return 0;
}
(4):将两个字符串连接起来,不要用strcat函数。
# include <stdio.h>
int main()
{
char str1[80],str2[40];
int i=0,j=0;
printf("请输入第一个字符串:\n");
gets(str1);
printf("请输入第二个字符串:\n");
gets(str2);
while(str1[i]!='\0')
i++;
while(str1[j]!='\0')
{
str1[i]=str2[j];
i++;
j++;
}
str1[i]='\0';
printf("连接后字符串为:\n%s",str1);
}
(5):有一篇文章,共有2行文字,每行有30个字符。要求分别统计出其中英文字母、 数字、空格以及其他字符的个数。
#include<stdio.h>
int main(void)
{
int i,j,zimu=0,shuzi=0,kongge=0,zifu=0;
char a[2][31];
for(i=0;i<2;i++)
{
for(j=0;j<31;j++)
{
scanf("%c",&a[i][j]);
if(a[i][j]>=65&&a[i][j]<=90)
zimu++;
else if(a[i][j]>=97&&a[i][j]<=122)
zimu++;
else if(a[i][j]>=48&&a[i][j]<=57)
shuzi++;
else if(a[i][j]==32)
kongge++;
else
zifu++;
}
}
printf("字母%d数字%d空格%d字符%d",zimu,shuzi,kongge,zifu);
return 0;
}
代码均构建并运行成功并测试多次;
五、总结:
经过本次实验,对数组程序设计有了更深一步认识,并了解到了自己的不足在哪方面,日后应针对该方面进一步加强练习
实验成绩: 指导教师: