重庆市计算机等级考试C语言上机模拟试题
重庆市计算机等级考试C语言上机模拟试题 1、 函数adddigit的原型为int adddigitint num;,其功能是求num各位数字之和。要求编制该函数并用如下所示的主函数进行测试,源程序存入。 include “” include “” void main { int adddigitint num; int n; scanf“d”,n; printf“sumd\n”,adddigitn; } 2、 编制程序输出如下所示图形,源程序存入。 1 121 12321 1234321 1 3、 编制程序实现功能从键盘上输入若干个值为032767之间的正整数,并将每个整数的各位数字之和存放在数组a中。要求被处理数据的个数由键盘输入指定(小于50个数)求每个整数各位数字之和的功能用自定义函数实现源程序存入。 4、 编制程序实现其6Ⅹ6的整型矩阵的输入数据,然后求出其最大元素以及最大元素位置的下标并输出的功能,源程序存入。 5、 编程实现从键盘为一个6Ⅹ6整型数组输入数据,然后找出其每一行中的最小值保存在一维数组中,并输出该一维数组的所有元素。源程序存入。 6、 函数fac的原型为long facit j;,其功能是利用静态变量实现n。要求编制该函数并用如下的主函数进行测试。源程序存入。 7、 函数chrn的原型为int chrnchar *s,char c;,其功能是测试字符c在字符串s中出现的次数。要求编制该函数并用相应的主函数进行测试。源程序存入。 8、 求出100999之间能够被3整除,且至少有一位数字是5的所有整数。源程序存入。 9、 编写一个程序计算下式之和。 1(12)(123)12345678910. 源程序存入。 10、Fibonacci数列是这样一个数列,最前面的两个数分别是1和1,从第3个数开始,数列中每个数是其前面的两个数之和。请编写程序求该数列中前20个数且要求每一行输出10个数。源程序存入。 11、 下面程序的功能是统计文本文件中字符的个数。请输入并完善程序,源程序存入。 include “” void main { FILE *fp; long num0l; if NULL { printf“can not open the file\n”; return; } while numnum1; fclosep; printf“numd\n”,num; } 12、 下列程序是将一个二维数组行和列的元素互换,存到另一个二维数组中。请输入并完善程序。源程序存入 。 include “” void main { int ,j,arr1[2][3]{{2,4,6},{1,3,5}},arr2[3][2]; printf“Array arr1\n”; fori0;i2;i {forj0; ;j { printf“5d”,arr1[i][j]; arr1[i][j]; } printf“\n”; } printf“Array arr2\n”; fori0;i3;i {forj0; j2 ; printf“5d”,arr2[i][j]; printf“\n”; } } 13、 下述程序的功能是在数组中同时查找最大元素下标和最小元素下标,并分别存放在main函数的变量max和min中。请输入程序并填空,源程序存入。 include “” void findint *a,int n,int *max,int *min { int k; *max*min0; fork1;kn;k { ifa[k]a[*max] ifa[l]a[*min] *mink; } } void main { int x[]{5,8,-7,2,12,7,3,10}; int max,min; find ; printf“\nd,d\n”,max,min; } 14、 下面程序的功能是输入两个字符串,将第二个字符串中ASCII码值为偶数的字符连接在第一个字符串的后面。请输入程序并填空,源程序存入。 include “” void main { char s1[80],s2[40]; int I,j; printf“please two stings”; getss1; getss2; fori0; ;i; forj0;s2[j]’\0’;j