- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实验六 函数的使用
实验目的:
1、熟悉函数的定义、声明及使用,能利用函数解决一些基本问题;
2、继续熟悉数组、字符串的使用,能用基本算法解决问题。
1、Fibonacci 数的后 9 位
Fibonacci 数列定义如下:f(0)=1, f(1)=1,f(n)=f(n-1)+f(n-2), 当 n=2 时给出 n,求出 f(n)的后 9 位并输出,不足 9 位,请在前面补 0。
有多组测试数据。每一组测试数据只有一行,为整数 n。0=n300。对应每组输入,输出一行结果。该行不能有其它多余的符号。
2
000000002
150
907386349
#include stdio.h
int main()
{
int i,n,f0,f1,f;
freopen(1.in,r,stdin);
freopen(1.out,w,stdout);
while(scanf(%d,n)==1)
{
f0=f1=f=1;
for(i=2;i=n;i++)
{
f=(f0+f1)%1000000000;
f0=f1;
f1=f;
}
printf(%09d\n,f);
}
return 0;
}
2、质因子分解
读入一个自然数,将 n 分解为质因子连乘的形式输出。
有多组测试数据。输入的第一行是整数 T(0T=10000),表示测试数据的组数。每一组测试数据只有一行,包含待分解的自然数 n。该行没有其它多余的符号。1n2^31。对应每组输入,输出一行分解结果,具体样式参看样例。该行不能有其它多余的符号。
3
756=2*2*3*3*3*7
756
2=2
2
2093333998=2*7*7*17*43*29221
2093333998
#include stdio.h
#include math.h
#define N 70000
int p[N]={0};
int prime[10000],pn;
void primes()
{
int i,k,n;
k=1;
n=int(sqrt(N))+2;
p[0]=p[1]=1;
while(++kn)
{
for(;(kn) (p[k]==1);k++);//找到下一个素数
if(kn)
for(i=k*k;iN;i+=k)
p[i]=1;//把素数的倍数筛掉
}//循环完后,数组中为 0 的元素下标代表的数即为素数
for(pn=0,i=0;iN;i++)
if(p[i]==0)
prime[pn++]=i;
}
int main()
{
int i,a,b,k,s,T;
freopen(1.in,r,stdin);
freopen(1.out,w,stdout);
primes();
scanf(%d,T);
while(T--)
{
scanf(%d,a);
b=a;//保存一个备份
k=int(sqrt(a))+2;
i=0;//素数表下标
s=0;//输出的质因子个数
printf(%d=,a);
while(prime[i]k)
{
if(a%prime[i]==0)
{
a/=prime[i];
s++;
if(s==1)
printf(%d,prime[i]);
else
printf(*%d,prime[i]);
}
else
i++;
}
if(s==0)
printf(%d,b);
else if(a1)
printf(*%d,a);
printf(\n);
}
return 0;
}
3、我的格式我作主
P 刚刚学 C 语言,感觉非常有趣,他希望能把朋友的信息按自己希望的格式输出,你能帮帮他吗?(本题要求用结构体存储读入的数据)
输入的第一行是四个整数 n、d1、d2、f,表示随后有 n 行数据、第一列数据输出宽度为 d1,第二列输出宽度为 d2,f 为 0 表示数据左对齐,否则右对齐。下面 n 行的每一行开始是一个不含空格的字符串,随后是一个空格,空格后是一个整数。字符串的长度不超过 20,整数的大小不超过整型数据的存储范围。1n20,0=d1,d2=40。输出有 n 行,对应读入的 n 行数据。
2 2 8 1
abc 123
abc 123
asdfgh 8760
asdfgh 8760
#include stdio.h
struct friend
{
char name[21];
int age;
};
int main()
{
char ch[100];
int i,n,d1,d2,f;
struct friend a[20];
freopen(1.in,r,stdin);
freopen(1.out,w,stdout);
scanf(%d %d %d %d,n,d1,d2,f);
if(f==0)
sprintf(ch,%%-%ds%%-%dd\n,d1,d2
文档评论(0)