补充作业2 一维数组程序设计。
班级: 药131 姓名: 姜永丽学号:130214
一、 实训目标。
熟练掌握使用一维数组的编程方法和常用算法。
1、 掌握数组的定义、输入和输出方法。
2、 掌握下标变量的使用方法。
3、 掌握求极值、分类统计、排序、查找、移动等常用算法。
4、 进一步熟练程序的调试和测试方法。
5、 *学习数组作为函数参数的编程方法。
二、 语法练习。
1、数组是把的变量组织在一起。
2、 int a[5]; 表示定义了个类型的变量,分别为a[2]、a[3各元素在内存中存放,数组名a表示数组在内存中的。
3、在c语言中对一维整型数组的正确定义为 。
a)int a(10b)int n=10,a[n];
c)int ad)#define n 10
int a[n];
4、以下能对一维数组a进行初始化的语句是。
a. int a[5]=(0,1,2,3,4,);b. int a(5)={
c. int a[3]=;d. int a[5]=;
5、已知:int a[10]; 则对a数组元素的正确引用是( )
a、a[10] b、a[3.5] c、a(5) d、a[0]
6、若有以下数组说明,则数值最大的和最小的元素下标分别是( )
int a[12]=;
a.1,12 b.0,11c.1,11d.0,12
7、若有以下数组说明,则i=4;a[a[i]]元素数值是( a )。
int a[6]=;
a.3 b.2 c.6d.11
8、设有定义int a[5],i;用for循环结构分别写出数组的输入和输出程序段。
9、读下面两个程序:
#include <>
main()
int i, a[10];
for(i=9;i>=0;i--)
a[i]=10-i;
printf(“%d%d%d”,a[2],a[5],a[8]);
运行结果为:
#include <>
main()
int i,a[6];
for (i=0; i<6; i++)
a[i]=i;
for (i=5; i>=0 ; i--)
printf("%3d",a[i]);
运行结果为:
三、 实训内容和步骤。
1、定义一个具有10个元素的一维整型数组,从键盘给各元素赋值,并以每行5个数的格式输出。
源程序。#include<>
void main()
int a[10];
int i;
for (i=0,i<10;i++)
scanf(“%d”,&a[i])
for (i=0;i<10;i++)
printf(“%d”,a[i]);
if(i%4==0)
printf(“/n”);
测试数据预期结果实际结果(连续运行时)
思考:(结合上一个实验内容)
1) int a[10]; 未初始化时,各数组元素的值是多少?
2) int a[10]=;则a[0]~a[9]的值分别为:
2、改错,程序功能为:在数组a中查找与x相同的元素,如找到,输出x在数组中的下标。
有错的源程序。
#include <>
#define n 10
int main()
int i, x, n;
int a[n];
printf("输入数组元素的个数(<10):"
scanf("%d", n);
printf("输入数组%d个元素:",n);
for(i = 0; i < n; i++)
scanf("%d", a[i]);
printf( "x断点1
scanf("%d", x);
for(i = 0; i < n; i++)
if(a[i] !x) break; /断点2
if(i!=n)
printf( "没有找到与%d相等的元素!", d);
elseprintf( "和%d相同的数组元素是a[%d]=%d", x, i, a[i]);
return 0; /断点3
语法错误:测试数据预期结果实际结果(连续运行时)
3、从键盘输入一个班的成绩(最多20人),具体人数由键盘输入。要求:找出最高分及序号、计算平均分、统计不及格的人数。
源程序。#include<>
void main()
int a[20],max,n=0,sum,**e;
printf("请输入20个学生的成绩");
for(int i=0;i<20;i++)
max=a[0];
for(i=1;i<20;i++)
**e=sum/20;
printf("不及格人数有%d个",n);
printf("平均分为%d",**e);
4、定义一个长度为6的数组,从键盘输入6个数据给数组,并显示;然后输入一个新数据x,原数组中数据逐次前移,即a[1]→a[0],a[2]→a[1],…a[5]→a[4],新数据x→a[5],输出新的数组。
源程序。#include "iostream"
using namespace std;
int a[6];
int main()
int i=0;
for (i=0;i<6;i++)
for (i=6;i>0;i--)
return 0;
测试数据实际结果(连续运行时)
思考:数据移动时,若按照:a[5]→a[4] ,a[2]→a[1] ,a[1]→a[0]的顺序编程,结果如何?
5、输入10个数,要求按逆序输出。
#include<>
#define n 10
int main(void)
int x[n],t,a,b;
printf("输入%d个数字:",n);
for(a=0;a scanf("%d",&x[a]);
for(a=1;a
printf("排序结果:")
for(a=0;aprintf("%d ",x[a]);
return 0;
6、输入一个字符串(少于80个字符),统计其中数字字符的个数。
int main()
int a=0,b=0,m=0,i;
printf("请输入一个字符串: ");
char c[80] =
scanf("%s",c);
i = 0;
//for(i=0;i<80;i++)
dowhile(c[i]!=0);
printf("字符串中有%d个英文字母,%d个数字,%d个其他字符",b,a,m);
return 0;
7、*(选做)输入一个班的成绩(最多20人),具体人数由键盘输入,按分数从高到低排序并输出。
#include<>
#include<>
#include<>
int main()
int a[40];
int num;
scanf("%d",&num);
int i;
for(i=0;i {
scanf("%d",&a[i]);
假期补充作业一 2
2013 2014学年第一学期高一年级物理寒假补充作业二。命题人 郎荣肖作业完成时间 90分钟。一 选择题 本题共12小题,共48分。有的只有一个选项正确,有的有多个选项正确,1 可以用来测量国际单位制规定的三个力学基本物理量的仪器是下列哪一组。a 米尺 弹簧秤 秒表b 米尺 测力计 打点计时器。c...
补充作业2 答案
1 下列组件中能获得输入焦点的是 c a.groupbox b.label c.editd.image 2 如果在程序运行时显示一个打开文件对话框,则可使用topendialog组件的 a 方法。a.execute b.open c.applyd.free 3 在delphi中,所谓mdi,意思是 ...
2章补充作业
1 口袋中有4只黑球,6只白球,1 每次从中任取一个不放回,求首次取到白球的取球次数的分。布列 2 如果取出的是黑球则不放回,而另外放入一个白球,再写出的分布列。2 有10000名同年龄段且同社会阶层的人参加某保险公司的一项人寿保险。每个投保人在每年初须交纳200元保费,而在这一年中若投保人死亡,则...