您所在位置: 网站首页 / C语言基础编程题.doc / 文档详情
C语言基础编程题.doc 立即下载
2024-09-09
约8.4千字
约17页
0
107KB
举报 版权申诉
预览加载中,请您耐心等待几秒...

C语言基础编程题.doc

C语言基础编程题.doc

预览

免费试读已结束,剩余 12 页请下载文档后查看

5 金币

下载文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

/NUMPAGES17
5-1求幂之和(15分)
本题要求编写程序,计算sum=2^1+2^2+2^3+\cdots+2^nsum=21+22+23+⋯+2n。可以调用pow函数求幂。
输入格式:
输入在一行中给出正整数nn(\le≤10)。
输出格式:
按照格式“result=计算结果”输出。
输入样例:
5
输出样例:
result=62
#include<stdio.h>
#include<math.h>
intmain()
{
	inti,n,sum=0;
	scanf("%d",&n);
	for(i=1;i<=n;i++)
	{
		sum=sum+pow(2,i);

	}
	printf("result=%d\n",sum);
	return0;
}


5-2近似求PI(15分)
本题要求编写程序,根据下式求\piπ的近似值,直到最后一项小于给定精度eps。
\frac{\pi}{2}=1+\frac{1!}{3}+\frac{2!}{3\times5}+\frac{3!}{3\times5\times7}+\cdots+\frac{i!}{3\times5\times\cdots\times(2\timesi+1)}+\cdots2π=1+31!+3×52!+3×5×73!+⋯+3×5×⋯×(2×i+1)i!+⋯
输入格式:
输入在一行中给出精度eps,可以使用以下语句来读输入:
scanf("%le",&eps);
输出格式:
在一行,按照以下格式输出\piπ的近似值(保留小数点后5位):
PI=近似值
输入样例:
1E-5
输出样例:
PI=3.14158
#include<stdio.h>
#include<math.h>
intmain()
{	
	doublea=1,b=3,i=1,j=3;
	doubleeps,m=1,sum=0;
	scanf("%le",&eps);
	while(m>eps)
	{
		m=a/b;
		sum=sum+m;
		i=i+1;
		j=j+2;
		a=a*i;
		b=b*j;

	}
	printf("PI=%.5lf\n",2+2*sum);

	return0;
}

5-3判断素数(15分)
输入一个正整数m,如果它是素数,输出"YES",否则,输出"NO"(素数就是只能被1和自身整除的正整数,1不是素数,2是素数)。
输入格式:
在一行中输入一个正整数m。
输出格式:
对每一组输入,在一行中输出结果并换行。
输入样例:
17
输出样例:
YES
#include<stdio.h>
#include<math.h>
intmain()
{
inti,j,n;
scanf("%d",&n);
j=sqrt(n);
for(i=2;i<=j;i++)
if(n%i==0)break;
if(i>=j&&n!=1)
printf("YES\n");
else
printf("NO\n");
return0;
}

5-4出生年(15分)

以上是新浪微博中一奇葩贴:“我出生于1988年,直到25岁才遇到4个数字都不一样的年份。”也就是说,直到2013年才达到“4个数字都不一样”的要求。本题请你根据要求,自动填充“我出生于y年,直到x岁才遇到n个数字都不一样的年份”这句话。
输入格式:
输入在一行中给出出生年份y和目标年份中不同数字的个数n,其中y在[1,3000]之间,n可以是2、或3、或4。注意不足4位的年份要在前面补零,例如公元1年被认为是0001年,有2个不同的数字0和1。
输出格式:
根据输入,输出x和能达到要求的年份。数字间以1个空格分隔,行首尾不得有多余空格。年份要按4位输出。注意:所谓“n个数字都不一样”是指不同的数字正好是n个。如“2013”被视为满足“4位数字都不同”的条件,但不被视为满足2位或3位数字不同的条件。
输入样例1:
19884
输出样例1:
252013
输入样例2:
12
输出样例2:
00001
#include<stdio.h>
#include<string.h>
intmain()
{
inty,n,a,b,c,d,f[10],l=0;
scanf("%d%d",&y,&n);
for(inti=y;i<10000;i++)
{
a=i/1000;
b=i/100%10;
c=i%100/10;
d=i%10;
memset(f,0,sizeof(f));
f[a]=1;
if(f[b]!=1)
f[b]=1;
if(f[c]!=1)
f[c]=1;
if(f[d]!=1)
f[d]=1;
intsum=0;
for(intj=0;j<10;j++)
{
sum=sum+f[j];
}
if(sum==n
查看更多
单篇购买
VIP会员(1亿+VIP文档免费下)

扫码即表示接受《下载须知》

C语言基础编程题

文档大小:107KB

限时特价:扫码查看

• 请登录后再进行扫码购买
• 使用微信/支付宝扫码注册及付费下载,详阅 用户协议 隐私政策
• 如已在其他页面进行付款,请刷新当前页面重试
• 付费购买成功后,此文档可永久免费下载
全场最划算
12个月
199.0
¥360.0
限时特惠
3个月
69.9
¥90.0
新人专享
1个月
19.9
¥30.0
24个月
398.0
¥720.0
6个月会员
139.9
¥180.0

6亿VIP文档任选,共次下载特权。

已优惠

微信/支付宝扫码完成支付,可开具发票

VIP尽享专属权益

VIP文档免费下载

赠送VIP文档免费下载次数

阅读免打扰

去除文档详情页间广告

专属身份标识

尊贵的VIP专属身份标识

高级客服

一对一高级客服服务

多端互通

电脑端/手机端权益通用