C语言实验实验3-数组与指针
实验 数组与指针
3
程序填空
1.
题目描述:
随机产生10个整数存放到数组中 (下标0的位置不放,从下标1开始),输入待查找的
整数x,查 x是否存在于这10个数中。若存在,则输出x (最初)出现在这批数中的位置
序号(例如1或2或……);若不存在x,则输出 “不存在”。以下是完成此项工作的程序,
请在计算机上调试程序以补足其中的空格。
代码:
#include
#include
using namespace std;
int main( )
{
int a[101],k,x;
for(k=1;k<=10;k++) //从数组中下标1的元素开始存放数据
{
a[k]=rand( )%101; //产生0~100之间的的整数
cout<
}
cout<
cin>>x; //输入待查找数x
for(k=1;k<=10;k++)
if(a[k]==x) __(1)__; //若发现了x,则不用继续循环、继续查
if(k__(2)__)
cout<
else
cout<
return 0;
}
2.
题目描述:
编写一个程序,可以根据用户输入的不同值,建立不同长度的整型数组。给这个数组赋
值,并求其所有元素之和。请填空使程序完整,并在计算机上调试程序,以测试填入的部分
是否正确。
代码:
#include
using namespace std;
int main()
{
int n,i,sum=0,*p;
cin>>n; //输入一个整数n
p=new int[__(1)__]; //创建一个含有n个整数的整数数组
for(i=0;i
cin>>__(2)__;
for(i=0;i
sum=sum+*(p+i);
cout<
delete __(3)__; //删除动态数组p
return 0;
}
3.
题目描述:
输入5个整数依次存放到数组a 中(从下标1开始存放),再输入待插入的整数x 以及
它要插入到数组中的位置下标k (1≤k≤5),要求插入后不影响a 中原来下标为k到5的所
有元素的先后顺序。请按照数组中的元素顺序,输出插入前的5个整数和插入后的这6个整
数。提示:插入时,应该先从后往前地 (从下标5到下标k)将每个数组元素都后移 1个位
置,最后再将x存放到下标k 的元素中。请在计算机上调试以下程序以补足其中的空格。
代码:
#include
using namespace std;
int main( )
{
int a[101],k,j,x;
//分别输入5个整数
for(j=1;j<=5;j++) cin>>a[j];
cin>>x>>k; //输入待插入的数x和插入的位置下标k
if(k<1 ||k>5) return 0;
for(j=5;j>=k; __(1)__) //从下标5到下标k,将每个数组元素都后移 1个位置
a[j+1]=a[j];
__(2)__=x;
//输出将x插入到下标k后的这6个数
for(j=1;j__(3)__;j++) cout<