赤峰做网站建设的企业,用vps建网站备案,本科自考是什么意思啊,wordpress去加密版权第78套#xff1a;
给定程序中#xff0c;函数fun的功能是:将NN矩阵主对角线元素中的值与反向对角线对应位置上元素中的值进行交换。例如#xff0c;若N3#xff0c;有下列矩阵#xff1a; 1 2 3 4 5 6 7 8 9 交换后为#xff1a; 3 2 1 4 5 6 9 8 7 请在程序的下划线处…第78套
给定程序中函数fun的功能是:将N×N矩阵主对角线元素中的值与反向对角线对应位置上元素中的值进行交换。例如若N3有下列矩阵 1 2 3 4 5 6 7 8 9 交换后为 3 2 1 4 5 6 9 8 7 请在程序的下划线处填入正确的内容并把下划线删除使程序得出正确的结果。 注意源程序存放在考生文件夹下的BLANK1.C中。 不得增行或删行也不得更改程序的结构 给定源程序
#include stdio.h
#define N 4
void fun(int ___1___ , int n)
{ int i,s;
for(___2___; i)
{ st[i][i];
t[i][i]t[i][n-i-1];
t[i][n-1-i]___3___;
}
}
main()
{ int t[][N]{21,12,13,24,25,16,47,38,29,11,32,54,42,21,33,10}, i, j;
printf(\nThe original array:\n);
for(i0; iN; i)
{ for(j0; jN; j) printf(%d ,t[i][j]);
printf(\n);
}
fun(t,N);
printf(\nThe result is:\n);
for(i0; iN; i)
{ for(j0; jN; j) printf(%d ,t[i][j]);
printf(\n);
}
} 解题思路 第一处在函数体fun中已经使用了t整型数组所以应填t[][N]。 第二处要求填写for循环语句的初始值和终止值所以应填i0;in。 第三处交换变量的值根据循环体中的语句可知s是存放交换的中间变量所以应填 s。 由N个有序整数组成的数列已放在一维数组中给定程序MODI1.C中函数fun的功能是利用折半查找算法查找整数m在数组中的位置。若找到返回其下标值反之返回-1。折半查找的基本算法是:每次查找前先确定数组中待查的范围:low和highlowhigh,然后把m与中间位置mid中元素的值进行比较。如果m的值大于中间位置元素中的值 则下一次的查找范围落在中间位置之后的元素中反之下一次的查找范围落在中间位置之前的元素中。直到lowhigh查找结束。 请改正程序中的错误使它能得出正确结果。 注意不要改动main函数不得增行或删行也不得更改程序的结构。 给定源程序
#include stdio.h
#define N 10
void fun(int a[], int m )
{ int low0,highN-1,mid;
while(lowhigh)
{ mid(lowhigh)/2;
if(ma[mid])
highmid-1;
else If(m a[mid])
lowmid1;
else return(mid);
}
return(-1);
}
main()
{ int i,a[N]{-3,4,7,9,13,45,67,89,100,180 },k,m;
printf(a数组中的数据如下:);
for(i0;iN;i) printf(%d , a[i]);
printf(Enter m: ); scanf(%d,m);
kfun(a,m);
if(k0) printf(m%d,index%d\n,m,k);
else printf(Not be found!\n);
} 解题思路 第一处函数有返回值不能定义为void所以应改为int fun(int a[],int m)。 第二处if错定成If。 假定输入的字符串中只包含字母和号。请编写函数fun它的功能是除了尾部的号之外,将字符串中其它号全部删除。形参p已指向字符串中最后的一个字母。在编写函数时不得使用C语言提供的字符串函数。 例如字符串中的内容为ABCDEFG*****删除后,字符串中的内容应当是 ABCDEFG*******。 注意: 部分源程序在文件PROG1.C中。 请勿改动主函数main和其它函数中的任何内容仅在函数fun的花括号中填入你编写的若干语句。 给定源程序
#include stdio.h
void fun( char *a, char *p )
{
}
main()
{ char s[81],*t;
printf(Enter a string:\n);gets(s);
ts;
while(*t)t;
t--;
while(*t*)t--;
fun( s , t );
printf(The string after deleted:\n);puts(s);
NONO();
} 解题思路 本题是考察字符串的操作。
利用循环扫描出p指针左边的字符是否是’‘如果不是’则依次把这些字符移动原字符串a首地址开始存放。把p指针所指的字符串也依次存放到字符串a中。最后给字符串a加上结束符。 参考答案
void fun( char *a, char *p )
{
char *qa;
int j0;
while(*q qp) {
if(*q ! *) a[j] *q ;
q ;
}
while(*p) a[j]*p;
a[j]0;
}