admin 管理员组文章数量: 887021
2024年1月4日发(作者:二维数组的矩阵是什么样的)
1. 从键盘任意输入20个整数,用冒泡法排序后,由大到小输出显示。
#include
int main()
{
int a[20],i,j,t;
printf("请任意输入20个整数n");
for(i=0;i<20;i++)
scanf("%d",&a[i]);
printf("n");
for(i=0;i<19;i++)
for(j=0;j<19-i;j++)
if(a[j] { t=a[j];a[j]=a[j+1];a[j+1]=t; } printf("按照从大到小的顺序排列为n"); for(i=0;i<20;i++) printf("%d,",a[i]); printf("n"); return 0; } 2. 从键盘任意输入20个整数,用选择法排序后,由大到小输出显示。#include #define N 20 int main() { int a[N],i,j,max,k; printf("请任意输入20个整数n"); for(i=0;i scanf("%d",&a[i]); printf("n"); for(i=0;i { k=i; for(j=i+1;j if(a[i] k=j; max=a[k]; a[k]=a[i]; a[i]=max; } printf("按照从大到小的顺序排列为n"); for(i=0;i printf("%d,",a[i]); printf("n"); return 0; } 3. 从键盘任意输入10个实数,用冒泡法排序后,由小到大输出显示。 4. 从键盘任意输入10个实数,用选择法排序后,由小到大输出显示。 5. 编写程序实现功能:从键盘任意按下1个按键(字母、数字和标点符号键),程序能够识别按键的种类,并输出显示(如显示:你按下的是字母键!)。 #include int main() { char x; printf("从键盘任意按下1个按键n"); x=getchar(); if(x>='a'&&x<='z'||x>='A'&&x<='Z') printf("你输入的是字母键n"); else if(x>='0'&&x<='9') printf("你输入的是数字键n"); else printf("你输入的是字符键"); return 0; } 6. 输出所有的“水仙花数”,“水仙花数”是指一个三位数,其各位数字的立方和等于该数本身。 #include int main() { int x,a,b,c; for(a=1;a<9;a++) { for(b=0;b<10;b++) { for(c=0;c<10;c++) { x=a*100+b*10+c; if(x==a*a*a+b*b*b+c*c*c) printf("%dn",x); } } } return 0; } 或 #include int main() { int x,a,b,c; for(x=100;x<1000;x++) { a=x/100; b=(x/10)%10; c=x%10; if(x==a*a*a+b*b*b+c*c*c) printf("%dn",x); else continue; } return 0; } 7. 一球从50m高度自由落下,每次落地后反向跳回原高度的一半,再落下,求 它在第10次落地时,共经过多少m? #include int main() { float a=50,s=50; int i; for(i=1;i<10;i++) { a=a/2; s+=a*2; } printf("%fn",s); return 0; } 8. 一球从100m高度自由落下,每次落地后反向跳回原高度的一半,再落下,求它第9次反弹多高? #include int main() { float a=100,s=100; int i; for(i=1;i<=9;i++) { a=a/2; s+=a*2; } printf("%fn",a); return 0; } 9. 从键盘任意输入一个 4×4的矩阵,求出其中的最小值及其所在的行号和列号。 #include int main() { int a[4][4]; int i,j,k,m,n; for(i=0;i<4;i++) for(j=0;j<4;j++) scanf("%d",&a[i][j]); k=a[0][0]; for(i=0;i<4;i++) for(j=0;j<4;j++) if(k>a[i][j]) { k=a[i][j]; m=i; n=j; } printf("最小值为%d,行号为%d,列号为%dn",k,m,n); return 0; } 10. 从键盘任意输入一个 4×4的矩阵,求出其中的最大值及其所在的行号和列号。 11. 从键盘任意输入一个 4×4的矩阵,完成对矩阵的转置。 #include int main() { int a[4][4],b[4][4]; int i,j; printf("请输入4×4的矩阵n"); for(i=0;i<4;i++) for(j=0;j<4;j++) scanf("%d",&a[i][j]); for(i=0;i<4;i++) for(j=0;j<4;j++) b[i][j]=a[j][i]; printf("转置矩阵"); for(i=0;i<4;i++) {for(j=0;j<4;j++) printf("%d ",b[i][j]); printf("n");} return 0; } 12. 从键盘任意输入一个 4×4的矩阵,求所有元素的平均值。#include int main() { int a[4][4]; int i,j; float sum=0,b; printf("请输入4×4的矩阵n"); for(i=0;i<4;i++) for(j=0;j<4;j++) scanf("%d",&a[i][j]); for(i=0;i<4;i++) for(j=0;j<4;j++) sum=sum+a[i][j]; b=sum/16; printf("%fn",b); return 0; } 13. 从键盘任意输入100个整数,找出最大值和最小值。 #include #define N 100 int main() { int a[N],i,min,max; printf("请输入100个整数n"); for(i=0;i scanf("%d",&a[i]); max=min=a[0]; for(i=0;i { if(min>a[i])min=a[i]; if(max } printf("最大值为%d,最小值为%dn",max,min); return 0; } 14. 用循环法编程,计算输出任意整数n!。 #include int main() { int a,i,b=1; printf("请输入一个整数n"); scanf("%d",&a); for(i=1;i<=a;i++) b=b*i; printf("%dn",b); return 0; } 15. 用递归法编程,计算输出任意整数n!。 #include int main() { int fac(int n); int n; int y; printf("请输入一个整数n"); scanf("%d",&n); y=fac(n); printf("%d的阶乘为%dn",n,y); return 0; } int fac(int n) { int f; if(n<0) printf("n<0,data error!"); else if(n==0||n==1) f=1; else f=fac(n-1)*n; return(f); } 16. 用静态局部变量法,计算输出任意整数n!。 #include int main() { int bbb(int n); int a,m,i; printf("请输入一个整数n"); scanf("%d",&a); if(a==0)m=1; else {for(i=1;i<=a;i++) m=bbb(i);} printf("%d的阶乘为%dn",a,m); return 0; } int bbb(int n) { static int s=1; s=s*n; return(s); } 17. 求200以内的质数并输出结果。 #include int main() { int a,i; for(a=3;a<=200;a++) { for(i=2;i } return 0; } 18. 求100-200以内的质数并输出结果。 #include int main() { int a,i; for(a=100;a<=200;a++) { }
版权声明:本文标题:C语言编程练习题附答案 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.freenas.com.cn/free/1704334528h455244.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论