放,现从键盘输入一个数据,把它插入到数组中,要求插入新数据以后,数组数据仍然保持有序。请编写一个程序实现上述功能。
提示:
1)定义整型数组并初始化。 2)从键盘输入一个数据。
3)将该数据插入到数组中,由于要保证插入的数组仍然有序,所以需要查找插入的位置。
4)输出插入数据以后的数组。
#include
int a[9]={2,4,6,8,10,12,14,16}; int i,j,number; printf(\原数组\\n\
for(i=0;i<=8;i++)//输出数组原有的元素 printf(\ printf(\
printf(\请输入一个数据\\n\ scanf(\ i=0;//以下三行找到插入位置 while(a[i] for(j=7;j>=i;j--)//将插入点以后的元素顺序往后移一位 a[j+1]=a[j]; a[i]=number;//插入数据 printf(\输出改变后的数组\\n\ for(i=0;i<=8;i++)//输出插入后仍有序的数组 printf(\ } (3)写一个3 x 5矩阵的转置程序,输出其原矩阵的值和转置以后的结果。 提示: 1)定义一个二维数组及相关变量。 2)对二维数组赋值,可以由键盘输入,也可以通过其他方式赋值。 3)输出转置前的二维数组。 4)对二维数组中的值进行转置。 5)输出转置后的二维数组中的值。 #include int i,j; int a[3][5]={1,2,3,4,5,6,7,8,9,1,2,3,4,5,0}; for(i=0;i<3;i++){ for(j=0;j<5;j++) printf(\ printf(\ } printf(\转置后的矩阵为\\n\ for(i=0;i<5;i++){ for(j=0;j<3;j++) printf(\ printf(\ } } (4)编程实现随机产生10个位于区间[100 200]互不相等的整数,并将其按降序排序和输出。 #include #define random(x)(rand()1+100) main() { int i,j,k,n;//产生随机数 int a[10]; srand((int)time(0)); for(i=0;i<=9;i++){ a[i]=random(200); printf(\ } printf(\ for(i=0;i<=9;i++){//排序 k=i; for(j=i;j<10;j++) if(a[k] printf(\排序后的数组为\\n\ for(i=0;i<10;i++) printf(\ printf(\ } 实验五 函数 实验 ( 验证性 综合性 实验 5学时) 1、目的要求: (1)学习函数的编程思想,编写一个包括3~4个函数的程序。 (2)掌握函数中参数传递的两种方式和函数的相互调用。 (3)编写实验报告。 2、实验内容(参考实验指导书): (1)写一个函数int digit( int n , int k ),它返回数n的从右向左的第k个十进数字值。例如,函数调用digit(1234,2)将返回值3。 #include int x,y; printf(\请输入一个数据\\n\ scanf(\ digit(x,y); } void digit(int n,int k) { int i,j,a,b; b=n; a=(n/10); j=(n/100); i=(n/1000); n=1000*i+100*j+10*a+b; if(k==1) printf(\ else if(k==2) printf(\ else if(k==3) printf(\ else if(k==4) printf(\} (2)写一个函数int isprime(int n),当n是质数时,函数返回非零值;当n是合数时,函数返回零值。