版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
姓 名: 班 级:学 号:实验时间: 2018 年 5 月 10 日实验题目
1:输入两个整数数组,每个数组有五个整数,将两者和并并排列输出。设计思想:定义三个数组,将两组数据存储到第三个数组中
,再用冒泡排序对其由大到小排序并输出。实验代码及注释:#include
<stdio.h>#include
<stdlib.h>#define
N
int
main(){int
a[5],b[5],c[N];//第一组数据,第二组,合并数组int
i,j,t;//循环变量,中间变量printf("输入第一组数据:\n");//输入数据for(i=0;i<5;i++)scanf("%d",&a[i]);printf("输入第二组数据:\n");for(i=0;i<5;i++)scanf("%d",&b[i]);for(i=0;i<5;i++){c[i]=a[i];//两组数据合并c[i+5]=b[i];}for(i=0;i<N-1;i++)//冒泡排序从大到小{for(j=0;j<N-i-1;j++){if(c[j]<c[j+1]){t=c[j];c[j]=c[j+1];c[j+1]=t;}}}for(i=0;i<10;i++)printf("%d\t",c[i]);//排序:冒泡,选择,return
0;}验证与结论:据是从第
0
须掌握。实验题目
2:某公司生成5
种产品,每周记录生产的每种产品数量和销售数量。每个月月末,公司将对其生产规划进行评估。该评估需要以下一个或多个信息。每周生成和销售的数量;所有生产产品的总量;所有销售产品的总量;每种产品生产和销售的总量。假设生产和销售的产品和销售分别用二维数组M和S其中
M[i][j]表示第
i
周生产第
j
种产品的数量。S[i][j]表示第
i周销售第
j
C
来表示每种产品的价格。其中,C[j]表示第
j
种产品的价格。数组
M、S
和
C
的值都在程序中输入。设计思想:声明四个数组函数:每周生成和销售的数量,所有生产产品的总量,所有销售产品的总量,每种产品生产和销售的总量。然后直接调用使其对主函数中数组值直接改变,最后用循环输出。实验代码及注释:#include
<stdio.h>#include
<stdlib.h>void
money(double
mva[5][6],double
m[5][6],double
c[6]);//函数声明void
sum1(double
sweek[5],double
m[5][6]);void
sum2(double
mpr[6],double
m[5][6]);double
sum3(double
m[5]);int
main(){int
double
M[5][6],S[5][6],C[6];//
第几周生产第几种产品的数量,第几周销售第几种产品的数量,每种产品的价格doubleMvalue[5][6],Svalue[5][6],Mweek[5],Sweek[5],Mproduct[6],Sproduct[6];double
Mtotal,Stotal;for(i=1;i<=4;i++){for(j=1;j<=5;j++){ printf("
请
输
入
第
%d
周
生
产
第
%d
种
产
品
的
数量:",i,j);scanf("%lf",&M[i][j]);printf("
请
输
入
第
%d
周
销
售
第
%d
种
产
品
的
数量:",i,j);scanf("%lf",&S[i][j]);}}printf("\n");for(j=1;j<=5;j++){
种产品的价格:",j);scanf("%lf",&C[j]);}printf("\n");money(Mvalue,M,C);//调用函数money(Svalue,S,C);sum1(Mweek,Mvalue);sum1(Sweek,Svalue);sum2(Mproduct,Mvalue);sum2(Sproduct,Svalue);Mtotal=sum3(Mweek);Stotal=sum3(Sweek);for(i=1;i<=4;i++){for(j=1;j<=5;j++){printf("
第
%d 周
生
产
第
%d值%.2lf\n",i,j,Mvalue[i][j]);printf("
第
%d 周
销
售
第
%d值%.2lf\n",i,j,Svalue[i][j]);printf("
在
本
月
里
生
成
第
%d值%.2lf\n",j,Mproduct[j]);printf("
在
本
月
里
销
售
第
%d
种
产
品
的
价种
产
品
的
价种
产
品
的
价种
产
品
的
价值%.2lf\n",j,Sproduct[j]);}printf("在第%d
周生产的产品价值%.2lf\n",i,Mweek[i]);printf("在第%d
周所有产品的价值%.2lf\n",i,Sweek[i]);}printf("在本月里生产所有产品总价值%.2lf\n",Mtotal);printf("在本月里销售所有产品总价值%.2lf\n",Stotal);return
0;}void
money(double
mva[5][6],double
m[5][6],double
c[6])//
第i
周生产和销售第
j
种产品的价值{int
i,j;for(i=1;i<=4;i++){for(j=1;j<=5;j++){mva[i][j]=m[i][j]*c[j];// printf("
第
%d
周
生
产
第
%d
种
产
品
的
价值%lf\n",i,j,m[i][j]*c[j]);}}}void
sum1(double
sweek[5],double
i
周生产和销售的产品的价值{int
i,j;for(i=1;i<=4;i++){sweek[i]=0;//数组初始化for(j=1;j<=5;j++){sweek[i]=sweek[i]+m[i][j];}}}void
sum2(double
mpr[6],double
m[5][6])//在本月生产和销售第j
种产品的价值{int
i,j;for(j=1;j<=5;j++){mpr[j]=0;//数组初始化for(i=1;i<=4;i++){mpr[j]=mpr[j]+m[i][j];}}}double
sum3(double
m[5])//在本月里生产和销售所有产品总价值{int
i;double
sum3=0;for(i=1;i<=4;i++){sum3=sum3+m[i];}return
sum3;}验 证
结 论与结 论否用函数统一起来,否则在后期维护上将变得困难许多。实验题目
3:编程将一个字符串插入到另一个字符串的第n
个位置。设计思想:使用
strlen
函数计算数组长度,然后使用循环用倒序赋值使
a
数组在第
n
个位置及以后字符向后挪数组b
b
赋给
a
的空位。实验代码及注释:#include
<stdio.h>#include
<string.h>int
main(){int
n,count1,count2,i,j;//位置,字符串长度,循环变量printf("输入
n
值:\n");scanf("%d",&n);char
a[20];//默认长度为
20char
b[20];printf("输入
a:\n");scanf("%s",a);printf("输入
b:\n");scanf("%s",b);count1=strlen(a);//计算字符串
a
与
b
的长度count2=strlen(b);for(i=count1-1;i>=(n-1);i--)//倒序赋值,使
a
在第
n
个位置及以后字符向后挪
count2
位a[i+count2]=a[i];i=n-1+count2;//对
i
重新赋值为
n-1+count2for(j=count2-1;j>=0;j--)//倒序赋值将
b
赋给
a
空位{a[i]=b[j];i--;}for(j=0;j<count1+count2;j++)printf("%c",a[j]);return
0;}验 证 与 结 论 :总结与心得体会:输入字符串后末尾会有一个
\0,在赋值时必须极为小心,有可能会使程序提前终止得不到预期的效果,另外利用
strlen
函数计算数组长度时不包括末尾的\0。实验题目
4:编写一个程序,使输入的一个字符串按反序存放,在主函数中输入输出字符。设计思想:输入字符串存储在
a
数组中,利用
strlen
函数计算数组
a
长度,再用循环倒序存储在
b
数组中并输出。实验代码及注释:#include
<stdio.h>#include
<string.h>#define
n
100//宏定义
n
值为
100int
main(){char
a[n],b[n];//定义字符串数组int
i,j=0;//在数组中存储位置printf("请输入字符:\n");gets(a);//输入字符串i=strlen(a)-1;//数组长度减一for(;i>=0;i--)//倒序输出存储{b[j]=a[i];//倒序存储printf("%c",a[i]);j++;}return
0;}验 证 与 结 论 :总结与心得体会:利用scanf函数输入字符串时无法输入空格,故用了gets函数来输入字符串。实验题目
5:编写程序,从键盘输入一行字符,统计其中英文字母、空格、数字和其他字符的个数。
a
存储在数组
b
中,再利用
ASCII
码的范围对其进行统计输出。实验代码及注释:#include
<stdio.h>#include
<string.h>#define
n
200//宏定义
n
值为
200int
main(){char
a[n];//定义字符串数组int
i,j;//循环变量int
count1=0,count2=0,count3=0,count4=0;//英文字母、空格、数字和其他字符的个数int
b[n];//
整型数组printf("请输入字符:\n");gets(a);//输入字符j=strlen(a);//将数组
a
的长度赋给
jfor(i=0;i<j;i++){b[i]=a[i];//将字符转换成
ASCII
码存储在
b
数组中}for(i=0;i<j;i++)//用
ASCII
码进行统计{if((b[i]>=65&&b[i]<=90)||(b[i]>=97&&b[i]<=122))//
英文字母的范围count1++;else
if(b[i]==32)//空格的范围count
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年贵港客运从业资格证考试培训试题和答案
- 2024年宣城道路客运输从业资格证考试真题保过
- 2024年漯河客运上岗证模拟考试题
- 2024年太阳能光伏发电项目合同
- 第七章《复数》单元必刷卷(培优卷)(全解全析)
- 考点13免疫调节-2022年高考生物十年高考全国卷真题考点分类训练(原卷版)
- 2024年度智能家居产品销售合同
- 消防水鹤工程施工方案及主要技术措施
- 种子学基础知识
- 高刚度混杂碳纤维复合材料的制备与性能
- 南京理工大学2015年613物理化学(含答案)考研真题
- 初中数学应用题解题思路分享
- 安全生产科技创新与应用
- 人工智能在文化传承与遗产保护中的价值实现
- 2024年汽修厂开业计划书
- ISTA标准-2A、2B、2C系列解读(图文)
- 日间手术应急预案方案
- 退费账户确认书
- 幼儿园小班《汽车滴滴响》
- 杭州娃哈哈精密机械有限公司新增年产40000台展示冰柜产品生产线的技术改造项目环境影响报告
- 安徽省示范高中培优联盟2023-2024学年高一上学期冬季联赛数学试题(含答案)
评论
0/150
提交评论