#include <stdio.h>
void input(int a[],int num); /* 给数组读入num个整数 */
int isSort(int a[],int num); /* 判断数组是不是按升序排列的,是返回1,不是返回0 */
int findMax(int a[ ],int num); /* 找出数组中的最大值并返回 */
int main()
{
int n,a[10]={0};
scanf("%d",&n);
input(a,n);
int i;
int flag;
i=isSort(a,n);
if(i=1)
{
printf("Yes");
}
else if(i=0)
{
flag=findMax(a,n);
printf("%d",flag);
}
/* n是3到10之间的合法数 */
/* 在此添加代码 */
return 0;
}
void input(int a[],int num)
{
int i;
for(i=0;i<num;i++)
{
scanf("%d",&a[i]);
}
}
int isSort(int a[],int num)
{
int i;
for(i=0;i<num-1;i++)
{
if(a[i]>a[i+1])
{
return 0;
break;
}
else
return 1;
}
}
nt findMax(int a[],int num)
{
int i;
int tmp;
for(i=0;i<num;i++)
{
if(a[i]<a[i+1])
{
tmp=a[i];
a[i]=a[i+1];
a[i+1]=tmp;
}/*大一的零基础c语言,用了个傻方法,大脑昏昏沉沉。*/
return a[0];
}
/* 在此添加函数的实现 */v
这是一道c语言的基础题,希望大家给点意见(程序在头歌编译失败)
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
1条回答 默认 最新
aabyte 2021-11-10 21:34关注修改如下:
#include <stdio.h> void input(int a[], int num); /* 给数组读入num个整数 */ int isSort(int a[], int num); /* 判断数组是不是按升序排列的,是返回1,不是返回0 */ int findMax(int a[ ], int num); /* 找出数组中的最大值并返回 */ int main() { int n, a[100] = {0}; scanf("%d", &n); input(a, n); int i; int flag; i = isSort(a, n); if (i == 1) { printf("Yes"); } else if (i == 0) { flag = findMax(a, n); printf("%d", flag); } /* n是3到10之间的合法数 */ /* 在此添加代码 */ return 0; } void input(int a[], int num) { int i; for (i = 0; i < num; i++) { scanf("%d", &a[i]); } } int isSort(int a[], int num) { int i; for (i = 0; i < num - 1; i++) { if (a[i] > a[i + 1]) return 0; } return 1; } int findMax(int a[], int num) { int i; int tmp = a[0]; for (i = 0; i < num; i++) { if (tmp < a[i]) tmp = a[i]; } return tmp; }解决 无用评论 打赏 举报