当前位置:   article > 正文

头歌——一维数组和二维数组全对答案秒过_头歌二维数组右上部分求和

头歌二维数组右上部分求和

第七关:杨辉三角

  1. #include<stdio.h>
  2. #define N 100
  3. int main(void)
  4. {
  5. /*********Begin*********/
  6. int n,i,j,a[N][N];
  7. a[0][0]=1;
  8. a[1][0]=1;
  9. a[1][1]=1;
  10. for(i=2;i<N;i++)
  11. {
  12. a[i][0]=1;
  13. a[i][i]=1;
  14. for(j=1;j<i;j++)
  15. {
  16. a[i][j]=a[i-1][j]+a[i-1][j-1];
  17. }
  18. }
  19. for(i=0;i<10;i++)
  20. {
  21. for(j=0;j<=i;j++)
  22. {
  23. if(j==0)printf("1");
  24. else printf(" %d",a[i][j]);
  25. }
  26. printf("\n");
  27. }
  28. printf("\n"); //注意在每一个三角后面加一个空行
  29. /*********End**********/
  30. return 0;
  31. }

第六关:删除最大值

  1. #include<stdio.h>
  2. int main(void)
  3. {
  4. /*********Begin*********/
  5. int a[10];
  6. int i,max,j;
  7. max=0;
  8. for (i=0;i<10;i++)
  9. {
  10. scanf ("%d",&a[i]);
  11. }
  12. for (i=0;i<10;i++)
  13. {
  14. if (max<a[i])
  15. {
  16. max=a[i];
  17. j=i;
  18. }
  19. }
  20. for (i=j;j<9;j++)
  21. {
  22. a[j]=a[j+1];
  23. }
  24. for (i=0;i<9;i++)
  25. printf ("%d ",a[i]);
  26. /*********End**********/
  27. return 0;
  28. }

第五关:鞍点

  1. #include<stdio.h>
  2. #define N 100
  3. int Min(int a[][N],int m,int n,int row)
  4. {
  5. int i,p = 0;
  6. for(i = 0;i < m;i ++)
  7. {
  8. if(a[p][row] > a[i][row])
  9. p = i;
  10. }
  11. return p;
  12. }
  13. int main(void)
  14. {
  15. /*********Begin*********/
  16. int m,n,a[N][N],i,j;
  17. scanf("%d %d",&m,&n);
  18. for(i = 0;i < m;i ++)
  19. for(j = 0;j < n;j ++)
  20. scanf("%d",&a[i][j]);
  21. int max,row = 0,col,count = 0;
  22. for(i = 0;i < m;i ++)
  23. {
  24. for(j = 0;j < n;j ++)
  25. {
  26. if(a[i][row] < a[i][j]) //寻找行最大的数及其列坐标
  27. row = j;
  28. }
  29. max = a[i][row];
  30. col = Min(a,m,n,row); //寻找此列中最小的行坐标
  31. if(col == i)
  32. {
  33. printf("Array[%d][%d]=%d",i,row,a[i][row]); //判断两个行是否相等
  34. count ++;
  35. }
  36. }
  37. if(count == 0)
  38. printf("None");
  39. /*********End**********/
  40. return 0;
  41. }

第四关:二分查找

  1. #include<stdio.h>
  2. int main(void)
  3. {
  4. /*********Begin*********/
  5. int n,m,s,b,mid,i;
  6. scanf("%d",&n);
  7. int a[n];
  8. for(i=0;i<n;i++)
  9. {
  10. scanf("%d",&a[i]);
  11. }
  12. scanf("%d",&m);
  13. s=0;
  14. b=n-1;
  15. while(s<=b)
  16. {
  17. mid=(b+s)/2;
  18. if(m>a[mid])
  19. {
  20. s=mid+1;
  21. }
  22. else if(m<a[mid])
  23. {
  24. b=mid-1;
  25. }
  26. else if(m==a[mid])
  27. {
  28. printf("%d",mid+1);return 0;
  29. }
  30. }
  31. printf("None");
  32. /*********End**********/
  33. return 0;
  34. }

第3关:计算数组中元素的最大值及其所在的行列下标值

  1. #include<stdio.h>
  2. int main(void)
  3. {
  4. /*********Begin*********/
  5. int a[10][10];
  6. int max,row,col,i,j,m,n;
  7. row = col =1;
  8. printf("Input m, n:");
  9. scanf("%d,%d",&m,&n);
  10. printf("Input %d*%d array:\n",m,n);
  11. for(i=0;i<m;i++){
  12. for(j=0;j<n;j++){
  13. scanf("%d",&a[i][j]);
  14. }
  15. }
  16. max = a[0][0];
  17. for(i=0;i<m;i++){
  18. for(j=0;j<n;j++){
  19. if(a[i][j]>max){
  20. max = a[i][j];
  21. row = i+1;
  22. col = j+1;
  23. }
  24. }
  25. }
  26. printf("max=%d, row=%d, col=%d",max,row,col);
  27. /*********End**********/
  28. return 0;
  29. }

第2关:查找整数

  1. #include<stdio.h>
  2. int main(void)
  3. {
  4. /*********Begin*********/
  5. int a[20];
  6. int n,number;
  7. int isPrime = 0;
  8. scanf("%d", &n);
  9. for(int i=0;i<n;i++)
  10. scanf("%d",&a[i]);
  11. scanf("%d", &number);
  12. for(int i=0;i<n;i++)
  13. {
  14. if(a[i]==number)
  15. {
  16. isPrime = 1;
  17. printf("%d",i+1);
  18. break;
  19. }
  20. }
  21. if(isPrime == 0)
  22. printf("-1");
  23. /*********End**********/
  24. return 0;
  25. }

第1关:排序问题

  1. #include<stdio.h>
  2. int main(void)
  3. {
  4. /*********Begin*********/
  5. int a[10];
  6. int i,j,t;
  7. for(i=0; i<10; i++)
  8. scanf("%d",&a[i]);
  9. for(j=0; j<9; j++)
  10. for(i=0; i<9-j; i++)
  11. if(a[i]<a[i+1])
  12. {
  13. t=a[i];
  14. a[i]=a[i+1];
  15. a[i+1]=t;
  16. }
  17. for(i=0; i<10; i++)
  18. printf("%d ",a[i]);
  19. /*********End**********/
  20. return 0;
  21. }

我相信大家都会,只是整个乱七八糟的事太多了,发布这个文章的目的不是让你去抄袭,而是去学习,不要说我传播啊,服了这个文章建议怎么还不消掉,难道他看出我在摸鱼了吗?虽然我现在就两个粉丝,嗯,这几天可以看出我更新不是很积极,主要是一直再写学生管理系统的代码,在下一篇博客我将会发出,服了这个文章建议还不消掉,6666666666666.不管了!!!88

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/繁依Fanyi0/article/detail/567448
推荐阅读
相关标签
  

闽ICP备14008679号