C++编程 输入一个正整数n(1<n<=10),再输入n个整数,输出其最大值及其下标

2024-12-27 11:56:06
推荐回答(3个)
回答1:

#include<stdio.h>

main()

{

int n,i,j;

scanf("%d",&n);

int a[11];

for(i=0;i<n;i++)

scanf("%d",&a);

for(j=0;j<n;j++)

{

if(a[0]<a[j])

{

a[0]=a[j];

i=j;

}

else if(a[0]==a[j])

{

a[0]=a[j];

if(i>j)

{

i=j;

}

}

}

printf("%d%d",a[0],i);

}

扩展资料:

scanf函数用法:

scanf("输入控制符",输入参数);

功能:将从键盘输入的字符转化为“输入控制符”所规定格式的数据,然后存入以输入参数的值为地址的变量中。

用scanf()函数以%s格式读入的数据不能含有空白符时,所有空白符都被当做数据结束的标志。所以题中函数输出的值只有空格前面的部分。

如果想要输出包括空格在内的所有数据,可以使用gets()函数读入数据。gets()函数的功能是读取字符串,并存放在指定的字符数组中,遇到换行符或文件结束标志时结束读入。换行符不作为读取串的内容,读取的换行符被转换为字符串结束标志'\0'。

回答2:

#include
int main(){
int a[11],n,i,index=0;
scanf("%d",&n);
for(i=0;i scanf("%d",&a[i]);
for(i=0;i if (a[index] printf("max=%d,index=%d\n",a[index],index);
}

回答3:

#define N 9
#include
int main()
{
int a[N],n,i,index=0;
printf("Input n: ");
scanf("%d",&n);
printf("Input %d integers: ",n);
for(i=0;iscanf("%d",&a[i]);
for(i=0;iif (a[index]printf("max=%d,index=%d",a[index],index);
return 0;
}