c语言程序设计题目及答案
更新时间:2024-05-01 01:20:01 阅读量: 综合文库 文档下载
一、程序设计 共113题 第1题 题号:319 #include \void wwjt();
int fun(int m) {
int i,k=1;
if(m<=1) k=0; for(i=2;i return k; } 第2题 题号:351 ----------- 功能:请编一个函数void fun(int tt[M][N],int pp[N]), tt指向一个M行N列的二维数组,求出二维数组每列 中最大元素,并依次放入pp所指一维数组中。二维 数组中的数已在主函数中赋予。 #include void fun(int tt[M][N],int pp[N]) { int i,j; for(j=0;j pp[j]=tt[0][j]; for(i=1;i 第3题 题号:375 功能:从键盘上输入任意实数,求出其所对应的函数值。 z=e的x次幂(x>10) z=log(x+3) (x>-3) z=sin(x)/((cos(x)+4) #include double y(float x) { double z; if(x>10) z=exp(x); else if(x>-3) z=log(x+3); else z=sin(x)/(cos(x)+4); return(z); } 第4题 题号:334 功能:求给定正整数n以内的素数之积。(n<28) #include long fun(int n) { long i,k; long s=1; for(i=2;i<=n;i++) {for(k=2;k 第5题 题号:333 功能:计算并输出给定整数的所有因子之积(包括自身)。 规定这个整数的值不大于50。 #include long int fun(int n) { 1 long s=1,i; for(i=2;i<=n;i++) if(n%i==0)s=s*i; return s; } 第6题 题号:50 功能:求出菲波那契数列的前一项与后一项之比的极限的 近似值例如:当误差为0.0001时,函数值为0.618056。 #include float fun() { float f1=1,f2=1,f3; float r1=2,r2; do {r2=r1; r1=f1/f2; f3=f1+f2; f1=f2; f2=f3; }while(fabs(r1-r2)>1e-4); return r1; } 第7题 题号:394 功能:产生20个[30,120]上的随机整数放入二维数组 a[5][4]中, 求其中的最小值。#include \#include int amin(int a[5][4]) { int i,j,s; s=a[0][0]; for(i=0;i<5;i++) for(j=0;j<4;j++) if(s>a[i][j])s=a[i][j]; return(s); } 第8题 题号:337 功能:将两个两位数的正整数a、b合并形成一个整数放在 c中。合并的方式是:将a数的十位和个位数依次放 在c数的百位和个位上, b数的十位和个位数依次放 在c数的十位和千位上。 例如:当a=45,b=12。调用该函数后,c=2415。 include void fun(int a, int b, long *c) { *c=a/10*100+a+b/10*10+b*1000; } 第9题 题号:388 功能:编写函数判断一个整数能否同时被3和5整除,若能 则返回值为1,否则为0。调用该函数求出15~300之 间能同时被3和5整除的数的个数。 #include int sum(int n) { if(n%3==0&&n%5==0) return(1); return(0);} 第10题 题号:16 功能:编写函数fun求1!+2!+3!+ ?? +n!的和,在main函 数中由键盘输入n值,并输出运算结果。请编写fun 函数。 例如:若n值为5,则结果为153。 #include long int fun(int n) { int i; 2 float f=1,s=0; for(i=1;i<=n;i++) {f=f*i; s=s+f;} return s; 第11题 题号:329 功能:对某一正数的值保留2位小数,int fun(int n) { int sum,i; sum =0; for(i=1;i<=n;i++) {sum=sum+i;} return(sum); 并对第三位进行四舍 五入。 #include double fun(float h) { int i; i=(int)(h*1000); if(i>=5) return(int)(h*100+1)/100.0; else return(int)(h*100)/100.0; 第12题 题号:410 功能:编写函数fun将一个数组中的值按逆序存放,并在 main()函数中输出。 例如:原来存顺序为8,6,5,4,1。要求改为:1,4,5,6,8。 #include int fun(int arr[],int n) { int i,t; for(i=0;i arr[i]=arr[n-1-i]; arr[n-1-i]=t; } 第13题 题号:327 功能:能计算从1开始到n的自然数的和,n由键盘输入, 并在main()函数中输出。 #include 第14题 题号:507 功能:编写函数fun求一个字符串的长度,在main函数中 输入字符串,并输出其长度。 #include int fun(char *p1) { char *p; int n=0; p=p1; while(*p++) n++; return n; 第15题 题号:44 功能:求出二维数组周边元素之和,作为函数值返回。二 维数组的值在主函数中赋予。 #define M 4 #define N 5 #include int fun(int a[M][N]) { int s=0; int i,j; for(i=0;i s=s+a[i][0]+a[i][N-1]; for(j=1;j s=s+a[0][j]+a[M-1][j]; return s; 第16题 题号:364 功能:求一个四位数的各位数字的立方和。 #include 3 void wwjt(); int fun(int n) { int d,s=0; while (n>0) {d=n; s+=d*d*d; n/=10; } return s; 第17题 题号:339 功能:判断整数x是否是同构数。若是同构数,函数返回1; 否则返回0。x的值由主函数从键盘读入,要求不大 于100。 说明:所谓“同构数”是指这样的数,这个数出现在它的 平方数的右边。 例如:输入整数5,5的平方数是25,5是25中右侧的数,所 以5是同构数。 #include int fun(int x) { int k; k=x*x; if((k==x)||(k0==x)) return 1; else return 0; 第18题 题号:331 功能:找出一个大于给定整数且紧随这个整数的素数,并 作为函数值返回。 #include int fun(int n) { int i,k; for(i=n+1;;i++){ for(k=2;k 第19题 题号:317 功能:求出N×M整型数组的最大元素及其所在的行坐标及 列坐标(如果最大元素不唯一,选择位置在最前面 的一个)。 例如:输入的数组为: 1 2 3 4 15 6 12 18 9 10 11 2 求出的最大数为18,行坐标为2,列坐标为1。 #define N 4 #define M 3 #include int Row,Col; int fun(int array[N][M]) { int max,i,j; max=array [0][0]; Row=0; Col=0; for(i=0;i 第20题 题号:360 【程序设计】 4 功能:把20个随机数存入一个数组,然后输出该数组中的 最大值。 #include int vector[VSIZE] ; int fun(int list[],int size) void wwjt(); float fun(float x) { float y; if (x<0 && x!=-3.0) y=x*x+x+6; else if(x>=0 && x<10.0 && x!=2.0 && x!=3.0) { int i,max=0; for(i=1; i 第21题 题号:355 功能:对长度为8个字符的字符串,将8个字符按降序排列。 例如:原来的字符串为CEAedcab,排序后输出为edcbaECA。 #include void fun(char *s,int num) { int i,j; char t; for(i=0;i for(j=i+1;j { t=s[i];s[i]=s[j];s[j]=t;} 第22题 题号:405 功能:编写函数fun计算下列分段函数的值: x^2+x+6 x<0且x≠-3 f(x)= x^2-5x+6 0≤x<10且x≠2及x≠3 x^2-x-1 其它 #include y=x*x-5*x+6; else y=x*x-x-1; return y; 第23题 题号:338 功能:编写程序,实现矩阵(3行3列)的转置(即行列互换) 例如:输入下面的矩阵: 100 200 300 400 500 600 700 800 900 程序输出: 100 400 700 200 500 800 300 600 900 #include int fun(int array[3][3]) { int i,j,t; for(i=0; i < 3; i++) for(j=0; j < i; j++) { t=array[i][j]; array[i][j]=array[j][i]; array[j][i]=t; } 第24题 题号:392 功能:求一批数中最大值和最小值的积。 #define N 30 #include \#include int max_min(int a[],int n) { 5 { int i,n=0; for(i=0;i<=strlen(str)-2;i++) if((str[i]==substr[0])&&(str[i+1]==substr[1])) n++; return n; 第48题 题号:322 功能:判断一个整数w的各位数字平方之和能否被5整除, 可以被5整除则返回1,否则返回0。 #include int k,s=0; do {s=s+(w)*(w); w=w/10; }while(w!=0); if(s%5==0)k=1; else k=0; return(k); 第50题 题号:411 功能:对任意输入的 x,用下式计算并输出 y 的值。 -1 x<0 y= 0 x=0 1 x>0 #include 答案: int m; if(n<0) m=-1; else if(n==0) m=0; else m=1; return m; 或 int m; if(n>=0) if(n>0) m=1; else m=0; else m=-1; return m; 第51题 题号:320 功能:在键盘上输入一个3行3列矩阵的各个元素的值(值 为整数),然后输出主对角线元素的积,并在fun() 函数中输出。 #include main() { int i,j,s,a[3][3];; for(i=0;i<3;i++) { for(j=0;j<3;j++) scanf(\ } s=fun(a); printf(\ wwjt(); } int fun(int a[3][3]) { int sum; int i,j; sum=1; for(i=0;i<3;i++) sum=sum*a[i][i]; return sum; 第52题 题号:318 /功能:输入一个字符串,过滤此串,只保留串中的字母字 符,并统计新生成串中包含的 11 字母个数。 例如:输入的字符串为ab234$df4,新生成的串为abdf 。 #include fun(char *ptr) { int i,j; for(i=0,j=0;*(ptr+i)!='\\0';i++) if(*(ptr+i)<='z'&& *(ptr+i)>='a'||*(ptr+i)<='Z' && *(ptr+i)>='A') {*(ptr+j)=*(ptr+i); j++;} *(ptr+j)='\\0'; return(j); 第53题 题号:357 功能:根据整型形参m,计算如下公式的值: y=1/5+1/6+1/7+1/8+1/9+1/10...+1/(m+5) 例如:若m=9,则应输出:1.168229 #include double fun(int m) { double y=0; int i; for(i=0; i<=m; i++) {y+=1.0/(i+5); } return(y); 第54题 题号:367 功能:找出一批正整数中的最大的偶数。 #include int fun(int a[],int n) { int i,amax=-1; for(i=0;i if(a[i]%2==0) if (a[i]>amax) amax=a[i]; return amax; 第55题 题号:374 功能:编写函数实现两个数据的交换,在主函数中输入任 意三个数据,调用函数对这三个数据从大到小排序。 #include void swap(int *a,int *b) {int k; k=*a; *a=*b; *b=k; 第56题 题号:353 功能:对长度为7个字符的字符串,除首、尾字符外,将其 余5个字符按降序排列。 例如:原来的字符串为CEAedca,排序后输出为CedcEAa。 #include void fun(char *s,int num) { int i,j; char t; for(i=1;i for(j=i+1;j { t=s[i];s[i]=s[j];s[j]=t;} 第57题 题号:409 题目:输入华氏温度求摄氏温度。转换公式为 c=5/9(f-32), 输出结果取两位小数。 void wwjt(); double fun(double m) { 答案: float n; 12 n=(5.0/9.0)*(m-32); return n; 第58题 题号:324 功能:能计算从1开始到n的自然数中偶数的平方的和,n由 键盘输入,并在main()函数中输出。(n是偶数) #include int sum,i; sum =0; for(i=2;i<=n;i=i+2) { sum=sum+i*i;} return(sum); 第59题 题号:53 功能:求一个四位数的各位数字的立方和 include int fun(int n) { int d,k,s=0; while (n>0) {d=n; s+=d*d*d; n/=10; } return s; 第60题 题号:389 功能:编写函数求表达式的和(n的值由主函数输入)。 1-1/2+1/3-1/4+......+1/m 例如:当n=20时,表达式的值为0.668771。 #include double sum(int n) { float s=0; int i,k=1; for(i=1;i<=n;i++) { s=s+k*1.0/i; k=-k; } return(s); 第61题 题号:350 /功能:请编一个函数void fun(int tt[M][N],int pp[N]), tt指向一个M行N列的二维数组,求出二维数组每列 中最小元素,并依次放入pp所指一维数组中。二维 数组中的数已在主函数中赋予。 #include void fun(int tt[M][N],int pp[N]) { int i,j; for(j=0;j pp[j]=tt[0][j]; for(i=1;i } 第62题 题号:356 功能:求大于lim(lim小于100的整数)并且小于100的所 有素数并放在aa数组中,该函数返回所求出素数的 个数。 #include int fun(int lim,int aa[MAX]) 13 { int n=0; int i,j; for(i=lim;i<=100;i++) {for(j=2;j return n; 第63题 题号:399 功能:编写程序求无理数e的值并输出。计算公式为: e=1+1/1!+1/2!+1/3!+......+1/n! 当1/n!<0.000001时e=2.718282。 include main() { float fun(); printf(\无理数e的值是:%f\\n\ wwjt(); } float fun() { long int j; int i,k; double e,jc; i=1; e=0.0; jc=1.0; while(jc>=0.000001) { e=e+jc; j=1; for(k=1;k<=i;k++) j=j*k; jc=1.0/j; i++; } return e; 第64题 题号:346 功能:将从键盘上输入的每个单词的第一个字母转换为 大写字母,输入时各单词必须用空格隔开,用’.’ 结束输入。 #include int fun(char *c,int status) { if (*c== ' ') return 1; else { if(status && *c <= 'z' && *c >= 'a') *c += 'A' - 'a'; return 0; } 第65题 题号:359 功能:实现两个整数的交换。 例如:给a和b分别输入:60和65,输入为:a=65 b=60 #include void fun(int *a,int *b) { int t; t=*a;*a=*b;*b=t; 第66题 题号:386 功能:用函数求N个[10,60]上的整数中能被5整除的最大 的数,如存在则返回这个最大值,如果不存在则 返回0。 #define N 30 #include \#include int find(int arr[],int n) { 14 int i; for(i=0;i if(arr[i]%5==0 && arr[i]>m) m=arr[i]; 第67题 题号:502 #include 题目:用while语句求1~100的累计和。 void wwjt(); int fun(int n) { 答案: int i=1,sum=0; while(i<=n) { sum=sum+i; i++; } return sum; 第68题 题号:336 功能:从字符串中删除指定的字符。同一字母的大、小写 按不同字符处理。 例如:若程序执行时输入字符串为:turbocandborlandc++ 从键盘上输入字符:n,则输出后变为:turbocadbo rladc++,如果输入的字符在字符串中不存在,则字 符串照原样输出。 #include int fun(char s[],int c) { char *q=s; for(; *q; q++) if(*q != c) *(s++)=*q; *s=0; 第69题 题号:376 功能:从键盘上输入任意实数x,求出其所对应的函数值。 z=(x-4)的二次幂(x>4) z=x的八次幂(x>-4) z=z=4/(x*(x+1))(x>-10) z=|x|+20(其他) #include float y(float x) { float z; if(x>4) z=sqrt(x-4); else if(x>-4) z=pow(x,8); else if(x>-10) z=4/(x*(x+1)); else z=fabs(x)+20; return(z); 第70题 题号:341 功能:删除所有值为y的元素。数组元素中的值和y的值由 主函数通过键盘输入。 #include void fun(int bb[],int *n,int y) { int i,j; for(i=0;i<*n;) { if(bb[i]==y) {for(j=i;j<*n;j++) bb[j]=bb[j+1]; *n=*n-1; } else i++; } 第71题 题号:56 功能:找出一批正整数中的最大的偶数。 include int fun(int a[],int n) { int i,amax=-1; for(i=0;i 15
正在阅读:
c语言程序设计题目及答案05-01
九下健康教育教案10-24
散文那年,错过了相遇的时间散文03-30
二数月清试卷终结篇10-05
申请国家励志奖学金理由(最新6篇)03-25
浙江杭州市2016高考英语阅读理解二轮基础演练3及答案12-18
谈判与推销技巧史上最全复习题及答案107-09
汽车悬架的半主动控制系统MATLAB210-12
国家公祭鼎160字铭文及翻译08-01
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 程序设计
- 题目
- 答案
- 语言
- 2019届人教版 抛体运动 单元测试
- 污水处理厂建设工程可行性研究报告(完整版)
- 冀教版七年级下Unit8单元检测试卷含答案
- 护理学专科大学英语专科(II)习题册答案
- C程序设计基础-期中考试试题详解
- 上海市大医院麻醉科医生名单
- 尔雅《食品安全与日常生活》期末考试
- 小学音乐人音版 四年级上册 1歌唱祖国《演唱 采一束鲜花》优质课
- 炸药库安全管理制度汇编课案
- 网络安全课后习题
- 宏观经济学下册考试试题
- 幼儿园课程编制
- 2017年八年级生物下册 7.1.1 植物的生殖备课参考 新人教版 精品
- NAMD入门教程(三)
- 2016年秋中职语文期末试卷
- 安全生产知识竞赛题库(1000道)
- 关于新《预算法》在县乡实施及 贯彻落实情况的调研报告
- 烧结余热锅炉运行规程
- 高三物理曲线运动总复习
- 2016年高考二轮复习专题--专题一 离子反应和氧化还原反应