统计正整数中指定数字的个数
第1题:
已知在文件IN.dat中存有若干个(少于200个)四位数字的正整数,函数ReadDat()读取这若干个正整数并存入数组number中。请编写函数CalValue(),其功能要求是:①求出文件中共有的正整数个数totNum;②求这些数右移1位后,产生的新数是奇数的数的个数totCnt以及满足此条件的这些数(右移前的值)的算术平均值totAve。最后调用函数writeDat()把所求的结果输出到OUT.dat文件中。
注意:部分源程序已经给出。请勿改动主函数main()、读函数ReadDat()和写函数writeDat()的内容。
include <stdio.h>
include <conio. h>
define MAXNUM 200
int number [MAXNUM];
int totNum = 0; /* 文件IN.dst 中共有的正整数个数*/
int totCnt = 0; /* 符合条件的正整数的个数*/
double totAve = 0.0; /* 平均值 */
int ReadDat (void);
void writeDat(void);
void CalValue(void)
{
}
void main ()
{ int i;
for (i=0; i<MAXNUM; i++)
number [i] = 0;
if (ReadDat())
{ printf (" 数据文件 IN.dst 不能打开! \007\n");
return;
}
CalValue ();
printf(" 文件 IN.dst 中共有的正整数个数=%d个\n", totNum);
printf (" 符合条件的正整数的个数 =%d个\n", totCnt);
printf("平均值=%.2f\n", totAve);
writeDat ();
}
int ReadDat (void)
{ FILE *fp;
int i = 0;
if ((fp = fopen("IN.dat", "r")) == NULL)
return 1;
while (!feof(fp))
fscanf(fp, "%d,", &number [i++]);
fclose (fp);
return 0;
}
void writeDat (void)
{ FILE *fp;
fp = fopen("OUT.dat", "w");
fprintf(fp, "%d\n%d\n%6.2f\n", totNum, totCnt, totAve);
fclose (fp);
}
第2题:
在文件in.dat中存有若干个(个数<200)四位数字的正整数,函数ReadDat读取这若干个正整数并存入数组XX中。请编制函数CalValue,其功能要求:1.求出该文件中共有多少个正整数totNum;2.求出这些正整数中的各位数字之和是偶数的数的个数totCnt,以及满足此条件的这些正整数的算术平均值totPjz。最后main函数调用函数WriteDat把所求的结果输出到0ut.dat文件中。 注意:部分源程序存放在test.c文件中。 请勿改动数据文件in.dat中的任何数据,主函数main、读函数ReadDat和输出函数WriteDat的内容。

第3题:
阅读以下说明和流程图,回答问题。
[说明]
从键盘输入一个高精度正整数n,去掉其中s个数字后按原左右次序再组成一个新的正整数。对给定的n,要寻找一种方案,使得余下的数字组成的新数最小。
算法分析:
每次删除一个数字,选择一个使余下的数最小的数字作为删除对象。当s=1时,在n中删除哪一个数字能达到最小的目的?从左到右每相邻的两个数字比较:若出现减,郎左边大于右边,则删除左边的大数字;若不出现减,即所有数字全部升序,则删除最右边的大数字。当s>l(当然小于n的位数),按上述操作一个一个删除,删除一个达到最小后,再从头即从串首开始,删除第2个,依此分解为s次完成。若删除不到s个后已无左边大于右边的减序,则停止删除操作,打印余下串的左边L-s个数字即可。(x为统计删除数字的个数,m=1表示脱离循环,L为n的长度)。
[流程图]

[问题]
将流程图中的(1)~(5)处补充完整。
第4题:

第5题:
每一个确定的正整数a,都有一个确定的后继数a’,a’也是正整数(一个数的后继数就是紧接在这个数后面的数,例如,1的后继数是2,2的后继数是3等等).那么1()任何正整数的后继数。
第6题:
Count:统计数字单元格的个数
第7题:
自然数、正整数和整数这三个数概念中,()的范围最大。
第8题:
Countif在EXCEL中作用是()
第9题:
q(8,8)
1+q(9,9)
2+q(10,8)
ABC都正确
第10题:
Count是统计个数的函数
Count单条件计数
Count可以统计非空单元格
Count只能统计数字单元格
第11题:
第12题:
非空单元格
文本单元格
数字单元格
单元格
第13题:
已知在in.dat中存有若干个(个数<200)四位十进制数字组成的正整数,函数ReadDat读取这若干个正整数并存入数组 xx中。请编制函数CalValue,其功能要求:1.求出该文件中共有多少个正整数totNum;2.求这些正整数右移1位二进制位后,产生的新数是偶数的数的个数totCnt,以及满足此条件的这些正整数(右移前的值)的算术平均值totPjz。最后main函数调用函数WriteDat把所求的结果输出到out.dat文件中。 注意:部分源程序存放在test.c文件中。 请勿改动数据文件in.dat中的任何数据,主函数main、读函数ReadDat和输出函数WriteDat的内容。

第14题:
给定程序MODll.C中函数fun的功能是:统计一个无符号整数中各位数字值为零的个数,通过形参传回主函数;并把该整数中各位上最大的数字值作为函数值返回。例如,若输入无符号整数30800,则数字值为零的个数为3,各位上数字值最大的是8。
请改正函数fun中指定部位的错误,使它能得出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!

第15题:

第16题:
通过键盘输入一个高精度的正整数n(n的有效位数≤240),去掉其中任意s个数字后,剩下的数字按原左右次序将组成一个新的正整数。编程对给定的n和s,寻找一种方案,使得剩下的数字组成的新数最小。 【样例输入】 178543 S=4 【样例输出】 13
第17题:
Count:统计()的个数
第18题:
两个数相除,如果商不是整数和有限小数,那么就一定是循环小数;那是因为()。
第19题:
下列对函数描述错误的是()
第20题:
对
错
第21题:
每次除得的余数(不看计数单位),都必须是小于除数的正整数
小于正整数的个数是有限的
每次除得的余数(不看计数单位),都必须是小于除数的正整数,而小于正整数的个数是有限的
第22题:
自然数
正整数
整数
第23题:
第24题:
统计非空单元格的个数
单条件计数
多条件计数
统计数字单元格的个数