大学C语言程序设计(编程题)

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

⼤学C语⾔程序设计(编程题)
C语⾔程序设计习题(编程题 C语⾔程序设计习题(编程题
习题1(编程题)[知识点:基础知识编制程序,要求输⼊整数a和b,若
a2+b2⼤于100,则输出a2+b2百位以上的数字,否则输出两数之和。

习题1-参考答案 main() printf("Input a & b:"); if
(a*a+b*b>100) printf("%d\n",(a*a+b*b)/100); else
printf("%d\n",a+b); } 习题2(编程题)[知识点:基础知识试编
程判断输⼊的正整数是否既是5⼜是7的整数倍,若是输出yes,否则输出no。

习题2-参考答案 main() printf("Input a:"); if
(a%5==0&&a%7==0) printf("yes\n"); else printf("no\n"); } 习题
3(编程题)[知识点:选择结构输⼊⼀个整数,判断它能否被3,5,7整
除,并输出以下信息之⼀: (1)能同时被3,5,7整除 (2)能被其中两
数整除(要指出哪两个)。

(3)能被其中⼀个数整除(要指出哪⼀个)。

(4)不能被任何⼀个整除。

习题3-参考答案 main()
printf("Input a number:"); if(m%3==0&&m%5==0&&m%7==0)
printf("能同时被3,5,7整除 else
if((m%3==0&&m%5==0)||(m%3==0&&m%7==0)||(m%5==0&&m%7==0)) {printf("能被其中两数整除 if(m%3==0&&m%5==0) printf("(3,5)"); else if(m%3==0&&m%7==0) printf("(3,7)");
else printf("(5,7)"); else if(m%3==0||m%5==0||m%7==0) {printf("能被其中⼀个数整除 C语⾔程序设计习题(编程题if(m%3==0) printf("(3)"); else if(m%5==0) printf("(5)"); else printf("不能被任何⼀个整除"); } 习题4(编程题)[知识点:选择结构将以下程序段改⽤⾮嵌套的if语句实现。

int s,t,m;
t=(int)(s/10); {case 10:m=5;break; case 9:m=4;break; case
8:m=3;break; case 7:m=2;break; case 6:m=1;break; default: m=0;
习题4-参考答案 if(s>=100&&s<110) m=5; if(s>=90&&s<100) m=4;
if(s>=80&&s<90) m=3; if(s>=70&&s<80) m=2; if(s>=60&&s<70) m=1;
习题5(编程题)[知识点:选择结构⽤switch编程实现: -1 (x<0) 习题5-参考答案 void main() {float x; printf("Input a x:");
scanf("%f",&x); switch(x<0) {case 1:y=-1;break; case 0:switch(x==0) {case 1:y=0;break; case
0:y=1; } printf("y=%d\n",y); } C语⾔程序
设计习题(编程题习题6(编程题)[知识点:选择结构将以下程序段改⽤嵌套的if语句实现。

int s,t,m; t=(int)(s/10);
{case:m=5;break; case 9:m=4;break; case 8:m=3;break; case
7:m=2;break; case 6:m=1;break; default: m=0; 习题6-参考答案
if(s>=110&&s<60) m=0 else if(s<110) m=5; else if(s<100) m=4; else
if(s<90) m=3; else if(s<80) m=2; else m=1; 习题7(编程题)[知识
点:选择结构编程实现以下功能:读⼊两个运算数(data1和data2)及⼀个运算符(op),计算表达式data1 op data2的值,其中op 可为+,-
,*,/(⽤switch语句实现)。

习题7-参考答案 #include
#include {float data1,data2,result;
printf("Type in your expression:");
scanf("%f %c %f",&data1,&op,&data2); {case
'+':result=data1+data2;break; case '-':result=data1-data2;break;
case '/':if(data2==0){printf("\nDivision by zero!");exit(1);} result=data1/data2;break; printf("This
is %6.2f %c %6.2f=%6.2f\n",data1,op,data2,result); } 习题8(编
程题)[知识点:选择结构编⼀程序,对于给定的⼀个百分制成绩,输出
相应的五分值成绩。

设90分以上为'A',80-89分为'B',70-79分为'C',60-69分为'D',60分以下为'E'(⽤switch语句实现)。

习题8-参考答案
main() C语⾔程序设计习题(编程题
while(score>=0&&score<=100) { printf("Enter score:");
scanf("%d",&score); temp=score/10; {case 0:case 1:case
2:case 3:case 4:case 5:grade='E';break; case 6:grade='D';break; case 7:grade='C';break; case 8:grade='B';break; case
9:case
10:grade='A'; printf("score=%d,grade=%c\n",score,grade); }
习题9(编程题)[知识点:循环结构每个苹果0.8元,第⼀天买2个苹
果,第⼆天开始买前⼀天的2倍,直⾄购买的苹果个数达到不超过100的最⼤值。

编写程序求每天平均花多少钱。

习题9-参考答案 {int day=0,buy=2; float sum=0,ave; {sum=sum+0.8*buy;
day++;buy=buy*2; }while(buy<=100);
printf("average=%f\n",ave); } 习题10(编程题)[知识点:循环结构
编写程序,找出1⾄99之间的全部同构数。

同构数是这样⼀组数:它出现
在平⽅数的右边。

例如,5是25右边的数,25是625右边的数,5和25就
是同构数。

习题10-参考答案 main() if(i*i%10==i||i*i%100==i) printf("%3d",i); } 习题11(编程
题)[知识点:循环结构编写程序,求⼀个整数任意次⽅的最后三位数。

即求xy值的最后三位数,要求x,y从键盘输⼊。

习题11-参考答案
C语⾔程序设计习题(编程题 scanf("%d%d",&x,&y); for(i=1;i<=y;i++) printf("The last 3 digit of %d*%d is:%d\n",x,y,s); } 习题
12(编程题)[知识点:循环结构编写程序,从键盘输⼊6名学⽣的五门成绩,分别统计出每个学⽣的平均成绩。

习题12-参考答案main()
float s,sum,ave; for(i=0;i<6;i++) for(j=1;j<=5;j++) {scanf("%f",&s); sum=sum+s; } printf("No.%d
ave=%6.2f\n",i+1,ave); } } 习题13(编程题)[知识点:循环结构
从键盘输⼊若⼲个整数,其值在0⾄4范围内,⽤-1作为输⼊结束的标志。

统计每个整数的个数。

习题13-参考答案 void main()
printf("Input some numbers(between 0 to 4):"); scanf("%d",&x); {if (x>=0&&x<=4) s[x]++;} printf("%d: %d\n",i,s[i]); } 习题14(编程题)[知识点:数组若有说明:int
a[2][3]={{1,2,3},{4,5,6}};现要将a的⾏和列的元素互换后存到另⼀个⼆
维数组b中。

请编写程序并输出a和b数组中的元素。

习题14-参考答
案 {int a[2][3]={{1,2,3},{4,5,6}},b[3][2],i,j; printf("Array
a:\n"); for(i=0;i<2;i++) {for(j=0;j<3;j++) {b[j][i]=a[i][j];
printf("%3d",a[i][j]); C语⾔程序设计习题(编程题
printf("\n"); printf("Array b:"); for(i=0;i<3;i++) {for(j=0;j<2;j++) printf("%3d",b[i][j]);
printf("\n"); } } 习题15(编程题)[知识点:数组定义⼀个
含有30个整型元素的数组,按顺序分别赋予从2开始的偶数;然后按顺序
每五个数求出⼀个平均值,放在另⼀个数组中并输出。

试编程。

习题15-参考答案 #define SIZE 30 {float b[SIZE/5],sum;
for(k=2,i=0;i
for(k=0,i=0;i
赋初值按⾏顺序为⼀个2×3的⼆维数组赋予2、4、6、...等偶数,然后按列的顺序输出该数组。

试编程。

习题16-参考答案 {int
i,j,a[2][3]={{2,4,6},{8,10,12}}; printf("\nThe result is:\n");
for(i=0;i<3;i++) printf("%4d",a[j][i]);
printf("\n"); } } 习题17(编程题)[知识点:数组数组a包
括10个整数,把a中所有的后项除以前项之商取整后存⼊数组b,并按每
⾏3个元素的格式输出数组b。

试编程。

C语⾔程序设计习题(编程题习题17-参考答案 #define N 10 main()
printf("Enter %d data:",N); for(i=0;i
for(i=1;i
题18(编程题)[知识点:字符串从键盘输⼊两个字符串a和b,要求不
⽤库函数strcat把串b的前五个字符连接到串a中;如果b的长度⼩于
5,则把b的所有元素都连接到a中。

试编程。

习题18-参考答案
#include {char a[80],b[80]; printf("Input two strings:\n"); gets(a);gets(b); while(a[i]) i++;
for(j=0;j<5&&b[j];j++) a[i++]=b[j]; a[i]='\0'; puts(a); } 习题19(编程题)[知识点:循环结构百钱百鸡问题:中国古代数学家张
丘建在他的《算经》中提出了著名的“百钱买百鸡问题”:鸡翁⼀,值钱
五,鸡母⼀,值钱三,鸡雏三,值钱⼀,百钱买百鸡,问翁、母、雏各⼏何?习题19-参考答案 #include main()
{ for(g=0;g<=20;g++) for(m=0;m<=33;m++) { if(5*g+3*m+x/3.0==100) C语⾔程序设计习
题(编程题习题20(编程题)[知识点:循环结构百马百
担:有⼀百匹马,驮⼀百担货,⼤马驮3担,中马驮2担,两只⼩马驮1担,问
有⼤,中,⼩马各⼏匹? 习题20-参考答案 #include main()
{ } 习题21(编程题)[知识点:循环结构搬
砖问题:36块砖,36⼈搬,男搬4块,⼥搬3块,⼩孩需2⼈搬1块,要求⼀次就搬完,男、⼥和⼩孩各需要多少⼈?习题21-参考答案
#include main() { 习题22(编程题)[知识
点:循环结构普通变量的⽅法输出斐波拉契数列的第n项。

习题22-
参考答案 #include int fib(int n)
{ for(d=0;d<=33;d++) for(z=0;z<=50;z++)
{ if(3*d+2*z+x/2.0==100) for(m=0;m<=9;m++) for(w=0;w<=12;w++) { if(4*m+3*w+x/2.0==36) int fib1,fib2,fib3,i; fib1=fib2=1;
for(i=3;i<=n;i++)
{ fib3=fib1+fib2; fib1=fib2; C语⾔程序设计习题(编
程题 main() { 习题23(编程题)[知识点:
循环结构普通变量的⽅法输出斐波拉契数列的前n项。

习题23-参考答案 #include int fib(int n) { } main()
{ 习题24(编程题)[知识点:循环结构普通变量的⽅法输
出斐波拉契数列的前n项,每⾏输出5项。

习题24-参考答案 #include int fib(int n) { int fib1,fib2,fib3,i;
fib1=fib2=1; for(i=3;i<=n;i++)
{ printf("%d\t",fib(i)); int
fib1,fib2,fib3,i; fib1=fib2=1; for(i=3;i<=n;i++)
{ fib3=fib1+fib2; fib1=fib2; scanf("%d",&n);
printf("%d\t%d\t",1,1); printf("%d\t",fib(i));
fib3=fib1+fib2; fib1=fib2; C语⾔程序设计习题(编程题
main() { 习题25(编程题)[知识点:循环结构普通
变量的⽅法输出⼩于某数的斐波拉契数列。

习题25-参考答案 #include
int fib(int n) { } main() { 习题
26(编程题)[知识点:循环结构普通变量的⽅法输出⼤于某数的第⼀个斐波拉契数。

习题26-参考答案 #include scanf("%d",&n); printf("%d\t%d\t",1,1); for(i=3;i<=n;i++)
{ printf("%d\t",fib(i)); if(i%5==0) int
fib1,fib2,fib3,i; fib1=fib2=1; for(i=3;i<=n;i++)
{ fib3=fib1+fib2; fib1=fib2; int i=3,n;
scanf("%d",&n); printf("%d\t%d\t",1,1);
{ printf("%d\t",fib(i)); i++; C语⾔程序设计习题(编
程题 { int fib1,fib2,fib3,i; fib1=fib2=1; for(i=3;i<=n;i++)
{ fib3=fib1+fib2; fib1=fib2; } main() { int
i=3,n; scanf("%d",&n); 习题27(编程
题)[知识点:循环结构递归的⽅法输出斐波拉契数列的第n项。

习题
27-参考答案 #include int fib(int n) { if(n==1||n==2) else return fib(n-1)+fib(n-2); } main()
{ scanf("%d",&n); 习题28(编程题)[知识点:循环结构递归的⽅法输出斐波拉契数列的前n项。

习题28-参考答案
#include int fib(int n) { if(n==1||n==2) else C语⾔程序设计习题(编程题 } main() { 习题29(编程
题)[知识点:循环结构递归的⽅法输出斐波拉契数列的前n项,每⾏输
出5项。

习题29-参考答案 #include int fib(int n) { }
main() { 习题30(编程题)[知识点:数组数组的⽅
法输出斐波拉契数列的前20项。

习题30-参考答案 #include main() { scanf("%d",&n);
for(i=1;i<=n;i++) if(n==1||n==2) else return fib(n-
1)+fib(n-2); scanf("%d",&n); for(i=1;i<=n;i++)
{ printf("%d\t",fib(i)); if(i%5==0) int fib[20],i;
fib[0]=fib[1]=1; for(i=2;i<20;i++) fib[i]=fib[i-1]+fib[i-2];
printf("%d\t%d\t",1,1); for(i=2;i<20;i++)
printf("%d\t",fib[i]); C语⾔程序设计习题(编程题习题31(编
程题)[知识点:数组数组的⽅法输出斐波拉契数列的前20项,要求每⾏输出5个。

习题31-参考答案 #include main()
{ 习题32(编程题)[知识点:循环结构若有⼀头
⼩母⽜从第四年开始每年⽣育⼀头母⽜、按照此规律,构成⼀个数列。

编写程序使⽤普通变量的⽅法输出此数列第n 个数。

习题32-参考答案#include int c(int n) { } main()
{ 习题33(编程题)[知识点:循环结构若有⼀头⼩母⽜从
第四年开始每年⽣育⼀头母⽜、按照此规律,构成⼀个数列。

编写程序使⽤普通变量的⽅法输出此数列前n 个数。

int fib[20],i;
fib[0]=fib[1]=1; for(i=2;i<20;i++) fib[i]=fib[i-1]+fib[i-2];
printf("%d\t%d\t",1,1); for(i=2;i<20;i++)
{ printf("%d\t",fib[i]); if((i+1)%5==0) int
c1,c2,c3,c4,i; c1=c2=c3=1; for(i=4;i<=n;i++) { } c4=c3+c1;
c1=c2; c2=c3; scanf("%d",&i); C语⾔程序设计习题(编程题习题33-参考答案 #include int c(int n)
{ } main() { 习题34(编程题)[知识点:循环结
构若有⼀头⼩母⽜从第四年开始每年⽣育⼀头母⽜、按照此规律,构成
⼀个数列。

编写程序使⽤普通变量的⽅法输出此数列前n 个数,并且每⾏输出5个。

习题34-参考答案 #include int c(int n)
{ } main() { printf("%d\t%d\t%d\t",1,1,1);
int c1,c2,c3,c4,i; c1=c2=c3=1; for(i=4;i<=n;i++) { }
c4=c3+c1; c1=c2; c2=c3; printf("%d\t%d\t%d\t",1,1,1);
for(i=4;i<=n;i++) int c1,c2,c3,c4,i; c1=c2=c3=1;
for(i=4;i<=n;i++) { } c4=c3+c1; c1=c2; c2=c3; C语⾔程序设计习题(编程题 { } printf("%d\t",c(i));
if(i%5==0) 习题35(编程题)[知识点:循环结构若有⼀头⼩
母⽜从第四年开始每年⽣育⼀头母⽜、按照此规律,构成⼀个数列。

编写程
序使⽤普通变量的⽅法输出此数列⼩于某数的数列。

习题35-参考答案
#include int c(int n) { } main()
{ 习题36(编程题)[知识点:循环结构若有⼀头⼩母
⽜从第四年开始每年⽣育⼀头母⽜、按照此规律,构成⼀个数列。

编写程序使⽤普通变量的⽅法输出⼤于某数的第⼀个数。

习题36-参考答案
#include int c(int n) { int c1,c2,c3,c4,i;
c1=c2=c3=1; for(i=4;i<=n;i++) { } c4=c3+c1; c1=c2; c2=c3;
int i=4,n; printf("%d\t%d\t%d\t",1,1,1);
{ printf("%d\t",c(i)); int c1,c2,c3,c4,i; c1=c2=c3=1;
for(i=4;i<=n;i++) C语⾔程序设计习题(编程题
c4=c3+c1; c1=c2; c2=c3; main() { 习题37(编程
题)[知识点:循环结构若有⼀头⼩母⽜从第四年开始每年⽣育⼀头母
⽜、按照此规律,构成⼀个数列。

编写程序使⽤递归函数的⽅法输出此数列
第n 个数。

习题37-参考答案 #include int c(int n) { }
main() { 习题38(编程题)[知识点:循环结构若有⼀头⼩
母⽜从第四年开始每年⽣育⼀头母⽜、按照此规律,构成⼀个数列。

编写程
序使⽤递归函数的⽅法输出此数列前n 个数。

习题38-参考答案 #include int c(int n) { } int i=4,n;
scanf("%d",&n); if(n==1||n==2||n==3) else return c(n-1)+c(n-3); scanf("%d",&n);
if(n==1||n==2||n==3) else return c(n-1)+c(n-3); C语⾔程
序设计习题(编程题 { 习题39(编程题)[知识点:循环结
构若有⼀头⼩母⽜从第四年开始每年⽣育⼀头母⽜、按照此规律,构成
⼀个数列。

编写程序使⽤递归函数的⽅法输出此数列前n 个数,并且每⾏
输出5个。

习题39-参考答案 #include int c(int n) { }
main() { 习题40(编程题)[知识点:循环结构爱因
斯坦出了⼀道这样的数学题:有⼀条长阶梯,若每步跨2阶,则最最后剩⼀
阶,若每步跨3 阶,则最后剩2阶,若每步跨5阶,则最后剩4阶,若每
步跨6阶则最后剩5阶。

只有每次跨7阶,最后才正好⼀阶不剩。

满⾜这
样条件的整数有很多,编写程序求第⼀个爱因斯坦阶梯数。

习题40-参考
答案 #include main() { 习题41(编程题)[知识点:循环结构 int i; i=i+14; printf("%d\t",i);
scanf("%d",&n); for(i=1;i<=n;i++) { printf("%d\t",c(i));
if(i%5==0) if(n==1||n==2||n==3) else return c(n-
1)+c(n-3); return 1; scanf("%d",&n); for(i=1;i<=n;i++) C语⾔程序设计习题(编程题爱因斯坦出了⼀道这样的数学题:有⼀条
长阶梯,若每步跨2阶,则最最后剩⼀阶,若每步跨3 阶,则最后剩2
阶,若每步跨5阶,则最后剩4阶,若每步跨6阶则最后剩5阶。

只有每次
跨7阶,最后才正好⼀阶不剩。

满⾜这样条件的整数有很多,编写程序输
出1000以内的爱因斯坦阶梯数。

习题41-参考答案 #include main() { int i; for(i=7;i<=1000;i=i+14)
if(i%3==2&&i%5==4&&i%6==5) 习题42(编程题)[知
识点:选择结构键盘输⼊⼀个整数,判断此数是否是素数。

习题42-参考答案 #include main() { scanf("%d",&i);
if(i%j==0) printf("%d is a prime.\n",i); 习题43(编程题)[知识点:选择结构输出101--200之间素数。

习题
43-参考答案 #include main()
{ for(i=101;i<=200;i++) { for(j=2;j<=i-1;j++)
if(i%j==0) C语⾔
程序设计习题(编程题习题44(编程题)[知识点:循环结构键盘输
⼊⼆个数u,v,利⽤普通变量法求⼆个数的最⼤公约数。

习题44-参考答
案 #include int gcd(int u,int v) { } main()
{ 习题45(编程题)[知识点:循环结构键盘输⼊⼆个数u,v,利⽤普通变量法求⼆个数的最⼩公倍数。

习题45-参考答案
#include int icd(int u,int v) { } main()
{ 习题46(编程题)[知识点:循环结构 int z;
while(v!=0) { } z=u%v; u=v; scanf("%d%d",&u,&v);
int r,t; t=u*v; while(v!=0) { } t=t/u; r=u%v; u=v; C语⾔程序设计习题(编程题键盘输⼊⼆个数u,v,利⽤递归的⽅法求⼆个数的最⼩公倍数。

习题46-参考答案 #include int
gcd(int u,int v) { } main() { 习题47(编程题)[知识
点:循环结构键盘输⼊⼆个数u,v,利⽤递归的⽅法求⼆个数的最⼤
公约数。

习题47-参考答案 #include int gcd(int u,int v)
{ } main() { 习题48(编程题)[知识点:循环结构键
盘输⼊⼆个数u,v,利⽤递归的⽅法求⼆个数的最⼤公约数和最⼩公倍
数。

习题48-参考答案 #include int gcd(int u,int v)
{ } if(v==0) else return gcd(v,u%v); scanf("%d%d",&u,&v); if(v==0) else return gcd(v,u%v); if(v==0) else return gcd(v,u%v); C语⾔程序设计习题(编程
题 { 习题49(编程题)[知识点:表达式要求输出所有
的⽔仙花数⽔仙花数是⼀个三位数,其各位上数的⽴⽅和等于这个数,例如153,13+53+33=153习题49-参考答案 #include
main() { 习题50(编程题)[知识点:表达式
要求输出所有的桃花数桃花数是⼀个四位数,其各位上数的四次⽅和等
于这个数,例如1634,14+64+34+44=1634 习题50-参考答案
#include main() { } printf("The gcd of %d and %d is %d.\n",u,v,gcd(u,v));
for(i=101;i<1000;i++) { a=i/100; b=(i/10)%10;
if(i==a*a*a+b*b*b+c*c*c) for(i=1001;i<10000;i++)
{ d=i%10; c=(i/10)%10; b=(i/100)%10;
if(i==a*a*a*a+b*b*b*b+c*c*c*c+d*d*d*d) C语⾔程序设计习题
(编程题习题51(编程题)[知识点:表达式要求输出所有的玫瑰花
数桃花数是⼀个五位数,其各位上数的五次⽅和等于这个数,习题
51-参考答案 #include main() { 习题
52(编程题)[知识点:循环结构要求输出⼀个四⾏四列的图形,见下图**** **** **** 习题52-参考答案 #include main()
{ 习题53(编程题)[知识点:循环结构要求输出⼀个
三⾓形,图形具有下图的特征,要求输⼊n值(n值为⾏数)。

* *** ***** 习题53-参考答案 #include for(i=10000;i<100000;i++) { a=i%10; b=(i/10)%10;
c=(i/100)%10; d=i/1000%10; e=i/10000; for(i=1;i<=4;i++) { for(j=1;j<=4;j++) printf("*");
C语⾔程序设计习题(编程题 { 习题54(编程题)[知识
点:循环结构要求输出⼀个三⾓形,图形具有下图的特征,要求输⼊n
值(n值为⾏数)。

* *** ***** ******* 习题54-参考答案 #include
main() { 习题55(编程题)[知识点:循环
结构要求输出⼀个平等四边形,见下图 ******* ******* ******* 习题55-参考答案 #include main()
{ scanf("%d",&n); for(i=1;i<=n;i++)
{ scanf("%d",&n); for(i=1;i<=n;i++) { for(j=1;j<=2*i-1;j++) printf("*");
scanf("%d",&n); for(i=1;i<=n;i++) { for(j=1;j<=2*(n-
i);j++) printf(" "); printf("*"); for(j=1;j<=2*i-1;j++) C
语⾔程序设计习题(编程题 } printf(" ");
for(j=1;j<=2*n-1;j++) 习题56(编程题)[知识点:循环结构要求
输出⼀个平等四边形,见下图 ******* ******* ******* ******* 习题
56-参考答案 #include main() { 习题
57(编程题)[知识点:循环结构要求输出⼀个钻⽯图形,图形具有下图
的特征,要求输⼊n值(n值为⾏数)。

* *** ***** 习题57-参
考答案 #include main() { scanf("%d",&n);
for(i=1;i<=n;i++) { for(j=1;j<=n-i;j++) printf(" ");
printf("*"); for(j=1;j<=2*i-1;j++) scanf("%d",&n);
for(i=1;i<=n;i++) { for(j=1;j<=i;j++) printf(" ");
printf("*"); for(j=1;j<=2*n-1;j++) C语⾔程序设计习题(编程
题 } 习题58(编程题)[知识点:循环结构要求输出⼀个钻⽯图形,图形具有下图的特征,要求输⼊n值(n值为⾏数)。

******* ***** *** 习题58-参考答案 #include main()
{ 习题59(编程题)[知识点:循环结构要求输出⼀
个菱形,图形具有下图的特征,要求输⼊n值(n值为⾏数)。

* ***
***** ******* ***** *** 习题59-参考答案 #include main() { scanf("%d",&n); for(i=1;i
{ scanf("%d",&n); for(i=1;i<=n;i++) { for(j=1;j<=i-1;j++) printf(" "); printf("*");
for(j=1;j<=2*(n-i)+1;j++) for(j=1;j<=n-i;j++) printf(" ");
printf("*"); for(j=1;j<=2*i-1;j++) C语⾔程序设计习题(编程题
for(i=1;i<=n;i++) { } for(j=1;j<=i-1;j++) printf("
"); printf("*"); for(j=1;j<=2*(n-i)+1;j++) 习题60(编程题)[知
识点:⼦程序和函数利⽤递归法求阿克曼函数。

Ackerman函数的定义如下: Ack(0,n)=n+1; Ack(m,0)=Ack(m-1,1);
Ack(m,n)=Ack(m-
1,Ack(m,n-1)) 习题60-参考答案 #include int Ack(int
m,int n) { } main() { 习题61(编程题)[知识点:⼦
程序和函数利⽤递归法求Hermite函数。

Hn(x)定义如下: H0(x)=1;
习题61-参考答案 #include int H(int x,int n) { }
main() { if(m==0) return n+1; return Ack(m-
1,Ack(m,n-1)); else if(n==0&&m>=1) H1(x)=2x;
H(x)=2xHn-1(x)-2(n-1)Hn-2(x) (对 if(n==0) return 1; return 2*x*H(x,n-1)-2*(n-1)*H(x,n-2); else if(n==1) C 语⾔程序设计习题(编程题 scanf("%d%d",&x,&n);
printf("%d\n",H(x,n)); 习题62(编程题)[知识点:表达式
编写程序求:n!习题62-参考答案 #include sigma(int n)
{ int i=1,s=1; while(i
{ scanf("%d",&m); 习题63(编程题)[知识点:表达
式利⽤递归的⽅法求出n!。

习题63-参考答案 #include
int js(int n) { if(n==1) else return n*js(n-1); }
main() { scanf("%d",&n); 习题64(编程题)[知识
点:表达式编写程序求:1+2+…+n。

习题64-参考答案 #include C语⾔程序设计习题(编程题 { int
i=0,sum=0; while(i
m,total; scanf("%d",&m); 习题65(编程题)[知识点:表达式利⽤递归的⽅法求出1+2+…+n。

习题65-参考答案#include int lj(int n) { if(n==1) else
return n+lj(n-1); } main() { scanf("%d",&n); 习
题66(编程题)[知识点:表达式编写程序求:1!+2!+…+n! 习题66-参考答案 #include main() { int i,sum,n,mul;
scanf("%d",&n); sum=0;mul=1; for(i=1;i<=n;i++) { mul=mul*i; C语⾔程序设计习题(编程题 printf("%d",sum); 习题
67(编程题)[知识点:表达式编写程序求:1/1!+1/2!+…+1/n! 习题
67-参考答案 #include main() { 习题
68(编程题)[知识点:数组键盘输⼊10个整数,输出最⼤值和最⼩值。

习题68-参考答案 #include main()
{ 习题69(编程题)[知识点:数组求⼀个3*4矩
阵所有靠外侧元素之和。

习题69-参考答案 #include main() int i,n,mul; float sum; scanf("%d",&n); sum=0;mul=1;
for(i=1;i<=n;i++) { mul=mul*i; int x[10],max,min,i;
for(i=0;i<10;i++) scanf("%d",&x[i]); max=min=x[0];
for(i=0;i<=9;i++) { if(max
min=x[i]; C语⾔程序设计习题(编程题 int
x[3][4],i,j,sum=0; for(i=0;i<3;i++) { for(i=0;i<3;i++) for(j=0;j<4;j++) if(i==0||i==2||j==0||j==3) for(j=0;j<4;j++) printf("%d\t",x[i][j]); printf("\n");
for(j=0;j<4;j++) printf("sum=%d\n",sum); 习题
70(编程题)[知识点:数组求⼀个3*4矩阵所有靠外侧元素之和的平均值。

习题70-参考答案 #include main()
{ 习题71(编程题)[知识点:数组输⼊⼀个5*5矩阵元素的值,求2个对⾓线元素之和。

习题71-参考答案int x[3][4],i,j,n=0; double sum=0; for(i=0;i<3;i++)
{ for(i=0;i<3;i++) for(j=0;j<4;j++)
if(i==0||i==2||j==0||j==3) { sum=sum+x[i][j];
for(j=0;j<4;j++) printf("%d\t",x[i][j]); printf("\n");
for(j=0;j<4;j++) C语⾔程序设计习题(编程题
main() { int x[5][5],i,j,sum=0; for(i=0;i<5;i++)
for(j=0;j<5;j++) { for(j=0;j<5;j++) printf("%d\t",x[i][j]); printf("\n"); for(i=0;i<5;i++)
for(j=0;j<5;j++) if(i==j||i+j==4) 习题72(编程题)[知识点:数组输⼊⼀个5*5矩阵元素的值,求它的转置矩阵。

习题72-参考答案#include main() { int
x[5][5],y[5][5],i,j; for(i=0;i<5;i++) for(j=0;j<5;j++) { for(j=0;j<5;j++) printf("%d\t",x[i][j]); printf("\n");
for(i=0;i<5;i++) for(j=0;j<5;j++) y[i][j]=x[j][i];
for(j=0;j<5;j++) printf("The new is:\n");
for(i=0;i<5;i++) { for(j=0;j<5;j++)
printf("%d\t",x[i][j]); C语⾔程序设计习题
(编程题习题73(编程题)[知识点:数组输⼊⼀个5*5矩阵元
素的值,将元素的值改变为原值+转置矩阵相应值的2倍。

习题73-参考答
案 #include main() { 习题
74(编程题)[知识点:数组⼀维数组a[10]={1,2,3,4,5,6,7,8,9,10}
中,数组元素的值要求采⽤赋值语句赋值,求下标为奇数的元素之和。


题74-参考答案 #include main()
{ int x[5][5],y[5][5],i,j;
for(i=0;i<5;i++) { for(i=0;i<5;i++) for(j=0;j<5;j++) y[i][j]=x[j][i]; for(j=0;j<5;j++)
printf("%d\t",x[i][j]); printf("\n"); for(j=0;j<5;j++) for(j=0;j<5;j++) printf("The new is:\n"); for(i=0;i<5;i++) { for(j=0;j<5;j++)
printf("%d\t",x[i][j]); int
a[10],i,sum=0; for(i=0;i<10;i++) printf("%d\t",a[i]);
sum=sum+a[i]; for(i=0;i<10;i++) C语⾔程序设计习题(编程题
习题75(编程题)[知识点:数组⼀维数组
a[10]={1,2,3,4,5,6,7,8,9,10}中,数组元素的值要求采⽤赋值语句赋值,
求下标为偶数的元素之和。

习题75-参考答案 #include main()
{ 习题76(编程题)[知识点:⼦程序和函数利⽤指针
的⽅法求⼀个⼀维数组a[10]={1,2,3,4,5,6,7,8,9,10}中,下标为奇数的元素之和。

习题76-参考答案 #include main()
{ 习题77(编程题)[知识点:⼦程序和函数利⽤指
针的⽅法求⼀个⼀维数组a[10]={1,2,3,4,5,6,7,8,9,10}中,下标为偶数的元素之和。

习题77-参考答案 #include main()
{ int a[10],i,sum=0; for(i=0;i<10;i++) printf("%d\t",a[i]); sum=sum+a[i]; for(i=0;i<10;i++) int
a[10],*p,i,sum=0; for(i=0;i<10;i++) printf("%d\t",p[i]); sum=sum+*(p+i); for(i=0;i<10;i++)
for(i=1;i<10;i=i+2) int a[10],*p,i,sum=0; for(i=0;i<10;i++) printf("%d\t",p[i]); sum=sum+*(p+i); for(i=0;i<10;i++)
for(i=0;i<10;i=i+2) C语⾔程序设计习题(编程题
习题78(编程题)[知识点:数组利⽤数组的⽅法输出九九乘法表。


题78-参考答案 #include main() { 习题
79(编程题)[知识点:数组利⽤数组的⽅法输出杨辉三⾓。

习题79-参
考答案 #include main() { 习题80(编
程题)[知识点:选择结构键盘输⼊判断⼀个年份,判断其是否是闰年,
若是闰年则输出此年份。

闰年的条件:1)年份能被4整除但不能被100整
除,2)直接能被400整除。

习题80-参考答案 #include main() int a[9][9],i,j; for(i=0;i<9;i++) { for(j=0;j<=i;j++) printf("%d\t",a[i][j]); printf("\n"); for(j=0;j<9;j++) int a[10][10],i,j; for(i=0;i<10;i++)
{ for(j=0;j<=i;j++) printf("%d\t",a[i][j]);
printf("\n"); for(j=0;j<=i;j++) if(j==0||i==j) else
a[i][j]=a[i-1][j]+a[i-1][j-1]; C语⾔程序设计习题(编程题
if(i%4==0&&i%100!=0||i%400==0) else printf("The %d is NOT a RunNian\n",i); 习题81(编程题)[知识点:选择结构输出2000-2050年之间的所有闰年。

闰年的条件:1)年份能被4整除但不能被100整
除,2)直接能被400整除。

习题81-参考答案 #include main()
{ 习题82(编程题)[知识点:⼦程序和函数从键盘输⼊三
个整数,要求设计三个指针变量P1,P2,P3,使P1指向三个数中的最⼤
值,P2指向三个数中的次最⼤值,P3指向三个数中最⼩值,然后按由⼤到⼩顺序输出三个数。

习题82-参考答案 #include main()
int *p1,*p2,*p3; printf("input data,use spac between data \n"); scanf("%d%d%d",&i,&j,&k); p1=&ip2=&jp3=&k
{temp=*p1;*p1=*p2;*p2=temp;} {temp=*p1;*p1=*p3;*p3=temp;} {temp=*p2;*p2=*p3;*p3=temp;} printf("%d %d %d", *p1 , *p2 , *p3 ); 习题83(编程题)[知识点:⼦程序和函数编写⼀程序,
从键盘输⼊三个数分别给变量i,j,k.同时设置三个指针变量p1,p2,p3分别
指向变量i,j,k然后通过指针变量控制使i,j,k三个变量值的顺序交换,即
原来i的值赋给j,把原来j的值赋给k,把原来k的值赋给i,最后输出
i,j,k的值。

习题83-参考答案 #include if(i%4==0&&i%100!=0||i%400==0)。

相关文档
最新文档