程序test.c的功能是:在三位整数(100至999)中寻找符合下面条件的整数,并依次从小到大存入数组b[]中。条件如下:某数既是完全平方数,又有两位数字相同,例如144、676等。 请考生编制函数intjsValue(int bb[])实现此功能,满足该条件的整数的个数通过所编制的函数返回。 最后调用函数writeDat把结果输出到文件out.dat中。 注意:部分源程序存放在test.c文件中。 请勿改动主函数main和写函数writeDat的内容。
第1题:
阅读以下函数说明和C语言函数,将应填入(n)处的字句写在对应栏内。
【说明】
函数fun1 (int bb[])的功能是:在3位整数(100~999)中寻找符合条件的整数并依次从小到大存入数组中;它既是完全平方数,两位数字又相同,例如144、676等。
【函数2.11】
fun1 (int bb[])
{
int i, j, k=0, g, s, b;
for (i=100; i<=999; i++)
{
g=i%10;
(1)
b=i/100;
if ((i== (int) sqrt (i) * (int) sqrt (i)) && (g==s‖s==b‖b==g))
(2)
}
return k;
}
【函数2.2说明】
函数void fun2()的功能是:数组a中有300个四位数,求出数组a千位数上的数减百位数上的数减十位数上的数减个位数上的数大于零的个数CNT,再把所有满足此条件的四位数依次存入数组bb中,然后对数组bb的四位数按小到大的顺序进行排序。例如:9123,9-1-2-3>0,则该数满足条件存入数组bb中,且个数CNT=CNT+1,9812,9-8-1-2<0,则该数不满足条件,忽略。
【函数2.2】
void fun2 ( )
{
int q,b,s,g,i,j;
for (i=0;i<300;i++)
{q=a[i]/1000;
b=a[i]/100%10;
s=a[i]/10%10;
g=a[i]%10;
if (q-b-s-g>0)
(3)
}
for ( i=0;i<cnt-1;i++ )
for ( j=i+1;j<cnt;j++ )
if ( bb[i]>bb[j] )
{ (4)
bb[i]=bb[j];
(5)
}
}
第2题:
已知数据文件IN1.DAT和IN2.DAT中分别存有100个两位十进制数,并且已调用读函数readDat把这两个文件中的数存入数组a和b中,请考生编制一个函数jsVal,实现的功能是依次对数组a和b中的数按条件重新组成一个新数并依次存入数组C中,再对数组C中的数按从小大的顺序进行排序,最后调用输出函数writeDat把结果C输出到文件out.dat中。组成新数的条件:如果数组a和b中相同下标位置的数必须符合一个是偶数,另一个是奇数,则数组a中的数按二进制数左移八位后再加上数组b对应位置上的数,把这样组成的新数依次存入数组C中。
第3题:
已知数据文件in.dat中存有300个四位数,并已调用读函数readDat把这些数存入数组a中,请编制一函数isValue,其功能是:求出所有这些四位数是素数的个数cnt,再把所有满足此条件的四位数依次存入数组b中,然后对数组b的四位数按从小到大的顺序进行排序。最后main函数调用写函数writeDat把数组b中的数输出到out.dat文件中。 例如:5591是素数,则该数满足条件存入数组b中,且个数cnt=cnt+1。 9812是非素数,则该数不满足条件忽略。 注意:部分源程序存在test.C文件中。 程序中已定义数组:a[300],b[300],已定义变量:cnt请勿改动数据文件in.dat中的任何数据、主函数main、读函数readDat和写函数writeDat的内容。
第4题:
已知数据文件in.dat中存有300个四位数,并已调用读函数readDat把这些数存入数组a中,请编制一函数jsValue,其功能是:求出所有这些四位数是素数的个数cnt,再把所有满足此条件的四位数依次存入数组b中,然后对数组b的四位数按从小到大的顺序进行排序。最后maini函数调用写函数writeDat把数组b中的数输出到0ut.dat文件中。 例如:5591是素数,则该数满足条件存入数组b中,且个数cnt=cnt+1。 9812是非素数,则该数不满足条件忽略。 注意:部分源程序存在test.C文件中。 程序中已定义数组:a[300],b[300],已定义变量:cnt
第5题:
已知数据文件in.dat中存有200个四位数,并已调用读函数readDat0把这些数存入数组a中,请考生编制一函数jsVal,其功能是:依次从数组a中取出一个四位数,如果该四位数大于该四位数以后的连续五个数且该数是奇数(该四位数以后不满五个数,则不统计),则统计出满足此条件的个数cnt并把这些四位数按从小到大的顺序存入数组b中,最后调用写函数 writeDat把结果cnt以及数组b中符合条件的四位数输出到0ut.dat文件中。 注意:部分源程序存在test.C文件中。 程序中已定义数组:a[200],b[200],已定义变量:cnt 请勿改动数据文件in.dat中的任何数据、主函数main、读函数readDat和写函数writeDat的内容。