没有合适的资源?快使用搜索试试~ 我知道了~
《C语言程序设计实验》实验报告.doc
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 128 浏览量
2022-06-17
01:20:42
上传
评论
收藏 248KB DOC 举报
温馨提示
《C语言程序设计实验》是一门旨在帮助学生深入理解和应用C语言编程技能的课程。实验报告涵盖了多个关键的编程任务,这些任务旨在强化以下几个方面的理解: 1. **一维数组的使用**:实验一介绍了如何在C语言中使用一维数组进行数据存储,并通过排序算法确保数组中的元素保持有序。在程序中,首先读取用户输入的整数个数和一组数,然后插入一个新的整数,保持数组有序。这个过程涉及到了条件语句(`if`)和循环结构(`for`和`while`)。 2. **计算平均值**:实验二要求计算一组整数的平均值,这涉及到数组遍历以及浮点数运算。程序通过累加数组所有元素,然后除以元素个数得到平均值,最后保留两位小数。 3. **逆序输出数组**:实验三的目的是逆序输出数组元素,这需要对数组进行遍历并从后往前输出,通过反向索引实现。 4. **查找最大值及下标**:实验四要求找到数组中的最大值及其对应的下标。通过遍历数组,比较每个元素与当前最大值,记录最大值及其下标。 5. **交换最大值和最小值**:实验五要求交换数组的第一个元素与最小值,最后一个元素与最大值。首先找出最小值和最大值的位置,然后进行交换操作。 6. **排序算法**:实验六涉及到排序算法的应用,可能是冒泡排序或选择排序,目的是将输入的整数数组从小到大排序。这里使用了嵌套循环来比较并交换数组元素,实现排序功能。 通过这些实验,学生不仅能够巩固C语言的基本语法,还能学习到数组操作、条件判断、循环控制、函数调用等核心概念。同时,排序算法的理解和实现是计算机科学中的基础,对于后续学习数据结构和算法有着重要作用。此外,实验报告的撰写也锻炼了学生的文档编写能力和问题解决能力。
资源推荐
资源详情
资源评论
《C 语言程序设计实验》实验报告
指导老师:
专业:
班级:
学号:
姓名:
日期: 2011-05-29
重庆邮电大学计算机科学与技术学院
实验一
实验名称:一维数组程序设计
实验目的:
1、 熟练掌握使用一维数组编程的方法。
2、 熟练掌握排序算法。
实验内容:
1、 调试示例
输入一个整数 n(0<n<9)和一组数,再输入一个整数,把 x 插入到这个数据中,使该
组数据仍然有序。
源程序:略
调试好的程序:
#include<stdio.h>
int main()
{
int i,j,n,x,a[10];
printf("输入数据的个数 n:");
scanf("%d",&n);
printf("输入%d 个整数:",n);
for(i=0;i<n;i++)
scanf("%d",&a[i]);
printf("输入要插入的整数:");
scanf("%d",&x);
for(i=0;i<n;i++)
{
if(x>a[i])continue;
j=n-1;
while(j>=i){
a[j+1]=a[j];
j--;
}
a[i]=x;
break;
}
if(i==n)a[n]=x;
for(i=0;i<=n;i++)
printf("%d\t",a[i]);
return 0;
}
2、 编程题 1
输入一个正整数 n(0<n<=10),再输入 n 个整数,输出平均值(保留两位小数)。
程序代码:
#include<stdio.h>
int main()
{
int i,n,sum=0,a[10];
float av;
printf("输入数据的个数 n:");
scanf("%d",&n);
printf("输入%d 个整数:",n);
for(i=0;i<n;i++)
scanf("%d",&a[i]);
for(i=0;i<n;i++)
{
sum+=a[i];
}
av=(float)sum/n;
printf("%0.2f\t",av);
return 0;
}
3、 编程题 2
输入一个正整数 n(0<n<=10),再输入 n 个整数,按逆序输出这些数。
程序代码
#include<stdio.h>
int main()
{
int i,n,a[10];
printf("输入数据的个数 n:");
scanf("%d",&n);
printf("输入%d 个整数:",n);
for(i=0;i<n;i++)
scanf("%d",&a[i]);
for(i=n-1;i>=0;i--)
printf("%d\t",a[i]);
return 0;
}
4、 编程题 3
输入一个正整数 n(0<n<=10),再输入 n 个整数,输出最大值及其下标(设最大值唯一,
下标从零开始)。
程序代码:
#include<stdio.h>
int main()
{
int i,j,n,x,a[10];
printf("输入数据的个数 n:");
scanf("%d",&n);
printf("输入%d 个整数:",n);
for(i=0;i<n;i++)
scanf("%d",&a[i]);
x=a[0];
for(i=0;i<n;i++)
{
if(a[i]>x){x=a[i];j=i;}
}
printf("最大数:%d\t 下标:%d\t",x,j);
return 0;
}
5、 编程题 4
输入一个正整数 n(0<n<=10),再输入 n 个整数,将最小值与第一个数交换,最大值与
最后一个数交换,然后输出交换后的 n 个数。
程序代码:
#include<stdio.h>
int main()
{
int i,n,j=0,k=0,x,y,a[10];
printf("输入数据的个数 n:");
scanf("%d",&n);
printf("输入%d 个整数:",n);
for(i=0;i<n;i++)
scanf("%d",&a[i]);
y=a[0];
x=a[0];
for(i=0;i<n;i++)
{
if(a[i]>x){x=a[i];j=i;}
if(a[i]<y){y=a[i];k=i;}
}
a[j]=a[0];
a[0]=y;
a[k]=a[i-1];
a[i-1]=x;
for(i=0;i<n;i++)
printf("%d\t",a[i]);
return 0;
}
6、 编程题 5
输入一个正整数 n(0<n<=10),再输入 n 个整数,再将它们从小到大排序后输出。
程序代码:
#include<stdio.h>
int main()
{
int i,n,j=0,x,a[10];
printf("输入数据的个数 n:");
scanf("%d",&n);
printf("输入%d 个整数:",n);
for(i=0;i<n;i++)
scanf("%d",&a[i]);
x=a[0];
for(i=0;i<n-1;i++)
{
for(j=i;j<n-1;j++)
{
if(a[i]>a[j+1])
{
x=a[i];a[i]=a[j+1];a[j+1]=x;
}
else continue;
}
}
for(i=0;i<n;i++)
printf("%d\t",a[i]);
return 0;
}
实验总结:
剩余63页未读,继续阅读
资源评论
老帽爬新坡
- 粉丝: 92
- 资源: 2万+
下载权益
C知道特权
VIP文章
课程特权
开通VIP
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功