c语言基础编程题

c语言基础编程题

ID:21510528

大小:74.73 KB

页数:20页

时间:2018-10-22

上传者:U-2494
c语言基础编程题_第1页
c语言基础编程题_第2页
c语言基础编程题_第3页
c语言基础编程题_第4页
c语言基础编程题_第5页
资源描述:

《c语言基础编程题》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

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#includeintmain(){inti,n,sum=0;scanf("%d",&n);for(i=1;i<=n;i++){sum=sum+pow(2,i);}printf("result=%d ",sum);return0;}5-2 近似求PI   (15分)本题要求编写程序,根据下式求piπ的近似值,直到最后一项小于给定精度eps。 frac{pi}{2}=1+frac{1!}{3}+frac{2!}{3times5}+frac{3!}{3times5times7}+cdots+frac{i!}{3times5timescdotstimes(2timesi+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#includeintmain(){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 ",2+2*sum);return0;}5-3 判断素数   (15分)输入一个正整数m,如果它是素数,输出"YES",否则,输出"NO"(素数就是只能被1和自身整除的正整数,1不是素数,2是素数)。输入格式:在一行中输入一个正整数m。输出格式:对每一组输入,在一行中输出结果并换行。输入样例:17输出样例:YES#include#includeintmain(){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 ");elseprintf("NO ");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#includeintmain(){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&&l==0){printf("%d%04d ",i-y,i);l++;} }return0;}5-5 计算函数P(n,x)   (10分)输入一个正整数repeat(0=0)和一个双精度浮点数x,输出函数p(n,x)的值(保留2位小数)。1(n=0)x(n=1)((2n-1)p(n-1,x)-(n-1)*p(n-2,x))/n(n>1)例:括号内是说明输入样例:3(repeat=3)00.9(n=0,x=0.9)1-9.8(n=1,x=-9.8)101.7(n=10,x=1.7)输出样例:p(0,0.90)=1.00p(1,-9.80)=-9.80p(10,1.70)=3.05·时间限制:400ms·内存限制:64MB·代码长度限制:16kB·判题程序:系统默认·作者:王秀·单位:福州大学窗体顶端题目判定解题程序窗体底端 #includeintmain(){doublep(intn,doublex);intrepeat,ri,n;doublex,result;scanf("%d",&repeat);for(ri=1;ri<=repeat;ri++){scanf("%d%lf",&n,&x);result=p(n,x);printf("p(%d,%.2lf)=%.2lf ",n,x,result);}return0;}doublep(intn,doublex){doublet;if(n==0)t=1;elseif(n==1)t=x;elset=((2*n-1)*p(n-1,x)-(n-1)*p(n-2,x))/n;returnt;}5-6 在数组中查找指定元素   (10分)输入一个正整数repeat(0intmain(){intsearch(intlist[],intn,intx);intn,i,a[10],res,x,repeat,index,ri;scanf("%d",&repeat);for(ri=1;ri<=repeat;ri++){scanf("%d",&n);for(i=0;i#defineMAXN10voidsort(inta[],intn);intmain(){inti,n,x,j;inta[MAXN];scanf("%d",&x);for(j=0;jintmain(){doublefact(intn);intm,n;doublesum;scanf("%d%d",&m,&n);if(n>=m)sum=fact(n)/(fact(m)*fact(n-m));printf("result=%.0lf ",sum);return0;}doublefact(intn){inti;doubles=1;for(i=1;i<=n;i++){s=s*i;}returns;}5-9 判断数字字符   (10分)编写函数,判断指定的字符是否是数字字符,如果是函数返回1,否则函数返回0.要求在主调函数中输入该字符,调用函数并输出判断结果。 输入格式:在一行中给出1个字符。输出格式:对于给定输入的字符,输出判断结果yes或no。输入样例:6输出样例:yes输入样例:H输出样例:no·时间限制:400ms·内存限制:64MB·代码长度限制:16kB·判题程序:系统默认·作者:韩玫瑰·单位:济南大学窗体顶端题目判定解题程序窗体底端#includeintmain(){voidpanduan(charch);charch;scanf("%c",&ch);panduan(ch);return0;}voidpanduan(charch){if(ch>='0'&&ch<='9')printf("yes ");else printf("no ");}5-10 函数编程-分段函数   (15分)编写函数,计算下面分段函数的值。输入格式:输入一个实数x的值输出格式:输出y的结果值输入样例:0输出样例:y=-1.000000输入样例:3.5输出样例:y=-8.619337 ·时间限制:400ms·内存限制:64MB·代码长度限制:16kB·判题程序:系统默认·作者:韩玫瑰·单位:济南大学窗体顶端题目判定解题程序窗体底端#include#includeintmain(){doublex,y;scanf("%lf",&x);if(x<=-2)y=-exp(2*x+1)+3;elseif(-23)y=2*log10(3*x+5)-11;printf("y=%lf ",y);return0;}5-11 有理数比较   (10分)本题要求编写程序,比较两个有理数的大小。输入格式:输入在一行中按照“a1/b1a2/b2”的格式给出两个分数形式的有理数,其中分子和分母全是整形范围内的正整数。输出格式: 在一行中按照“a1/b1关系符a2/b2”的格式输出两个有理数的关系。其中“>>”表示“大于”,“<<”表示“小于”,“==”表示“等于”。输入样例1:1/23/4输出样例1:1/2<3/4输入样例2:6/83/4输出样例2:6/8=3/4 ·时间限制:400ms·内存限制:64MB·代码长度限制:16kB·判题程序:系统默认·作者:乔林·单位:清华大学窗体顶端题目判定窗体底端#include#includeintmain(){doublea1,a2,b1,b2;scanf("%lf/%lf%lf/%lf",&a1,&b1,&a2,&b2);if(a1/b1>a2/b2)printf("%.0lf/%.0lf>%.0lf/%.0lf ",a1,b1,a2,b2);elseif(a1/b1==a2/b2)printf("%.0lf/%.0lf=%.0lf/%.0lf ",a1,b1,a2,b2);elseif(a1/b1#includestructlist{charname[11];charnum[17];charphone[17];charsex[2];charbirthday[11];};structlistp[100];intmain(){inti=0;intj=0,N,K;scanf("%d",&N);for(i=0;i=0){printf("%s%s%s%s%s ",p[number].name,p[number].num,p[number].phone,p[number].sex,p[number].birthday);}else{printf("NotFound ");}}return0;}5-13 查找单价最高和最低的书籍   (10分)编写程序,从键盘输入n(n<10)本书的名称和定价并存入结构数组中,查找并输出其中定价最高和最低的书的名称和定价。输出格式语句:printf("highestprice:%.1f,%s ",);printf("lowestprice:%.1f,%s ",); 输入输出示例:括号内为说明,无需输入输出输入样例:3(n=3)ProgramminginC21.5ProgramminginVB18.5ProgramminginDelphi25输出样例:highestprice:25.0,ProgramminginDelphilowestprice:18.5,ProgramminginVB#includestructbook{chara[100];doubleb;};intmain(){inti,j,n;chark;structbooks[100],temp;scanf("%d",&n);for(i=0;is[i].b){temp=s[i];s[i]=s[j];s[j]=temp;}printf("highestprice:%0.1f,%s ",s[0].b,s[0].a);printf("lowestprice:%0.1f,%s ",s[n-1].b,s[n-1].a);return0;}

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
关闭