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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

C语言程序设计题目.docx

1、C语言程序设计题目A C语言程序设计教程(第三版)课后习题定义一个结构体变量(包括年、月、日)。计算该日在本年中是第几天,注意闰年问题。struct int year; int month; int day;tian;int main() int days(int year,int month,int day); int s; scanf(%d %d %d,&,&,&; s=days,; printf(%dn,s);int days(int year,int month,int day) int i=month,s,a13=0,31,28,31,30,31,30,31,31,30,31,30,

2、31,sum=0,leap,j; if(year%4=0) if(year%100=0) if(year%400=0) leap=1; else leap=0; else leap=1; else leap=0; if(leap&i2) for(j=1;ji;j+)sum=sum+aj; s=sum+day+1; else for(j=1;ji;j+) sum=sum+aj; s=sum+day; return(s);B C语言程序设计教程(第三版)课后习题现有有N个学生的数据记录,每个记录包括学号、姓名、三科成绩。编写一个函数input,用来输入一个学生的数据记录。编写一个函数print,打

3、印一个学生的数据记录。在主函数调用这两个函数,读取N条记录输入,再按要求输出。 N100【考虑用什么做函数的参数结构体变量,还是指向结构体的指针变量,还是用结构体数组名】非结构体做法#includeint main() int i,n; int a100,b100,c100; char e10081,f10081; scanf(%d,&n); for(i=1;i=n;i+) scanf(%s%s%d%d%d,ei,fi,&ai,&bi,&ci); for(i=1;i=n;i+) printf(%s,%s,%d,%d,%dn,ei,fi,ai,bi,ci); return 0;C 结构体训练有N

4、个学生,每个学生的数据包括学号、姓名、3门课的成绩,从键盘输入N个学生的数据,要求打印出3门课的总平均成绩,以及最高分的学生的数据(包括学号、姓名、3门课成绩)注意:刻画学生的数据类型必须用结构体类型。不能用多个数组解决#includeint main() struct stu int num; char name20; int score1; int score2; int score3; boy1024; int N,i,s,s1=0,s2=0,s3=0,max=0,c; float ave1,ave2,ave3; scanf(%d,&N); for(i=0;imax) max=s; c=

5、i; ave1=(s1*/(N*; ave2=(s2*/(N*; ave3=(s3*/(N*; printf(%.0f %.0f %.0fn,ave1,ave2,ave3); printf(%d %s %d %d %dn,boyc.num,boyc.name,boyc.score1,boyc.score2,boyc.score3);D 矩阵转置输入N*N(N100)的矩阵,输出它的转置矩阵。#includeint main() int N,a100100,i,j,b100100; scanf(%dn,&N); for(i=0;iN;i+) for(j=0;jN;j+) scanf(%d,&ai

6、j); for(i=0;iN;i+) for(j=0;jN;j+) bji=aij; for(i=0;iN;i+) for(j=0;jN-1;j+) printf(%d ,bij); printf(%dn,biN-1); E 求矩阵的外围元素之和求矩阵的外围元素之和#includeint main() int a1010,i,j,N,s=0; scanf(%dn,&N); for(i=0;iN;i+) for(j=0;j=n=10,n=m=100)n和m由键盘输入,并将这些素数存储到数组a中并输出(每个素数后面带一个空格)要求:(1)编写如下接口的功能函数:int fun(int n),该函数

7、的功能是判断n是不是素数。若是,返回1,若不是返回0。 (2)main函数去调用该功能函数#includeint fun(int n) int t; for(t=2;tn;t+) if(n%t=0)break; if(tn)return 0; else return 1;int main() int n,m,i,a90,j=0,b; scanf(%d,%d,&n,&m); for(i=n;i=m;i+) if(fun(i)=1) aj+=i; for(b=0;bj;b+) printf(%d ,ab);G 删除字符串中的特殊符号指定字符串中仅包含字母(含大小写),空格和星号*,编写自定义函数f

8、un,删除其中的*。程序的主体框架已经提供在下面,可以直接复制粘贴到答题框。注意仅能改动注释之内的内容,注释外内容不得修改,否则将被判违规。void fun(char *p) /* 注释1: 答题请在本行与注释2之间编写程序。本行注释不得删除 */ char *p1,*p2; for(p1=p2=p;*p1;p1+) if(*p1!=*) *p2+=*p1; *p2=0; return p;/* 注释2: 答题请在本行与注释1之间编写程序。本行注释不得删除 */int main() char b1024; while(gets(b)!=0) fun(b); printf(%sn,b); ret

9、urn 1;H 冒泡排序下列给定程序中函数fun的功能是:用冒泡法对6个字符串按由小到大的顺序进行排序。 请改正程序中的错误,使它能得出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构. 改错位置已经标注为found,所有改错只能在found附近修改。#include #include #define MAXLINE 20 fun(char* pstr6) int i,j; char *p; for(i=0;i5;i+) /* found */ for(j=i+1;j0) p=*(pstr+i); /* found */ *(pstr+i)=*(pstr+j);

10、*(pstr+j)=p; int main() int i; char *pstr6,str6MAXLINE; for(i=0;i6;i+) pstri=stri; for(i=0;i6;i+) scanf(%s,pstri); fun(pstr); printf(The String after sorting:n); for(i=0;i6;i+) printf(%sn,pstri); return 0; I 2015C二级考试无纸化操作题(2)下列给定程序中,函数fun的功能是:把形参a所指数组中的最小值放在元素aO中,接着把a所指数组中的最大值放在a1元素中;再把a所指数组元素中的次小值

11、放在a2中,把a所指数组元素中的次大值放在a3,依此类推。 例如,若a所指数组中的数据最初排列为:9,1,4,2,3,6,5,8,7;则按规则移动后,数据排列为:1,9,2,8,3,7,4,6,5。形参n中存放a所指数组中数据的个数。 规定fun函数中的max存放当前所找的最大值,px存放当前所找最大值的下标。 请在程序的下画线处填入正确的内容并将下画线删除,使程序得出正确的结果。 注意:部分源程序给出如下。 不得增行或删行,也不得更改程序的结构!void fun(char *p) /* 注释1: 答题请在本行与注释2之间编写程序。本行注释不得删除 */ char *p1,*p2; for(p

12、1=p2=p;*p1;p1+) if(*p1!=*) *p2+=*p1; *p2=0; return p;/* 注释2: 答题请在本行与注释1之间编写程序。本行注释不得删除 */int main() char b1024; while(gets(b)!=0) fun(b); printf(%sn,b); return 1;J 编辑部的故事(1)文艺青年杂志社对作者按字符数付稿酬。编辑部的编辑遇到一个烦心事,最近作者群中流行“咆哮体”文书,一句话里带有很多个感叹号,而且咆哮体中经常混杂着“有木有”和“尼玛”这样无用的词语,使得杂志的额外支出大大增加。你需要帮助解决这一个问题,将文本中多个连续的感

13、叹号,无用的“有木有”和“尼玛”等无用的词。K 39下面程序中函数fun的功能是:统计p2子字符串在p1所指的主字符串中出现的次数。请改正程序中的错误,使得它能得出正确结果#include int fun(char *p1,char *p2) int i,j,k,num=0;/* found */ for(i=0;p1i;i+) for(j=i,k=0;p2k=p1j;k+,j+) if(p2k+1=0) num+; Break; return num;int main() char str80,substr80; gets(str); gets(substr); printf(%d,fun(

14、str,substr); return 0;L 33编写函数fun,其功能是找出MN的二维浮点数组中最大元素的值,将这个数输出。(M,N均小于100)void fun(float *p,int M,int N) float mx=*(p+0);/* begin */ int i; for(i=0;imx) mx=*p;/* end */printf(%.4f,mx);int main() int a100100,M,N,i,j; scanf(%d%d,&M,&N); for(i=0;iM;i+) for(j=0;jN;j+) scanf(%f,&aij); fun(&a00,M,N); ret

15、urn 0;M 第七章之找到第一名(1)某市进行了一次英语竞赛,一共有N个人报名参加(N1000000),按照报名顺序分别是1号N号。英语竞赛的得分范围是0100分,可能会有分存在。现在给你N的值和按照号码排列的得分,要求输出第一名的号码。若是有并列第一名则需要同属输出多个第一名的号码。#includeint main() int a100,N,i,max=0,n; scanf(N=%d,&N); for(i=0;imax) max=ai; for(i=0;iN;i+) if(max=ai) n=i+1; printf(%dn,n); N 第七章之删除数组元素(1)输入N个大小范围在0100(

16、含0和100)的整数(N100),并未排序且不重复。 从中寻找一个指定的数的下标号(从1开始),从数组中删除, 并将剩余的数组内容输出。 #include int main() int n,a99,i,b; scanf(N=%d,&n); for(i=0;i=n-2;i+) scanf(%d,&ai); scanf(%d,&an-1); scanf(%d,&b); if(b!=n) for(i=0;i=b-2;i+) Printf(%d,ai); for(i=b;i=n-2;i+) printf(%d,ai); printf(%d,an-1); else for(i=0;i=n-3;i+) p

17、rintf(%d,ai); printf(%d,an-2); O 第七章之冒泡排序法(1)使用冒泡排序法对数组元素进行排序,要求输出每一趟排序后的数组内容。数组大小N10,数组元素定为正整型。#includeint main() int a10,i=0,j,n,t,m; while(scanf(%d,&ai)!=EOF) i+; n=i; for(i=0;in-1;i+) for(j=0;jaj+1) t=aj; aj=aj+1; aj+1=t; printf(%d,a0); for(m=1;mn;m+) printf(,%d,am); printf(n); P 所有串长超过k的字符串中后面的

18、字符删除函数fun的功能是:在形参ss所指字符串数组中,将所有串长超过k(K=N)。的字符串中后面的字符删除,只保留前面的k个字符。ss所指字符串数组中共有M(M=5)个字符串,且串长小于N(N=10)。 #include void fun(char ss11,int M,int k) /* your code start */int i=0;while(iM) ssik=0; i+; /* your code end */ int main() int M,k,i; char ss511; scanf(%d,&M); scanf(%d,&k); gets(ss0); for(i=0;iM;i

19、+) gets(ssi); fun(ss,M,k); for(i=0;iM;i+) puts(ssi); return 0; Q 字符串按长度由短到长进行排序 函数fun的功能是:在形参ss所指字符串数组中,将所有串长超过k(K=N)。的字符串中后面的字符删除,只保留前面的k个字符。ss所指字符串数组中共有M(M=5)个字符串,且串长小于N(N=10)。 #include #include void fun(char ss11,int M) char *ps5,*tp; int i,j,k; for(i=0;iM;i+) psi=ssi; for(i=0;iM-1;i+) k=i; for(j

20、=i+1;jstrlen(psj) k=j; tp=psi; psi=psk; psk=tp; for(i=0;iM;i+) puts(psi);int main() int M,i; char ss511; scanf(%d,&M); gets(ss0); for(i=0;iM;i+) gets(ssi); fun(ss,M);R 补齐字符串函数fun的功能是:求出形参ss所指字符串数组中最长字符串的长度,其余字符串左边用字符*补齐,使其与最长的字符串等长。字符串数组中共有M(M=5)个字符串,且串长小于N。(N=10)#include #include void fun(char ss11

21、,int M) int i,j,k=0,n,m,len; for(i=0;in) n=len; k=i; for(i=0; i=0; j-) ssim-=ssij; for(j=0; jn-len; j+) ssij=*; int main() int M,i; char ss511; scanf(%d,&M); gets(ss0); for(i=0;iM;i+) gets(ssi); fun(ss,M); for(i=0;iM;i+) puts(ssi);S 每个单词的第一个字母改成大写读入一个英文文本行,将其中每个单词的第一个字母改成大写,然后输出此文本行(这里单词是指由空格隔开的字符串)

22、。#include #include #include void upfst(char *p) if(*p!=0) *p=toupper(*p); p+; for(;*p;p+) if(*(p-1)= &*p!= ) *p=toupper(*p);int main() char chrstr81; gets(chrstr); upfst(chrstr); printf(%sn,chrstr); return 0;T 文本分析2函数fun的作用是:统计整型变量m中各数字出现的次数,并存放到数组a中,其中:a0存放0出现的次数,a1存放1出现的次数, a9存放9出现的次数#include void

23、 fun(int m, int a10) int i;for(i=0;i0) i=m%10; ai+; m=m/10;int main() int m, a10,i; scanf(%d, &m); fun(m, a); for (i=0; i10; i+) printf(%d,ai); printf(n);U 删除所有串长超过k的字符串函数fun的功能是:从形参ss所指字符串数组中,删除所有串长超过k的字符串,函数返回剩余字符串的个数,并输出剩下的字符串。ss所指字符串数组中共有M(M=5)个字符串,且串长小于N(N=10),#include #include int fun(char ss11,int M,int k) int i,j=0,l; for(i=0;iM;i+) l=strlen(ssi); if(l=k) strcpy(ssj+,ssi); return j;int main() int M,k,i,f; char ss511; scanf(%d,&M); scanf(%d,&k); gets(ss0); for(i=0;iM;i+) gets(ssi); f=fun(ss,M,k); printf(%dn,f); for(i=0;if;i+) puts(ssi);V 字符串比较

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

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