- 1、本文档共4页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
c模拟题答案
C模拟题答案
填空题(共24分,每空2分)
1.输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。
#include stdio.h
void main()
{
char c;
int letters,space,digit,others;
letters=0;
space=0;
digit=0;
others=0;
printf(please input some characters\n);
while((c= getchar() )!=\n)
{
if(c=ac=z||c=Ac=Z)
letters++;
else if(c== ) space++;
else if(c=0c=9)
digit++;
else
others++;
}
printf(all in all:char=%d space=%d digit=%d others=%d\n,letters,space,digit,others);
}
2.求1+2!+3!+...+10!的和
void main()
{
long n,s=0,t=1;
for(n=1;n=10;n++)
{
t= t*n ;
s= s+t ;
}
printf(1+2!+3!...+10!=%d\n, s );
}
二、程序阅读题(共20分)
1.写出下面程序输入”qwert”的运行结果(5分)
#include stdio.h
void palin(int n);
void main()
{
int i=5;
printf(\n:);
palin(i);
printf(\n);
}
void palin(int n)
{
char next;
if(n=1)
{
printf(%c,getchar());
}
else
{
next=getchar();
palin(n-1);
printf(%c,next);
}
}
(答案:
trewq
)
2.写出下面程序运行结果(5分)
#include stdio.h
main()
{
int a=13,b=11;
printf(a=%d\n,(a1)12);
printf(b=%d\n,(b1)^3);
}
(答案:
a=8
b=6
)
3.写出调用函数f(5,7)的返回值(5分)
int f(int x, int y)
{
if(x=0||y=0) return 1;
else
return (f(x/2,y-3)+1);
}
(答案:
4
)
4.写出调用函数f(5)的返回值(5分)
int f(int n)
{
int x;
if(n==0) return 1;
else
{
x=(-n)*f(n-1);
return x;
}
}
(答案:-120)
三、读下面的程序,找出其中存在的错误。(17分)
判断101-200之间有多少个素数
#include stdio.h
void main()
{
int m,h=0,leap=1,i;
for(m=101; m=200;m++)
{
for(i=2;(i*i)=m;i++)
if(m%i==0) {leap=0; break;}
if(leap) h++;
leap=1;
}
printf(“\nThe total is %d”,h);
return ;
}
(2)将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5。
#include stdio.h
void main()
{
int n,i;
printf(\nplease input a number:\n);
scanf(%d,n);
printf(%d=,n);
for(i=2;i=n;i++)
{
while(n!=i)
{
if(n%i==0)
{
printf(%d*,i);
n=n/i;
}
else
break;
}
}
printf(%d,n);
}
四、编程(共39分)。
编程后通过运行结果验证
1.把一文本文件中的字母一律转换成小写字母输出到另一个文件中,文中其他字符以及换行不变。假设源程序名flc.c,命令行写法如下:
flc test.txt b.txt
其中test.txt为原始的文本文件,b.txt为结果文件。
2.把输入的多个数放入两个链表中(先输入第一个链表,再输入第二个链表,输入-1代表一个链表的输入结束),根据这两个链表生成第三个链表(为只在一个链表出现的数),并输出第三个链表。
文档评论(0)