1、1B试卷1、以下程序的功能是:输入任意整数n(0main()int i,j,n; char (1) ; printf(“Please input n:“);scanf(“%d“,for(i=1;i#include #define LEN 80main()char str1LEN,str2LEN;int n,i;printf(“输入字符串:n“);gets(str1);printf(“输入子字符串的长度:“);scanf( “%d“, (1) );for(i=0;iint main() int n,k,a;printf(“请输入一个正整数: “);scanf(“%d“, n);k=1;do a=
2、n%10;n=n/10;if ( n%10 ,则输出: jDk-7U25-WiN7 。带错误原程序(见C:KSB_3_2.C):#include #include int main() char str30;int i, n;printf(“请输入一个字符串:“);gets(n = strlen(str);for (i=0; i=a for (i=1; i=35 ) c+;if ( cd ) d=c;if ( ai=40 ) d40+;else c=0;p = d;return d40;int main() int t32=40,36,34,35,36,37,36,37,38,40,39,38
3、,37,36,34,36,37,38,36,34,36,37,38,39,40,40,41,40,39,38,37,36;int d40,d;d40=fun(t, 32, d);printf(“最高温度达到40或以上的超高温天有%d天n“, d40);printf(“最高温度在35或以上的连续高温天最多有%d天n“, d);return 0; 6(二)编程题(2小题,共35分,其中第1小题15分,第2小题20分)1编程题1编程要求:请按题中的功能要求,编写程序并能得到正确的结果。将结果(包括B_4_1.c文件和B_4_1.EXE文件)保存到目录C:KS中。程序功能:输入整数n(设1000n99
4、99) ,将n按十进制位分解为各乘式的累加和,格式参见示例,不输出系数为0的乘式。运行示例1:输入:1234输出:1234=1*1000+2*100+3*10+4*1运行示例2:输入:2030输出:2030=2*1000+3*102编程题2编程要求:请按题中的功能要求,编写程序并能得到正确的结果。将结果(包括B_4_2.c文件和B_4_2.EXE文件)保存到目录C:KS中。程序功能:按示例格式完成以下要求。(1) 输入10个整数,保存在数组中。(2) 计算并输出10个整数的最小值(注:数组中可能存在多个最小值) 。(3) 输出数组中每个最小值的下一个元素及其下标(如果数组的最后一个元素正好为最
5、小值,不输出该元素的下一个元素) 。(4) 计算并输出上述元素的平均值(保留小数点后一位小数,如果数组只有一个最小值且正好是最后一个元素,不输出平均值)运行示例1:输入:9 0 2 0 0 1 0 3 6 1输出:min=0,a2=2,a4=0,a5=1,a7=3,ave=1.5说明:10个元素的最小值为0,共出现4次,元素0的下一个元素依次为2、0、1、3,这4个元素的平均值为1.5。运行示例2:输入:60 39 81 90 60 39 90 70 78 39输出:min=39,a2=81,a6=90,ave=85.5说明:10个元素的最小值为39,共出现3次,元素39的下一个元素依次为81
6、、90(最后一个39不存在下一个元素) ,81与90的平均值为85.5。运行示例3:输入:9 0 2 0 0 1 0 3 6 -1输出:min=-1说明:最小值为-1,是最后一个元素且只出现一次,不存在下一个元素,也没有平均值。7C试卷1、 以下程序的功能是:将十进制正整数m转换成k进制(2k9)数的数字输出。例如, 若输入18和2, 则应输出10010(即十进制数18转换成二进制表示是10010)。#include void fun( int m, int k )int a20, i;for( i = 0; m0; i+ ) ai = _(1)_ m /= k;for( ; i0; _(2)
7、 _) printf( “%d“, _ (3) _ ); main()int b, n;printf( “nPlease enter a number and a base:n“ );scanf( “%d %d“, fun(_(4_ ); 以下程序的功能是:输出下列10行10列的矩阵。请填空完成该程序。8#includevoid fill(int b1010,int n) /*按1,2,3,4,5顺序依次填充数组内容*/int i,j;for(i=n-1;iint main() long fib1=fib2=1, fib3;int n;printf(“%6ld%6ld“, fib1,fib2);for (n=1; n,则输出:jdk+#u#+win# 。带错误原程序(见C:KSC_3_2.C):#include int main() char str30; int i;printf(“请输入一个字符串:“);gets(str30);for (i=0; stri!=0; i+) if ( stri = - )stri = +;else if ( stri=0 puts(*str);return 0;