从键盘输入10个整数存入整型数组中,输出该数组中的最大值及其下标,要求通过指针访问该数组的元素

如题所述

#include <stdio.h>

int main()

{

int max = 0,*p = NULL;

int arr[10] = {0};

printf("输入10个整数:\n");

for(p = arr;p < arr + 10;p++)

scanf("%d",p);

for(p = arr;p <arr + 10;p++){

if(*p < *(p+1))

max=*(p+1);

//else   //此处不需要

//max=*p;

}

printf("max=%d\n",max);

return 0;

}

输出:

扩展资料:

main函数用法

1、C++中的main函数

C++继承了C语言的大部分特性,因此保留了“程序总是从main函数开始执行,且总是默认从main函数的return语句或结尾处结束运行”这一传统,但是要注意,C++中的main函数要想作为程序执行的出入口,必须写在全局(Global)范围,

不能写成某个结构体或某个类的成员。虽然main函数可以作为结构体或者类的成员函数,但相应地会失去作为程序出入口的功能。

C++中全局main函数的书写格式与C语言完全相同,功能也完全相同,且同一C++程序同样只能有一个全局main函数。

2、Java中的main函数

Java同样是以main函数作为程序执行出入口的,但Java作为“更纯洁”的面向对象语言,它的main函数与C/C++有很大的不同。

首先,返回值的概念淡化,在Java Application中main不允许返回值,因此int main是被禁止的,必须使用void main,int main仅限在JavaBean中使用。

其次,Java中所有的函数必须属于类,没有什么全局函数一说,因此main函数不能是全局成员,必须是某个类的成员。

第三,由于main函数变成了类的成员函数,因此要想直接被系统调用,还必须使用public static使其成为静态函数并具有公开权限。

第四,main函数的参数被简化,只需要提供字符串数组即可,不需要提供参数个数(这是由于Java的数组具有下标检查功能的原因)

Java Application中的main函数一般格式如下(类名可以自定义,但保存为Java源码时,主文件名必须与类名相同,否则可能无法运行)

public class MainDemo{

public static void main(String[]args){

//TODO:在此处写入主函数的内容

}

}

Java Applet的运行机制与Java Application完全不同,因此不需要main函数

3、C#中的main函数

C#中的main函数与Java大同小异,同样必须是类成员,同样使用字符串数组作唯一参数,同样是静态函数,同样的void main,

与之不同的是:main的首字母变成了大写,即"Main函数“,且是否限定为public级别已经无所谓了(默认没有public,但某些场合可能还是需要public)

另外,需要注意的是,C#中不再有”类名必须与主文件名同名“的限制,即使类名不和主文件名相同,程序照样可以运行。

C#应用程序中的main函数默认是这样的(注意main的首字母已是大写)

C#和C/C++、java不同的是C#不在拘泥于必须从main()函数开始执行,C#是属于事件触发。

class Program{

static void Main(string[]args){

温馨提示:内容为网友见解,仅供参考
第1个回答  2016-05-19

#include<stdio.h>

int main()

{int a[10],i,*p=a,*q=a;

for(i=0;i<10;p++,i++)

{scanf("%d",p);

 if(*p>*q)q=p;

}

printf("Max=a[%d]=%d\n",q-a,*q);

getch();

return 0;

}

本回答被提问者和网友采纳

从键盘输入10个整数存入整型数组中,输出该数组中的最大值及其下标,要求...
int main(){ int max = 0,*p = NULL;int arr[10] = {0};printf("输入10个整数:\\n");for(p = arr;p < arr + 10;p++)scanf("%d",p);for(p = arr;p <arr + 10;p++){ if(*p < *(p+1))max=*(p+1);\/\/else \/\/此处不需要 \/\/max=*p;} printf("max=%d\\n",...

c语言中,用指针,实现从键盘输入十个整数,计算出最大值和最小值,并返 ...
int max=0,min=100;p=&max;\/\/指针P指向max q=&min;\/\/指针q指向min int x;scanf("%d",&x);while(x!=0) \/\/输入0结束输入 { if(*p<x)p=x;if(*q>x)q=x;scanf("%d",&x);} printf("max:%d\\tmin:%d\\n",*p,*q);while(1);return 0;} 如果确定为输入10 个数的话,可...

用c语言编程,从键盘上输入10个整数存放到一维数组中,输出其中最大的数...
解题思路:先键盘输入10个整数,假设数组的第1个是最大数max,同时设置最大值下标为0,接着for循环依次判断其是否大于最大数,如果大于替换掉最大值,并更新最大值下标,最后输出最大数和数组下标。参考代码:include<stdio.h> int main() { int i,a[10],max,maxi;\/\/输入10个整数 for(i=0;...

C语言,运用指针,从键盘输入10个整数,编程实现求最大值和最小值并返回...
if(*p>*q)q=p;} printf("Max=a[%d]=%d\\n",q-a,*q);return 0;}

C语言编程:键盘输入10个数,用函数实现计算数据中最大值、最小值,并返 ...
在主函数中声明一个具有10个int型元素的数组存放键盘输入的数据,声明变量ml记录最大值位置、ms记录最小值位置。自定义一个函数void Input_Max_Min(int *p,int *pl,int *ps)来完成题设要求,其中p是数组首指针,pl是最大值位置(下标)变量指针,ps是最小值位置(下标)变量指针。在主函数中输出结果...

用指针方式编写程序,从键盘输入10个整形整数,并存入数组,要求将10个数...
int main(){int a[10],*p,*max,*min,t;for(p=a;p<a+10;p++)scanf("%d",p);for(max=min=p=a;p<a+10;p++)if(*max<*p)max=p;else if(*min>*p)min=p;t=*a; *a=*max; *max=t;t=*(a+9); *(a+9)=*min; *min=t;for(p=a;p...

用指针实现:由键盘输入10个整数,将最大的调到最后,最小的调到最前
\/* 用指针实现:由键盘输入10个整数,将他们按由小到大的顺序排列 *\/ include "stdio.h"\/* 简单选择排序 *\/ void SelectSort(int *arr, int len){ int i, j, k;int temp;for(i=0; i<len-1; i++){ k = i;for(j=i+1; j<len; j++){ if(*(arr+j) < *(arr+k))k =...

c语言输入10个整数,将其中最大数与第一个数交换,最小数与最后一个数交 ...
exchange(int* p) \/\/将最小的数与第一个数对换,把最大的数与最后一个数对换。{ int i, *max = p, *min = p, temp; \/\/<=== for (i = 1; i < N; i++) if (*(p + i) > *max)\/\/<=== max = (

用指针方式编写程序:从键盘输入10个整型数据并存入数组,要求用函数实 ...
include <stdio.h>void swap(int *a,int *b){ int tmp; tmp=*b;*b=*a;*a=tmp;}void swapmaxmin(int *a,int n){ int i; int *max,*min; max=min=a; for(i=0;i<n;i++) { if(*(a+i)>*max) max=a+i; if(*(a+i)<*min) min=a+i;...

找最值 从键盘任意输入10个整数,用指针变量作函数参数编程计算最大值...
include<stdio.h> void find(int *a,int *p,int *q){int i;p=*q=a[0];for(i=1;i<10;i++)if(*p>a[i])*p=a[i];else if(*q<a[i])*q=a[i];} int main(){ int i,a[10],max,min;for(i=0;i<10;i++)scanf("%d",&a[i]);find(a,&max,&min);printf("max=...

相似回答