输入一个正整数n,再输入n个整数,将最小值与第一个数交换,最大值与最后一个数交换,再输出交换后的n个数

作者&投稿:藏怀 (若有异议请与网页底部的电邮联系)
输入一个正整数n(1 <n≤10),再输入n 个整数,将最小值与第一个数交换,最大值与最后一个数交换,然后输出~

#include
int main(void)
{
int a[10];
int n,i,min,max,t;
printf("Input n: ");
scanf("%d",&n);
printf("Input %d integers: ",n);
for(i=0;i<n;i++)
scanf("%d",&a[i]);
min=max=0;
printf("After swapped: ");
for(i=1;i<n;i++)
{if(a[i]>a[max])max=i;
if(a[i]<a[min])min=i;
}
t=a[min];
a[min]=a[0];
a[0]=t;
if(0==max)max=min;
t=a[max];
a[max]=a[n-1];
a[n-1]=t;
for(i=0;i<n;i++)
printf("%d ",a[i]);
return 0;
}

可以参考下面的代码:
#include
void main()
{
int i,j=0,k=0,t,n,min,max,a[10];
printf("输入整百数度的个数: ");
scanf("%d",&n);
printf("输入%d个整数: ",n);
scanf("%d",&a[0]);
max=a[0];min=a[0];
for(i=1;i<n;i++)
{
scanf("%d",&a[i]);
if(max<a[i]) {max=a[i];j=i;}
if(min>a[i]) {min=a[i];k=i;}
}
t=a[k];a[k]=a[0];a[0]=t;
t=a[j];a[j]=a[n-1];a[n-1]=t;
printf("交换顺序后内输出: ");
for(i=0;i<n;i++)
printf("%d ",a[i]);
}

扩展资料:
1、printf()函数
printf()函数是格式化输出函数, 一般用于向标准输出设备按规定格式输出
信息。在编写程序时经常会用到此函数。函数的原型为:
int printf(const char *format, ...);
函数返回值为整型。若成功则返回输出的字符数,输出出错则返回负值。
printf()函数的调用格式为:
printf("", );
2、for循环
for循环小括号里第一个“;”号前为一个为不参与循环的单次表达式,其可作为某一变量的初始化赋值语句, 用来给循环控制变量赋初值; 也可用来计算其它与for循环无关但先于循环部分处理的一个表达式。
“;”号之间的条件表达式是一个关系表达式,其为循环的正式开端,当条件表达式成立时执行中间循环体。
参考资料来源:百度百科-for循环
参考资料来源:百度百科-printf()

你题目有没有写全,如果按照你这个题目,没有规定输入整数的位数,考虑要输入任意位数的数字,那么数字就不能使用已有的整数类型来保存(比如int只有4个字节大小,超出就溢出了)。

我写的是任意长度的数字输入,比较取最小值。(你内存够就行)




c语言编程 输入一个正整数n(1<n《10),再输入n个整数,将最小值与第一个...
1、首先建立一个工程和.c文件。2、然后输入头文件和主函数。3、定义变量类型并初始化。4、输入一个正整数n(1<n《10),再输入n个整数。5、将最小值与第一个数交换,最大值与最后一个数交换。6、剔除整数的个位数。7、最后得到输出的结果。8、编译,运行,得到最后的结果。

