首页 > 代码库 > C语言例题系列--------第十四天
C语言例题系列--------第十四天
//27.有一个整型二维数组,大小为m x n,要求找出其中最大值所在的行和列以及该最大值。 //请编写一个函数max,要求如下: //(1)以数组名和数组大小为该函数的形参 //(2)数组元素的值在main函数中输入,结果在函数max中输出 /*#include<stdio.h> int max(int x[3][4],int m,int n) { int max=x[0][0]; int i,j; for(i=0;i<m;i++) for(j=1;j<n;j++) if(max<x[i][j]) max=x[i][j]; for(i=0;i<m;i++) for(j=0;j<n;j++) if(x[i][j]==max) printf("最大值所在行为第%d行,所在列为第%d列\n",i,j); return max; } int main() { int a[3][4],i,j,k; printf("请输入数组中元素的值:"); for(i=0;i<3;i++) for(j=0;j<4;j++) scanf("%d",&a[i][j]); k=max(a,3,4); printf("max is %d\n",k); return 0; } */ #include<stdio.h> void maxval(int arr[][4],int m,int n) { int i,j,max,line=0,col=0; int(*p)[4]; max=arr[0][0]; p=arr; for(i=0;i<m;i++) for(j=0;j<n;j++) if(max<*(*(p+i)+j)) { max=*(*(p+i)+j); line=i; col=j; } } int main() { int array[3][4],i,j,k,c; printf("input lines of array:"); scanf("%d",&k); printf("\ninput column of array:"); scanf("%d",&c); printf("\ninput data use comma between data \n"); for(i=0;i<k;i++) for(j=0;j<c;j++) printf("%4d",array[i][j]); printf("\n"); maxval(array,k,c); return 0; }
//28.有n个学生,每个学生参加m门课程的考试,要求编写一函数,能检查n个学生有无不及格的课程。 //如果某一学生有一门或一门以上的课程不及格,就输出该学生的学号 //(学号从0算起,即0,1,2,...)及其全部课程成绩 //我写的代码 /*#include<stdio.h> int main() { int i; struct student { int number; int math; int chinese; int English; int physical; }stu[5]; for(i=0;i<5;i++) { printf("该学生的学号为:"); scanf("%d",&stu[i].number); printf("该学生的数学成绩,语文成绩,英语成绩,物理成绩分别为:"); scanf("%d%d%d%d",&stu[i].math,&stu[i].chinese,&stu[i].English,&stu[i].physical); } for(i=0;i<5;i++) if(stu[i].math<60||stu[i].chinese<60||stu[i].English<60||stu[i].physical<60) { printf("该不及格学生的学号为:"); printf("%d\n",stu[i].number); printf("该不及格学生的所有成绩分别为:\n"); printf("数学为:%d,语文为:%d,英语为:%d,物理为:%d\n",stu[i].math,stu[i].chinese,stu[i].English,stu[i].physical); } return 0; } */ //答案给的代码 #include<stdio.h> void search(float (*p)[4],int m) { int i,j,flag; for(i=0;i<m;i++) { flag=0; for(j=0;j<4;j++) if(*(*(p+i)+j)<60) flag=1; if(flag==1) { printf("No.%d is flunked,scores are:\n",i); for(j=0;j<4;j++) printf("%5.1f",*(*(p+i)+j)); printf("\n"); } } } int main() { float score[5][4]={{65,80,78,90},{98,59,100,83},{92,66,78,70},{78,58,80,77},{64,68,70,81}}; search(score,5); return 0; }
本文出自 “鹏哥的博客” 博客,谢绝转载!
C语言例题系列--------第十四天
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。