{ "question_id": 7435119, "question_title": "指针排序问题", "question_content": "
输入10个数,按绝对值从大到小排序输出。\n输入形式:输入10个float实数\n输出形式:保留小数点后两位有效数字;输出从大到小排列\n
", "difficulty": "困难", "answer_id": 53405662, "answer_content": "\n#include <math.h>\n#include <stdio.h>\nvoid paixu(float *p,int n)\n{\n\tint i,j;\n\tfor (i = 0; i<n-1; i++) \n\t{ //控制n-1趟冒泡\n\t\tfor (j = 0; j<n - 1 - i; j++)\n\t\t{\n\t\t\tif (fabs(p[j])<fabs(p[j + 1])) \n\t\t\t{ //比较相邻的两个元素\n\t\t\t\tfloat tmp; //临时变量\n\t\t\t\ttmp = p[j]; //交换\n\t\t\t\tp[j] = p[j + 1];\n\t\t\t\tp[j + 1] = tmp;\n\t\t\t}\n\t\t}\n\t}\n}\n\nint main()\n{\n\tfloat f[10];\n\tint i;\n\tfor(i=0;i<10;i++)\n\t\tscanf("%f",&f[i]);\n\tpaixu(f,10);\n\tfor(i=0;i<10;i++)\n\t\tprintf("%.2f ",f[i]);\n\n\treturn 0;\n}
\n\n\n", "tag_name": "c语言", "cpp": "#include