解题思路:
愉快的心情才能使自己身心投入!
每题笑话:
一个微友让我曝照,我说:“看了照片不许说我丑哦~”
她:“你放心,保证不说!”
曝照之后对方半天没说话,我忍不住说:“如果真的丑你就直说吧。”
然后屏幕显示:您还不是对方的好友。。。
注意事项:
学精C语言,必须在做题时尽量用比别人少的代码完成任务!
参考代码:
#include<stdio.h> #include<math.h> void main() { int a[10]; int i,p,min=0; for(i=0;i<10;i++) { scanf("%d",&a[i]); } for(i=0;i<=9;i++) { if(fabs(a[min])<fabs(a[i+1])) { min=min; } else { min=i+1; } } p=a[9]; a[9]=a[min]; a[min]=p; for(i=0;i<=9;i++) { printf("%d ",a[i]); } printf("\n"); }
有不懂得可以留言!看在小的这么用心的份上,看客老爷们点个赞吧!
0.0分
7 人评分
为什么 :if(fabs(a[min])<fabs(a[i+1])) 这样不行吗 :if(fabs(a[min])<fabs(a[i])) 菜鸡求指导.......
求助大神,帮忙看看哪里错了 #include<stdio.h> #include<math.h> int main() { int i; int str[10]; int temp; int min=0; for(i=0;i<10;i++) { scanf("%d",&str[i]); } for(i=0;i<10;i++) { if(fabs(str[min])<fabs(str[i+1])) { min=min; } else { min=i+i; } } temp=str[9]; str[9]=str[min]; str[min]=temp; for(i=0;i<10;i++) { printf("%d ",str[i]); } printf("\n"); return 0; }
#include<stdio.h> void main(){ int a[10],b,min,j,t; for(int i=0;i<10;i++){ scanf("%d",&a[i]); if(i==0){ min=a[i]; } if(a[i]<0){ b=-a[i]; if(i==0){ min=b; } if(min>b){ min=b; j=i; } continue; } if(min>a[i]){ min=a[i]; j=i; } } t=a[9]; a[9]=a[j]; a[j]=t; for(int i=0;i<10;i++){ printf("%d ",a[i]); } }
#include<stdio.h> int main() { int a[10],i,j,s,pi,y,t; for(i=0;i<10;i++) scanf("%d",&a[i]); if(a[i]<0) { t=a[i]; a[i]=t*(-1); } s=a[0]; pi=0; for(i=1;i<=9;i++) { if(a[i]<s) { s=a[i]; pi=i; } } y=a[9]; a[9]=a[pi]; a[pi]=y; for(i=0;i<10;i++) printf("%d ",a[i]); printf("\n"); return 0; } 错误50%,哪错了?
豆豆哦 2019-02-22 22:31:46 |
如果有负数呢
#include <stdio.h> #include<math.h> int main() { int a[10]; int i,t,k=0; for(i=0;i<10;i++) scanf("%d",&a[i]); for(i=0;i<9;i++) { if(fabs(a[k])>fabs(a[i+1])) k=i+1; } t=a[k]; a[k]=a[9]; a[9]=t; for(i=0;i<10;i++) printf("%d ",a[i]); return 0; }
#include<stdio.h> #include<math.h> int main() { double a[10],b[10],t,min,p=0; int i,n; for(i=0;i<10;i++) { scanf("%lf",&a[i]); if(a[i]<p) b[i]=-a[i]; else b[i]=a[i]; } for(i=0;i<10;i++) { if(b[i]<b[0]) { min=b[i]; n=i; } } t=b[9];b[9]=b[n];b[n]=t; for(i=0;i<10;i++) printf("%f ",b[i]); return 0; } 为什么不过
#include <stdio.h> #include <math.h> int main() { int a[10], min = 21000000, flag = 0; for(int i = 0; i < 10; ++i) { scanf("%d", &a[i]); if(abs(min)> abs(a[i])) { min = a[i]; flag = i; } } a[flag]^=a[9]^=a[flag]^=a[9]; for(int i = 0; i < 9; ++i) { printf("%d ", a[i]); } printf("%d\n", a[9]); return 0; } 为什么同不过
为啥else min=i+1呀
小狗屎 2019-01-11 14:06:44 |
else表示这个值不比下一个大,要调换数组数值,排序得继续向下扫描,序数就跟着走,所以要加一
C语言程序设计教程(第三版)课后习题1.6 (C语言代码)浏览:574 |
C语言程序设计教程(第三版)课后习题8.4 (C语言代码)浏览:541 |
1128题解(返回值为数组的情况)浏览:571 |
拆分位数 (C语言代码)浏览:464 |
C语言程序设计教程(第三版)课后习题5.4 (C语言代码)浏览:550 |
C语言程序设计教程(第三版)课后习题5.7 (C语言代码)浏览:447 |
C语言程序设计教程(第三版)课后习题6.5 (C语言代码)浏览:648 |
C语言程序设计教程(第三版)课后习题6.9 (C语言代码)浏览:487 |
【亲和数】 (C语言代码)浏览:732 |
【密码】 (C语言代码)浏览:574 |