C语言上机题目
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
重庆市计算机等级考试C语言上机模拟试题
1、函数adddigit的原型为int adddigit(int num);,其功能是
求num各位数字之和。要求编制该函数并用如下所示
的主函数进行测试,源程序存入test1.c。
# include “stdio.h”
# include “math.h”
void main()
{ int adddigit(int num);
int n;
scanf(“%d”,&n);
printf(“sum=%d\n”,adddigit(n));
}
2、编制程序输出如下所示图形,源程序存入test11.c。
1
121
12321
1234321
123454321
12345654321
3、编制程序实现功能:从键盘上输入若干个值为
0~32767之间的正整数,并将每个整数的各位数字之
和存放在数组a中。要求:被处理数据
的个数由键盘输入指定(小于50个数):
求每个整数各位数字之和的功能用自定
义函数实现:源程序存入test21.c。
4、编制程序实现其6Ⅹ6的整型矩阵的输入
数据,然后求出其最大元素以及最大元
素位置的下标并输出的功能,源程序存
入test41.c。
5、编程实现从键盘为一个6Ⅹ6整型数组输
入数据,然后找出其每一行中的最小值
保存在一维数组中,并输出该一维数组
的所有元素。源程序存入test51.c。
6、函数fac的原型为long fac(it j);,其
功能是利用静态变量实现n!。要求编制
该函数并用如下的主函数进行测试。源
程序存入test61.c。
7、函数chrn的原型为int chrn(char
*s,char c);,其功能是测试字符c
在字符串s中出现的次数。要求编
制该函数并用相应的主函数进行测
试。源程序存入test71.c。
8、求出100~999之间能够被3整除,且至少有一位数字是5的所有整数。源程序存入
test81.c。
9、编写一个程序计算下式之和。
1+(1+2)+(1+2+3)+……+(1+2+3+4+5+6+7+8+9+10). 源程序存入test91.c。
10、Fibonacci数列是这样一个数列,最前面的两个数分别是1和1,从第3个数开始,
数列中每个数是其前面的两个数之和。请编写程序求该数列中前20个数且要求每一行
输出10个数。源程序存入test91.c。
11、下面程序的功能是:统计文本文件f.dat中字符的个数。请输入并完善程序,源程
序存入test22.c。
# include “stdio.h”
void main()
{ FILE *fp;
long num=0l;
if(( (fp=fopen(“f.dat”,”r”))==NULL)
{ printf(“can not open the file\n”);
return;
}
while( fgetc(fp)!=feof(fp) )
num=num+1;
fclose(p);
printf(“num=%d\n”,num);
}
#include
void main()
{
FILE *fp,p;
long num=01;
if(((fp=fopen("f.dat","r"))==NULL))
{
printf("can not open the file\n");
return;
}
while(fgetc(fp)!=feof(fp))
num=num+1;
fclose(fp);
printf("nim=%d\n",num);
}
12、下列程序是将一个二维数组行和列的元素互换,存到另一个二维数组中。请输入并
完善程序。源程序存入test2.c 。
# include “stdio.h”
void main()
{ int ,j,arr1[2][3]={{2,4,6},{1,3,5}},arr2[3][2];
printf(“Array arr1:\n”);
for(i=0;i<2;i++)
{for(j=0; j<3 ;j++)
{ printf(“%5d”,arr1[i][j]);
arr2[j][i]=arr1[i][j];
}
printf(“\n”);
}
printf(“Array arr2:\n”);
for(i=0;i<3;i++)
{for(j=0; j<2 ; j++ )
printf(“%5d”,arr2[i][j]);
printf(“\n”);
}
}
#include
void main()
{
int i,j,arr1[2][3]={{2,4,6},{1,3,5}},arr2[3][2];
printf("Array arr1:\n");
for(i=0;i<2;i++)
{
for(i=0;j<3;j++)
{
printf("%5d",arr1[i][j]);
arr2[j][i]=arr1[i][j];
}
printf("\n");
}
printf("Array arr2:\n");
for(i=0;i<3;i++)
{
for(j=0;j<2;j++)
printf("%5d",arr2[i][j]);
printf("\n");