输入一个正整数n(1< n ≤10),再输入n个整数,将最小值与第一个数交换...
include <stdio.h> int main(void){ int n,i,a[10],max,min,temp,r,p;scanf("%d",&n);for (i=1;i<=10;i++)scanf("%d",&a[i]);min=a[1];for (i=1;i<=n;i++){ if (a[i]<a[1]){ min=a[i];r=i;} } temp=a[1],a[1]=min,a[r]=temp;max=a[n];fo...

C语言 输入一个正整数n,再输入n个整数,输出最小值。下面写了2个程序...
第一个 不能动态定义数组大小 即不能 int n;printf("Input n:");scanf("%d",&n);int a[n];而且要将 min=a[0] 放到for 语句外面 另外这两个的scanf语句 都没有加 取址符 & 在第二个基础上修改如下 include<stdio.h> int main(){ int n,i,a[100],min;printf("Input n:");sca...

输入一个正整数n(1<n<=10),再输入n个整数存入数组a中,先将数组a中的n...
include <stdio.h> int main(){ int temp;int a[],n;for(int i=0;i<n;i++)scanf("%d",&a[i]);for(int i=0;i<n\/2;i++){ temp=a[i];a[i]=a[9-i];a[9-i]=temp;} for(int i=0;i<n;i++)printf("%d ",a[i]);return 0;} ...

c语言,输入一个正整数n(1<n≤10),再输入n个整数,将最小值与第一个数交...
("输入n:"); scanf ("%d",&n); printf ("输入%d个数:\\n",n); for (i=0; i<n; i++) scanf ("%d",&a[i]); min = a[0]; for (i=0; i<n; i++) if (min > a[i]) { min = a[i]; k = i; } printf ("最小值是:%d\\n下标是:%d\\n",...

用c语言编程:要求用数组,先输入一个正整数n,在输入n个整数,求其平均值...
2016-03-31 c语言,求最小值:输入一个正整数n,再输入n个整数,输出最小... 2 2016-05-24 C语言作业 用数组求数据平均值(保留两位小数) 2015-11-21 C语言编程:输入n个正整数并保存到数组中,求出最大、小值,平... 2 2014-05-27 c语言,如何实现第一行输入整数n,第二行输入n个整数,并将其.....

C语言题目:输入一个正整数n(1<n≤10),再输入n个正数,输出平均值(保留两 ...
%d",&n);printf("Please input %d integers:",n); \/\/移动到循环外for(i=0;i<n;i++) \/\/这里多了分号{scanf("%d",&a[i]);sum+=a[i];}average=sum\/n; \/\/sum是float才能得到小数printf("averge=%.2f\\n",average); \/\/变量名for(i=n-1;i>=0;i--)printf("%d ",a[i])...

C语言改错:输入一个正整数n(1 <n≤10),再输入n 个整数,将最小值与...
",n); for(i=0;i<n;i++) scanf("%d",&a[i]); for(i=1;i<n;i++) { if(a[i]

编写程序,输入一个正整数n(1<n≤10),再输入n个整数
if(scanf("%d",&n)!=1 || n<2 || n>10){ printf("Input error, exit...\\n"); return 0; } for(max_i=i=0;i<n;i++) if(scanf("%d",x+i),x[i]>x[max_i]) max_i=i; i=x[max_i]; x[...

输入一个正整数n(1 <n≤10),再输入n 个整数,将最小值与第一个数交换...
那个你交换了最小值之后,最大值的位置发生了变化。所以要先找最小值,交换最小值之后再去查找最大值,再交换最大值。

抚宁县17180222081: 输入一个正整数n,再输入n个整数,将最小值与第一个数交换,最大值与最后一个数交换,再输出交换后的n个数这是我写的java程序,可以帮忙看看错在哪... -
有容艾素:[答案] 太不规范了吧.看着头晕. for(i=0;i

抚宁县17180222081: 判断素数输入一个正整数n,再输入n个正整数,判断它们是否为素数.我只会一个的,不知道怎么再在这个里面循环.求教:#include#includeint main(void){int i,... -
有容艾素:[答案] #include int main() { int n,a[20],i,j; printf("输入需要判断的个数:\n"); scanf("%d",&n); printf("输入这些数:\n"); for(i=0;i

抚宁县17180222081: 编程,输入一个正整数n,再输入n个整数,输出其中的最大值输入的每个数都在100 - 200之间,如果某 -
有容艾素: dim a,b,c c=""'赋予c空值 a=inputbox("n?")'输入N For a=0 to n-1b=inputbox("?")'询问 b=int(b)'将b转化为整数 If b>99 or b<201 then'如果b的范围在100~200 If c<>"" then'如果c不为空 If c>b then c=c'如果c大于b就不变 Elseif c<b then c=b'如果b大于c则选最大数 End if else c=b'如果c为空则变成b End if End if Next Msgbox c '2014年5月于厕所

抚宁县17180222081: C语言,输入一个整数n再输入n个整数,输出其中所有偶数 -
有容艾素: #includevoid main() {int n,i,t;int m[100]; //定义了一个长度100的数组,来放这n个数,不过这样一来也变相的限制了n要小于100.可根据实际情况定义数组的大小.printf("请输入一个正整数个数:");scanf("%d",&n);printf("请输入%d个正整数:",n);for(i=0;i (m[n])) m[n]=m[i];}printf("其中最大的数为:%d\n",m[n]); }

抚宁县17180222081: c语言怎么写出:“输入一个正整数n,再输入n个整数,输出最小值”的代码 -
有容艾素: #include int main() { int last=0,cnt=0,num; while(1) { printf("please input number"); scanf("%d\n",&num); cnt++; if(last>num) last=num; if(cnt>0) printf(); return 0; }

抚宁县17180222081: c语言输入一个正整数n,再输入n个整数,降序输出
有容艾素: #include &lt;stdio.h&gt;main(){ int i,j,N,t,k=0;int score[100];printf("请输入整数的个数N:\n"); scanf("%d",&amp;N); printf("请输入N个整数:\n"); for(i=0;i&lt;N;i++)scanf("%d",&amp;score[i]); for(j=0;j&lt;N-1;j++) for(k=j+1;k&lt;=N-1;k+...

抚宁县17180222081: 编程题:输入一个正整数n,再输入n个整数,输出最小值. -
有容艾素: #include <iostream.h> #include <vector> using namespace std; int main() { int n,m; cout << "待处理个数 n: "<<endl; cin >> n; vector <int> a; cout << "输入数据: "; for(int i = 0; i < n; i++) { cin >>m; a.push_back(m); } for (int j =0; j < n; j++) { if( ...

抚宁县17180222081: c语言,求最小值:输入一个正整数n,再输入n个整数 -
有容艾素: #include int main(){ int n, minv, a; scanf("%d", &n); scanf("%d", &minv); n--; while (n--){ scanf("%d", &a); if (a} printf("%d\n", minv); return 0; }

抚宁县17180222081: 输入一个正整数N,再输入NG个整数,输出其中的最大值,输入的每个数都在100~200之间,如果某个数不在100~200之 -
有容艾素:[答案] int max=0; for(int i=0;imax} max=a[i]; 你可以用随机生成函数 rand()

抚宁县17180222081: 用c语言的循环语句,输入一个正整数n,在输入n个整数,输出最小值. -
有容艾素: 1、新建一个工程和.c文件 ,输入头文件和主函数. 2、定义变量类型和赋初值. 3、输入整数. 4、用for循环计算整数的长度. 5、用for循环将各位数字存入数组中. 6、用for循环输出数组. 7、编译,输出最小值.

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网