ImageVerifierCode 换一换
格式:DOCX , 页数:19 ,大小:19.95KB ,
资源ID:5103240      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/5103240.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(C语言基础编程题.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

C语言基础编程题.docx

1、C语言基础编程题 标准化管理处编码BBX968T-XBB8968-NNJ668-MM9NC语言基础编程题5-1求幂之和(15分)本题要求编写程序,计算sum=21 + 22 + 23 + cdots + 2nsum=21+22+23+2n。可以调用pow函数求幂。输入格式:输入在一行中给出正整数nn(le10)。输出格式:按照格式“result = 计算结果”输出。输入样例:5输出样例:result = 62#include#includeint main() int i,n,sum=0; scanf(%d,&n); for(i=1;i=n;i+) sum=sum+pow(2,i); prin

2、tf(result = %dn,sum); return 0;5-2近似求PI(15分)本题要求编写程序,根据下式求pi的近似值,直到最后一项小于给定精度eps。fracpi2=1+frac1!3+frac2!3times 5 + frac3!3times 5times 7+ cdots +fraci!3times 5times cdots times (2times i+1)+ cdots2=1+31!+352!+3573!+35(2i+1)i!+输入格式:输入在一行中给出精度eps,可以使用以下语句来读输入:scanf(%le, &eps);输出格式:在一行内,按照以下格式输出pi的近似值

3、(保留小数点后5位):PI = 近似值输入样例:1E-5输出样例:PI = #include#includeint main() double a=1,b=3,i=1,j=3; double eps,m=1,sum=0; scanf(%le, &eps); while(meps) m=a/b; sum=sum+m; i=i+1; j=j+2; a=a*i; b=b*j; printf(PI = %.5lfn,2+2*sum); return 0;5-3判断素数(15分)输入一个正整数m,如果它是素数,输出YES,否则,输出NO(素数就是只能被1和自身整除的正整数,1不是素数,2是素数)。输入格

4、式:在一行中输入一个正整数m。输出格式:对每一组输入,在一行中输出结果并换行。输入样例:17输出样例:YES#include#includeint main()int i,j,n;scanf(%d,&n);j=sqrt(n);for(i=2;i=j & n!=1)printf(YESn);elseprintf(NOn);return 0;5-4出生年(15分)以上是新浪微博中一奇葩贴:“我出生于1988年,直到25岁才遇到4个数字都不相同的年份。”也就是说,直到2013年才达到“4个数字都不相同”的要求。本题请你根据要求,自动填充“我出生于y年,直到x岁才遇到n个数字都不相同的年份”这句话。输

5、入格式:输入在一行中给出出生年份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:1988 4输出样例1:25 2013输入样例2:1 2输出样例2:0 0001#include#includeint main(

6、)int y,n,a,b,c,d,f10,l=0;scanf(%d %d,&y,&n);for(int i=y;i10000;i+)a=i/1000;b=i/100%10;c=i%100/10;d=i%10;memset(f,0,sizeof(f);fa=1;if(fb!=1)fb=1;if(fc!=1)fc=1;if(fd!=1)fd=1;int sum=0;for(int j=0;j10;j+)sum=sum+fj;if(sum=n&l=0)printf(%d %04dn,i-y,i);l+;return 0;5-5计算函数P(n,x)(10分)输入一个正整数repeat (0repeat

7、=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 (n1)例:括号内是说明输入样例:3 (repeat=3) 0 (n=0,x=1 (n=1,x=10 (n=10,x=输出样例:p(0,=p(1,=p(10,= 时间限制:400ms 内存限制:64MB 代码长度限制:16kB 判题程序:系统默认 作者:王秀 单位:福州大学题目判定解题程序#includeint main()double p(int n,double x);int repeat,ri,n;double x,result

8、;scanf(%d,&repeat);for(ri=1;ri=repeat;ri+)scanf(%d %lf,&n,&x);result=p(n,x);printf(p(%d,%.2lf)=%.2lfn,n,x,result);return 0;double p(int n,double x)double t;if(n=0)t=1;else if(n=1)t=x;elset=(2*n-1)*p(n-1,x)-(n-1)*p(n-2,x)/n;return t;5-6在数组中查找指定元素(10分)输入一个正整数repeat (0repeat10),做repeat次下列运算:输入一个正整数 n (

9、1n=10),然后输入n个整数存入数组a中,再输入一个整数x,在数组a中查找x,如果找到则输出相应元素的最小下标,否则输出Not found。要求定义并调用函数search(list, n, x),它的功能是在数组list中查找元素x,若找到则返回相应元素的最小下标,否则返回-1,函数形参 list 的类型是整型指针,形参n和x的类型是int,函数的类型是int。输出格式语句:printf(index = %dn, );输入输出示例:括号内为说明,无需输入输出输入样例:2 (repeat=2) 3 (n=3)1 2 -6 2 (x=2)5 (n=5)1 2 2 5 40 (x=0)输出样例:i

10、ndex = 1Not found 时间限制:400ms 内存限制:64MB 代码长度限制:16kB 判题程序:系统默认 作者:王秀 单位:福州大学题目判定#includeint main() int search(int list, int n, int x); int n,i,a10,res,x,repeat,index,ri; scanf(%d,&repeat); for(ri=1;ri=repeat;ri+) scanf(%d,&n); for(i=0;in;i+) scanf(%d,&ai); scanf(%d,&x); res=search(a,n,x); if(res!=-1)

11、printf(index = %dn,res); else printf(Not foundn); return 0;int search(int list, int n, int x) int i,q=-1; for(i=0;in;i+) if(listi=x) return i; return q;5-7使用函数的选择法排序(10分)输入一个正整数 repeat (0repeat10),做 repeat 次下列运算:输入一个正整数 n (1n=10),再输入 n 个整数存入数组 a 中,用选择法将数组 a 中的元素按升序排列,最后输出排序后的数组元素。要求定义并调用函数 sort(a,n)

12、,它的功能是采用选择排序算法,将数组 a 的前 n 个元素按从小到大的顺序排序,函数形参 a 的类型是整型指针,形参n的类型是int,函数的类型是void。输出格式:数据直接以空格分隔,最后的一个数据后面没有空格。输入输出示例:括号内为说明,无需输入输出输入样例:3 (repeat=3) 4 (n=4) 5 1 7 63 (n=3) 1 2 35 (n=5) 5 4 3 2 1输出样例:After sorted: 1 5 6 7 After sorted: 1 2 3 After sorted: 1 2 3 4 5 时间限制:400ms 内存限制:64MB 代码长度限制:16kB 判题程序:系

13、统默认 作者:王秀 单位:福州大学题目判定解题程序#include #define MAXN 10void sort( int a, int n );int main()int i,n,x,j;int aMAXN;scanf(%d,&x);for(j=0;jx;j+)scanf(%d, &n);for( i=0; in; i+ )scanf(%d, &ai);sort(a, n);printf(After sorted: );for(i=0;in-1;i+)printf(%d , ai);printf(%d,ai);printf(n);return 0;void sort(int a,int

14、n)int i,x,j,temp;for(i=0;in-1;i+)x=i;for(j=i+1;jn;j+)if(ajax)x=j;if(x!=i)temp=ax;ax=ai;ai=temp;5-8求组合数(15分)本题要求编写程序,根据公式Cm_n = fracn!m!(n-m)!Cnm=m!(nm)!n!算出从nn个不同元素中取出mm个元素(mle nmn)的组合数。建议定义和调用函数fact(n)计算n!,其中n的类型是int,函数类型是double。输入格式:输入在一行中给出两个正整数mm和nn(mle nmn),以空格分隔。输出格式:按照格式“result = 组合数计算结果”输出。题

15、目保证结果在double类型范围内。输入样例:2 7输出样例:result = 21 时间限制:400ms 内存限制:64MB 代码长度限制:16kB 判题程序:系统默认 作者:颜晖 单位:浙江大学城市学院题目判定#includeint main() double fact(int n); int m,n; double sum; scanf(%d %d,&m,&n); if(n=m) sum=fact(n)/(fact(m)*fact(n-m); printf(result = %.0lfn,sum); return 0;double fact(int n) int i; double s=

16、1; for(i=1;i=n;i+) s=s*i; return s;5-9判断数字字符(10分)编写函数,判断指定的字符是否是数字字符,如果是函数返回1,否则函数返回0.要求在主调函数中输入该字符,调用函数并输出判断结果。输入格式:在一行中给出1个字符。输出格式:对于给定输入的字符,输出判断结果yes或no。输入样例: 6输出样例: yes输入样例: H输出样例: no 时间限制:400ms 内存限制:64MB 代码长度限制:16kB 判题程序:系统默认 作者:韩玫瑰 单位:济南大学题目判定解题程序#includeint main() void panduan(char ch); char

17、ch; scanf(%c,&ch); panduan(ch); return 0;void panduan(char ch) if(ch=0 & ch=9) printf(yesn); else printf(non);5-10函数编程-分段函数(15分)编写函数,计算下面分段函数的值。输入格式:输入一个实数x的值输出格式:输出y的结果值输入样例:0输出样例:y=输入样例:输出样例:y= 时间限制:400ms 内存限制:64MB 代码长度限制:16kB 判题程序:系统默认 作者:韩玫瑰 单位:济南大学题目判定解题程序#include#includeint main() double x,y;

18、scanf(%lf,&x); if(x=-2) y=-exp(2*x+1)+3; else if(-2x & x3) y=2*log10(3*x+5)-11; printf(y=%lfn,y); return 0;5-11有理数比较(10分)本题要求编写程序,比较两个有理数的大小。输入格式:输入在一行中按照“a1/b1 a2/b2”的格式给出两个分数形式的有理数,其中分子和分母全是整形范围内的正整数。输出格式:在一行中按照“a1/b1 关系符 a2/b2”的格式输出两个有理数的关系。其中“”表示“大于”,“”表示“小于”,“=”表示“等于”。输入样例1:1/2 3/4输出样例1:1/2 3/4

19、输入样例2:6/8 3/4输出样例2:6/8 = 3/4 时间限制:400ms 内存限制:64MB 代码长度限制:16kB 判题程序:系统默认 作者:乔林 单位:清华大学题目判定#include#includeint main() double a1,a2,b1,b2; scanf(%lf/%lf %lf/%lf,&a1,&b1,&a2,&b2); if(a1/b1a2/b2) printf(%.0lf/%.0lf %.0lf/%.0lfn,a1,b1,a2,b2); else if(a1/b1=a2/b2) printf(%.0lf/%.0lf = %.0lf/%.0lfn,a1,b1,a2

20、,b2); else if(a1/b1a2/b2) printf(%.0lf/%.0lf %.0lf/%.0lfn,a1,b1,a2,b2); return 0;5-12通讯录的录入与显示(10分)通讯录中的一条记录包含下述基本信息:朋友的姓名、出生日期、性别、固定电话号码、移动电话号码。 本题要求编写程序,录入NN条记录,并且根据要求显示任意某条记录。输入格式:输入在第一行给出正整数NN(le10);随后NN行,每行按照格式姓名 生日 性别 固话 手机给出一条记录。其中姓名是不超过10个字符、不包含空格的非空字符串;生日按yyyy/mm/dd的格式给出年月日;性别用M表示“男”、F表示“女”

21、;固话和手机均为不超过15位的连续数字,前面有可能出现+。在通讯录记录输入完成后,最后一行给出正整数KK,并且随后给出KK个整数,表示要查询的记录编号(从0到N-1N1顺序编号)。数字间以空格分隔。输出格式:对每一条要查询的记录编号,在一行中按照姓名 固话 手机 性别 生日的格式输出该记录。若要查询的记录不存在,则输出Not Found。输入样例:3Chris 1984/03/10 F +452 LaoLao 1967/11/30 F 0100 +86QiaoLin 1980/01/01 M 100862 1 7输出样例:LaoLao 0100 +86 F 1967/11/30Not Foun

22、d#include#includestruct listchar name11;char num17;char phone17;char sex2;char birthday11;struct list p100;int main()int i=0;int j=0,N,K;scanf(%d,&N);for(i=0;iN;i+) scanf(%s %s %c %s %s,&pi.name,&pi.birthday,&pi.sex,&pi.num,&pi.phone); scanf (%d, &K);int number;for (i=0;iK;i+)scanf (%d,&number);if (

23、number =0) printf(%s %s %s %s %sn,pnumber.name,pnumber.num,pnumber.phone,pnumber.sex,pnumber.birthday); else printf (Not Foundn); return 0;5-13查找单价最高和最低的书籍(10分)编写程序,从键盘输入 n (n10)本书的名称和定价并存入结构数组中,查找并输出其中定价最高和最低的书的名称和定价。输出格式语句:printf(highest price: %.1f, %sn, );printf(lowest price: %.1f, %sn,);输入输出示例:

24、括号内为说明,无需输入输出输入样例:3 (n=3)Programming in CProgramming in VBProgramming in Delphi25输出样例:highest price: , Programming in Delphi lowest price: , Programming in VB#includestruct bookchar a100;double b;int main()int i,j,n;char k;struct book s100,temp;scanf(%d, &n);for(i=0;in;i+)scanf(%c,&k);gets(si.a);scanf(%lf,&si.b);for(i=0;in-1;i+)for(j=i+1;jsi.b) temp = si;si = sj;sj = temp;printf(highest price: %, %sn,s0.b,s0.a);printf(lowest price: %, %sn,sn-1.b,sn-1.a);return 0;

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1