题目

解决代码及点评


 /*
功能: 编写子函数, 求一维整型数组M[10]的最大值及次最大值(次最大值可能不存在)。
主函数中输入10个整数, 然后调用上述子函数, 若次最大值存在, 则输出最大值及次最大值,
否则输出最大值及'NO'(输出也在主程序中实现) 时间:8:55 2013/10/25
*/ #include<stdio.h>
#include <stdlib.h> #define N 10 void getMaxFirst61(int a[],int n,int *max1); //将最大值赋给*max1
void getMaxSecond61(int a[],int n,int *max2); //判断是否存在次大值,存在打印次大值,不存在打印No void main()
{
int a[N];
for(int i=0;i<N;i++)
scanf_s("%d",&a[i]); int maxFirst=a[0]; //初始化最大值
int maxSecond=a[0]; //初始化次大值 getMaxFirst61(a,N,&maxFirst); //调用函数获取最大值
printf("\n\nThe largest number is %d\n",maxFirst); //打印最大值 getMaxSecond61(a,N-1,&maxSecond); //调用函数获取次大值,如果不存在打印No,存在打印次大值 system("pause");
} void getMaxSecond61(int a[],int n,int *max2)
{
int flag=1;
for(int i=0;i<n-1;i++)
{
for (int j=i+1;j<n;j++)
{
if (a[i]==a[j])
{
flag=0;
break;
};
}
}
if (flag==0)
{
printf("No!");
}
else
{
for(int i=0;i<n;i++)
{
if(a[i]>*max2)
*max2=a[i];
}
printf("The max of low than maxfirst is : %d",*max2);
}
} void getMaxFirst61(int a[],int n,int *max1)
{
int s=0;
for(int i=1;i<n;i++)
{
if(a[i]>*max1)
{
*max1=a[i];
s=i;
}
}
//将最大值与最后一个元素交换
a[s]=a[s]+a[n-1];
a[n-1]=a[s]-a[n-1];
a[s]=a[s]-a[n-1];
}

代码编译以及运行

由于资源上传太多,资源频道经常被锁定无法上传资源,同学们可以打开VS2013自己创建工程,步骤如下:

1)新建工程

2)选择工程

3)创建完工程如下图:

4)增加文件,右键点击项目

5)在弹出菜单里做以下选择

6)添加文件

7)拷贝代码与运行

程序运行结果

代码下载

http://download.csdn.net/detail/yincheng01/6681845

解压密码:c.itcast.cn






基于visual Studio2013解决C语言竞赛题之1061最大值和次最大值的更多相关文章

  1. 基于visual Studio2013解决C语言竞赛题之0401阶乘

      题目 解决代码及点评 这个是一道经典的教科书题目,基本上每本基础的c/c++语言教科书都会有这个题目 用来演示循环语句 #include <stdio.h> #include ...

  2. 基于visual Studio2013解决C语言竞赛题之0205位数求和

     题目

  3. 基于visual Studio2013解决C语言竞赛题之0201温度转换

    题目 解决代码及点评 #include <stdio.h> #include <stdlib.h> void main() { float f; float c; float ...

  4. 基于visual Studio2013解决C语言竞赛题之0409 100以内素数

       题目 解决代码及点评 在已经知道素数是怎么判断的基础上,增加循环,可以判断出100以内的素数 /******************************************* ...

  5. 基于visual Studio2013解决C语言竞赛题之0408素数

      题目 解决代码及点评 判断一个数是不是素数的方法,一般是看n是不是能被n以内的某个整数(1除外)整除 为了提高效率,这个整数范围一般缩小到n的平方根 如果在这个范围内的整数都不能整除,那么 ...

  6. 基于visual Studio2013解决C语言竞赛题之0407最大值最小值

      题目 解决代码及点评 这道题考察循环和比较 /*********************************************************************** ...

  7. 基于visual Studio2013解决C语言竞赛题之0406数列求和

      题目 解决代码及点评 这个题目,还是考察for循环的使用 以及数列规律,该数列的特点是第n个分子 = 第n-1个分子 + 第n-2个分子,分母也是此规律 而另外一个规律是第n个分子和第n- ...

  8. 基于visual Studio2013解决C语言竞赛题之0405阶乘求和

      题目 解决代码及点评 这道题和上一道题类似,第n个累加项 = n-1累加项的n倍 由于有这个规律,我们可以用一个for循环实现 但是例子代码并没有这么做,大家可以回去修改下代码,使得代码更 ...

  9. 基于visual Studio2013解决C语言竞赛题之0404循环求和

      题目 解决代码及点评 这道题考验for循环和一个简单的算法 因为每次累加的值有规律,后面一次累加是前面一次累加的两倍 所以可以用简单的循环,计算累加项和累加结果 /************ ...

随机推荐

  1. 饭卡------HDOJ杭电2546(还是01背包!!!!!!)

    Problem Description 电子科大本部食堂的饭卡有一种非常诡异的设计,即在购买之前推断剩余金额. 假设购买一个商品之前,卡上的剩余金额大于或等于5元,就一定能够购买成功(即使购买后卡上剩 ...

  2. 颜色空间RGB与HSV(HSL)的转换

    一般的3D编程只需要使用RGB颜色空间就好了,但其实美术人员更多的是使用HSV(HSL),因为可以方便的调整饱和度和亮度. 有时候美术需要程序帮助调整饱和度来达到特定风格的渲染效果,这时候就需要转换颜 ...

  3. POJ 2455 Secret Milking Machine(搜索-二分,网络流-最大流)

    Secret Milking Machine Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 9658   Accepted: ...

  4. 内联函数 inline

    (一)inline函数(摘自C++ Primer的第三版) 在函数声明或定义中函数返回类型前加上关键字inline即把min()指定为内联. inline int min(int first, int ...

  5. java.lang.ClassNotFoundException: org.apache.commons.dbcp.BasicDataSource解决方法

    java.lang.ClassNotFoundException: org.apache.commons.dbcp.BasicDataSource解决方法 只需把这三个commons-pool.jar ...

  6. 键盘过滤第一个例子ctrl2cap(4.1~4.4)汇总,测试

    键盘过滤第一个例子ctrl2cap(4.1~4.4)汇总,测试 完整源代码 /// /// @file ctrl2cap.c /// @author wowocock /// @date 2009-1 ...

  7. django笔记(二)

    Model many-to-many可以通过through来定义详细信息. 表结构: property django可以用F和Q来配合查找,F可以用于同一个model不同field之间进行比较,可以对 ...

  8. Week3(9月23日):例子更Powerful更完整了,哇咔咔

    Part I:提问  =========================== 1.控制器中动作方法的返回类型有哪些? 2.如果控制器代码如下,请问浏览器中如何输入什么路由访问? public clas ...

  9. Citrix XenApp6.5 另类发布文档

    快捷方式.文档发布 第一种方式: 1.    创建快捷方式 2.    创建批处理文件(例如:lnk.bat),并输入以下内容: Start c:\users\public\desktop\adobe ...

  10. zk mysql 主从自动切换

    zookeeper测试: DBI 版本: /DBI-1.616# zjtest7-redis:/root/DBD-mysql-4.031# perl Makefile.PL Can't exec &q ...