• 2022-06-09
    以下程序实现:输入10个从小到大的有序数据,继续输入一个整数x,查询x是否存在于前10个数据中,如果不存在也插入x到前10个数据中,保存数列依旧从小到大有序排列;如果存在,则结束查询。请在空格中填写恰当的代码。#includeintmain(){inta[11],i,x,pos=0,flag;printf("请输入10个数字:");for(i=0;i<10;i++)//输入10从小到大的有序且不等的数字scanf("%d",&a[i]);printf("请输入查询的数据:");scanf("%d",&x);for((1),i=0;i<10;i++)//顺序查找是否有相等的数据{if(x==a[i]){flag=1;break;}elseif((2)){pos=i;break;}}if(!flag){for(i=10;(3);i--)a[i]=a[i-1];(4);}return0;}[/i][/i][/i]
  • flag=0;xx;x-a[i]<0;a[i]-x>0;i>pos;i>=pos-1;pos[/i][/i]

    举一反三

    内容

    • 0

      【填空题】void main() {int a[10],b[10],i; for(i=0;i<10;i++) scanf("%d",&a[i]); for( 【1】 ;i<10;i++) b[i]=a[i-1]+a[i] ; for(i=1;i<10;i++) {printf("%3d",b[i]); if( 【2】 ==0) printf(" "); } }

    • 1

      下列程序的功能是从键盘上输入10个实型数存入数组,然后按输入顺序的逆序输出这10个数,请填空。 main() { float a[10]; int i; for(i=0 ; i<10 ; i++) scanf(“%f”,&a[i]); for(i=9;【1】; 【2】) printf(“%10.2f”,【3】); return 0; }

    • 2

      下面程序中的数组 a 包括 10 个整数元素,从 a 中第二个元素起,分别将后项减前项之差存入数组 b,并按每行 3 个元素输出数组 b。请填空。 main( ) { int a[10],b[10], i for(i=0;i<10; i++) scanf( “ %d”,&a[i]) ; for(i=1;____    ___; i++) b[i]=___     ____; for(i=1;i<10;i++) { printf( “ %3d”,b[i]); if (__    __)   printf( “ ”); } }

    • 3

      执行如下程序,从键盘依次输入十个整数:'1000123020',则输出时a[4]的值是多少? #include'stdio.h' voidmain(){ inta[10]; inti,j; for(i=0;i<10;i++) scanf('%d',&a[i]); for(i=0;i<10;i++){ if(a[i]==0){ j=i; while(j<10-1&&a[j]==0) j++; a[i]=a[j]; a[j]=0; } } for(i=0;i<10;i++) printf('%d ',a[i]); }

    • 4

      输入10个数,将10个整数按升序排列输出,并且奇数在前,偶数在后。如果输入的10个数是:10 9 8 7 6 5 4 3 2 1 ,则输出:1 3 5 7 9 2 4 6 8 10。(编程提示:可利用2个数组变量,一个用来存放输入的整数,输入后,对这个数组进行排序,然后将数据复制到另一个数组中,先复制奇数再复制偶数)。 程序运行结果如下:Input 10 numbers:3 12 7 65 8 4 17 25 36 50↙Output: 3,7,17,25,65,4,8,12,36,50在空白处填写适当的表达式或语句,使程序完整并符合题目要求。#include int main(){ int arr[10], brr[10]; int i, j, tmp; printf(Input 10 numbers: ); for (i = 0; i < 10; i++) { scanf(%d, &arr[i]); } for (i = 0; i < 9; i++) { for (j = i + 1; j < 10; j++) { if (____________) { tmp = arr[i]; arr[i] = arr[j]; arr[j] = tmp; } } } for (i = 0, j = 0; i < 10; i++) { if (__________) { brr[j++] = arr[i]; } } for (i = 0; i < 10; i++) { if (___________) { brr[j++] = arr[i]; } } printf(Output: ); for (i = 0; i < 10; i++) { if (i < 9) { printf(%d,, brr[i]); } else { printf(%d , brr[i]); } }}