程序实例Word格式.docx
- 文档编号:13534329
- 上传时间:2022-10-11
- 格式:DOCX
- 页数:13
- 大小:19.99KB
程序实例Word格式.docx
《程序实例Word格式.docx》由会员分享,可在线阅读,更多相关《程序实例Word格式.docx(13页珍藏版)》请在冰豆网上搜索。
if(x==0&
&
y==0)
printf("
z);
elseif(x==0)
%d%d"
y,z);
else
%d%d%d"
x,y,z);
}
2
时间换算(10分).题目内容:
UTC是世界协调时,BJT是北京时间,UTC时间相当于BJT减去8。
现在,你的程序要读入一个整数,表示BJT的时和分。
整数的个位和十位表示分,百位和千位表示小时。
如果小时小于10,则没有千位部分;
如果小时是0,则没有百位部分;
如果小时不是0而分小于10分,需要保留十位上的0;
如果小时是0而分小于10分的,则不需要保留十位上的0。
如1124表示11点24分,而905表示9点5分,36表示0点36分,7表示0点7分。
有效的输入范围是0到2359,即你的程序不可能从测试服务器读到0到2359以外的输入数据。
你的程序要输出这个时间对应的UTC时间,输出的格式和输入的相同,即输出一个整数,表示UTC的时和分。
提醒:
要小心跨日的换算。
一个整数,表示BJT的时和分。
一个整数,表示UTC的时和分。
803输出样例:
3
intmain()
intUTC,BJT,hour1,min1,hour2,min2;
BJT);
hour1=BJT/100;
min1=BJT%100;
if(hour1>
=8)
hour2=hour1-8;
min2=min1;
{
hour2=24+hour1-8;
UTC=hour2*100+min2;
UTC);
奇偶个数(10分).题目内容:
你的程序要读入一系列正整数数据,输入-1表示输入结束,-1本身不是输入的数据。
程序输出读到的数据中的奇数和偶数的个数。
一系列正整数,整数的范围是(0,100000)。
如果输入-1则表示输入结束。
两个整数,第一个整数表示读入数据中的奇数的个数,第二个整数表示读入数据中的偶数的个数。
两个整数之间以空格分隔。
934257-1输出样例:
42
#include<
intx;
intcnt1=0,cnt2=0;
while(x!
=-1)
%d"
x);
if(x!
if(x%2==0)
cnt2+=1;
else
cnt1+=1;
}
}
//printf("
\n"
);
%d%d"
cnt1,cnt2);
4
素数和(10分).题目内容:
我们认为2是第一个素数,3是第二个素数,5是第三个素数,依次类推。
现在,给定两个整数n和m,0<
n<
=m<
=200,你的程序要计算第n个素数到第m个素数之间所有的素数的和,包括第n个素数和第m个素数。
注意:
是第n个素数到第m个素数,不是n和m之间的素数!
两个正整数,第一个表示n,第二个表示m。
一个整数,表示第n个素数到第m个素数之间所有的素数的和,包括第n个素数和第m个素数。
24输出样例:
15
math.h>
intn,m,i,j,k,s=0;
intcnt1=0;
n,&
m);
for(i=2;
i<
=200000;
i++)
k=(int)sqrt(i);
for(j=2;
j<
=k;
j++)
if(i%j==0)
break;
if(j>
k)
cnt1++;
//printf("
%d,%d\n"
cnt1,i);
if(cnt1>
=n)
s+=i;
if(cnt1>
=m)
break;
printf("
s);
5
分解质因数(10分).题目内容:
每个非素数(合数)都可以写成几个素数(也可称为质数)相乘的形式,这几个素数就都叫做这个合数的质因数。
比如,6可以被分解为2x3,而24可以被分解为2x2x2x3。
现在,你的程序要读入一个[2,100000]范围内的整数,然后输出它的质因数分解式;
当读到的就是素数时,输出它本身。
一个整数,范围在[2,100000]内。
形如:
n=axbxcxd或n=n所有的符号之间都没有空格,x是小写字母x。
18输出样例:
18=2x3x3
intf1(longx);
voidf2(longx);
intf=0;
longintn;
%ld"
n);
%ld="
n);
f=f1(n);
if(f==1)
else
f2(n);
intf1(longx)
intret,i,k,y;
k=(int)sqrt(x);
i++)
if(x%i==0)
if(i>
k)
y=1;
y=0;
returny;
voidf2(longdata)
longi=2;
while(data>
1)
if(data%i==0)
data/=i;
if(data!
=1)
printf("
%ldx"
i);
i++;
6
多项式加法(10分).题目内容:
一个多项式可以表达为x的各次幂与系数乘积的和,比如:
2x6+3x5+12x3+6x+20现在,你的程序要读入两个多项式,然后输出这两个多项式的和,也就是把对应的幂上的系数相加然后输出。
程序要处理的幂最大为100。
总共要输入两个多项式,每个多项式的输入格式如下:
每行输入两个数字,第一个表示幂次,第二个表示该幂次的系数,所有的系数都是整数。
第一行一定是最高幂,最后一行一定是0次幂。
注意第一行和最后一行之间不一定按照幂次降低顺序排列;
如果某个幂次的系数为0,就不出现在输入数据中了;
0次幂的系数为0时还是会出现在输入数据中。
从最高幂开始依次降到0幂,如:
2x6+3x5+12x3-6x+20注意其中的x是小写字母x,而且所有的符号之间都没有空格,如果某个幂的系数为0则不需要有那项。
625331216020625321216020输出样例:
4x6+6x5+12x3+12x2+12x+40
#defineC110
{
intpower[C]={0};
//存储数值
intmi,xi;
//幂和系数
do
{scanf("
mi,&
xi);
power[mi]+=xi;
//在幂的位置存储系数的值,相同幂累加
}while(mi!
=0);
//断定幂为0时退出
do
inti;
//中间变量
intpow;
//存储最大幂的值
for(i=100;
i>
=0;
i--)
{if(power[i]!
=0)//系数为0则不计算显示,得出最大幂
{pow=i;
break;
}
}/*因为常数项以及单次幂与其他值有不同,在首项时要剔除*/if(pow==0)
power[0]);
//最大幂数为0则输出系数就可以了,任何数的0次方都为1else
if(pow==1)//最大幂数为1,输出一次项数据加常数,注意!
一次项不用输出幂的值,因为任何数的1次方都是本身
{
if(power[1]==-1)//注意此处的1是不需要的,以下类同
-x"
elseif(power[1]==1)
printf("
x"
else
%dx"
power[1]);
if(power[0]>
0)
+%d"
if(power[0]<
0)
}
else//最大幂数大于或等于2
{
if(power[pow]==-1)
-x%d"
pow);
elseif(power[pow]==1)
x%d"
else
%dx%d"
power[pow],pow);
for(i=pow-1;
1;
i--)//因为最高位以及处理完毕,从最高位-1开始处理,因为常数项和单次项与其他值不同,所以要分开写
if(power[i]>
0)//大于0是+号
{if(power[i]==1)
printf("
+x%d"
printf("
+%dx%d"
power[i],i);
}
if(power[i]<
0)//小于0是-号
{
if(power[i]==-1)printf("
else
}/*一次项*/if(pow
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 程序 实例