2). x[i][i]>x[j][j] 或 x[j][j] 第23题 (30.0分) 题号:652 /*------------------------------------------------------- 【程序填空】 --------------------------------------------------------- 题目:任何一个大于4的偶数都可以表示成两个素数之和,输入一 个偶数,为其寻找两个素数,这两个素数之和等于该偶数。 例如:16=3+13,3和13都是素数。 --------------------------------------------------------- 注意:请勿改动主函数main()中的其他内容。 -------------------------------------------------------*/ #include void fun(int a); int a; do { printf(\ scanf(\ }while(a%2); fun(a); } void fun(int a) { int b,c,d,y,i,j; for(i=3;i<=a/2;i=i+2) { /***********SPACE***********/ 【?】 for(j=2;j<=sqrt(i);j++) if(i%j==0) y=0; if(y==1) { /***********SPACE***********/ 【?】 for(j=2;j<=sqrt(d);j++) if(d%j==0) y=0; if(y==1) {b=i;c=d;printf(\ } } } 答案: 1). y=1; 2). d=a-i; 第24题 (30.0分) 题号:653 /*------------------------------------------------------- 【程序填空】 --------------------------------------------------------- 题目:将字符串s中的所有数字字符顺序前移,其他字符顺序后移。 例如,s为asd123fgh456,则处理后的新字符串应为 123456asdfgh。 --------------------------------------------------------- 注意:请勿改动主函数main()中的其他内容。 -------------------------------------------------------*/ #include void fun(char s[]); char s[80]; printf(\ scanf(\ fun(s); printf(\} void fun(char s[]) { int i,j,k; char p[80],t[80]; j=k=0; for(i=0;s[i]!='\\0';i++) { /***********SPACE***********/ if(【?】) p[j++]=s[i]; else t[k++]=s[i]; } for(i=0;i /***********SPACE***********/ s[【?】]=t[i]; s[j+k]=0; } 答案: 1). isdigit(s[i]) 或 s[i]>='0'&&s[i]<='9' 或 s[i]<='9'&&s[i]>='0' 或 '0'<=s[i]&&'9'>=s[i] 或 '9'>=s[i]&&'0'<=s[i] 2). j+i 或 i+j 第25题 (30.0分) 题号:654 /*------------------------------------------------------- 【程序填空】 --------------------------------------------------------- 题目:计算x数组中N个数的平均值(规定所有数均为正数),将 数组中小于平均值的数据顺序移动到数组的前部,大于等 于平均值的数据顺序移到x数组的后部。例如, 有10个正数:47、30、32、40、6、17、45、15、48、26, 其平均值为30.5,移动后的输出为:30、6、17、15、26、 47、32、40、45、48。 --------------------------------------------------------- 注意:请勿改动主函数main()中的其他内容。 -------------------------------------------------------*/ #include double fun(double x[]); int i; double x[N]; for(i=0;i x[i]=rand()P; printf(\ } printf(\ printf(\ for(i=0;i printf(\ printf(\} double fun(double x[]) { int i,j; double aver=0,y[N]; for(i=0;i /**************************SPACE*************************/ { if(x[i]!=-1) 【?】 i++; } for(i=0;i 1). j++; 或 j=j+1; 或 j=1+j; 或 j+=1; 2). y[j++]=x[i]; 第26题 (30.0分) 题号:655 /*------------------------------------------------------- 【程序填空】 --------------------------------------------------------- 题目:建立一个N*N的矩阵,矩阵元素的构成规律是:最外层元素 的值全部为1;从外向内第2层元素的值全部为2;第3层元 素的值全部为3,??依此类推。例如,若N=5,则生成的 矩阵为: 1 1 1 1 1 1 2 2 2 1 1 2 3 2 1 1 2 2 2 1 1 1 1 1 1 --------------------------------------------------------- 注意:请勿改动主函数main()中的其他内容。 -------------------------------------------------------*/ #include void fun(int x[][N],int n); int x[N][N]={0},i,j; fun(x,N); printf(\ for(i=0;i for(j=0;j printf(\ printf(\ } } void fun(int x[][N],int n) { int i,j,k,m; if(n%2==0) m=n/2; else m=n/2+1; for(i=0;i /**************************SPACE*************************/ for(【?】;j x[i][j]=x[n-i-1][j]=i+1; for(k=i+1;k /**************************SPACE*************************/ x[k][i]=x[k][n-i-1]=【?】; } } 答案: 1). j=i 2). i+1 或 1+i
C填空题50题(6)
2019-09-01 13:28
C填空题50题(6).doc
将本文的Word文档下载到电脑
下载失败或者文档不完整,请联系客服人员解决!