C语言:要求用选择法对10个学生的成绩由高到低排序,当然,也要连同他的姓名一起。这个姓名用的是二维

C语言:要求用选择法对10个学生的成绩由高到低排序,当然,也要连同他的姓名一起。这个姓名用的是二维数组干嘛呢?成绩和姓名都用一维数组不行么?在进行排序的时候,成绩利用了中间变量交换的方法,那姓名不是同理么?还要strcpy函数,是因为这个中间变量是数组(数组的首地址是常量)的缘故么?

因为有很多同学,一维数组肯定不行的
因为每个人的名字就是一个一维数组了,你比如说char a[] = "zhangsan"这就是一维数组了
要放很多人的名字的话只能用二维数组
姓名的交换肯定不能用赋值语句的
char a[] = "zhangsan";
char b[] = "lisi";
这两个交换只能用一个中间变量的数组,而且要用strcmp,你不能用a =b,只能用strcpy(a,b);
温馨提示:内容为网友见解,仅供参考
无其他回答

...当然,也要连同他的姓名一起。这个姓名用的是二维
因为有很多同学,一维数组肯定不行的 因为每个人的名字就是一个一维数组了,你比如说char a[] = "zhangsan"这就是一维数组了 要放很多人的名字的话只能用二维数组 姓名的交换肯定不能用赋值语句的 char a[] = "zhangsan";char b[] = "lisi";这两个交换只能用一个中间变量的数组,而且要用str...

C语言用选择法对10个整数按从大到小排序。10个整数用scanf函数...
include\/\/标准输入输出函数调用需要此头文件、就是那个printf和scanf函数要用的\\x0d\\x0avoid main()\/\/主函数\\x0d\\x0a{int i,j,min,temp,a[10];\\x0d\\x0aprintf("请输入:\\n"); \/\/屏幕输出引号内的字符然后换行\\x0d\\x0afor(i=1;ia[j]) min=j; \/\/大小数值判断\\x0d\\x0at...

c语言如何用选择排序对10个整数排序
for (i=0;i<10;i++) \/\/在c语言中,数组的下标从0开始 printf("%5d",a[i]); \/\/输出这10个数 printf("\\n"); \/\/以下8行是对这10个数排序 for (i=0;i<10;i++){min=i;for(j=i+1;j<10;j++)if (a[min]>a[j]) min=j;temp=a[i]; \/\/以下3行将a[i+1]~a[10]中...

c语言: 输入10个字符串,用选择排序法对十个字符串按大到小排序并...
include<stdio.h> include<stdlib.h> define N 10\/* 设定要输入的字符串个数,可更改 *\/ int cmp(char *p1,char *p2) \/* 字符串比较函数 *\/ {int i=0;while (*(p1+i)==*(p2+i))if (*(p1+i++)=='\\0') return 0; \/* 这里是先判断*(p1+i)=='\\0',然后再是i++ *\/...

C语言用冒泡法和选择法对10个数进行排序
选择排序法对十个整数进行排序 \/ \/\/n为数组长度;void sort(int a[],int n){ int temp,min;for(int i=0;i<n;i++){ min=i;\/\/先假设最小下标为i for(int j=i+1;j<n;j++)if(a[j]<a[min])min=j;\/\/对i之后的数进行扫描将最小的数赋予min if(min!=i){ temp=a[i];a[...

C语言:,用"选择法"对输入的10个字符按由大到小顺序排列
include<stdio.h> int main(void){ char a[11];int i,j;int max;int t;printf("请输入10个字符:\\n");gets(a);for(i = 0; i < 9; i++){ max = i;for(j = i+1; j < 10; j++)if(a[max] < a[j])max = j;t = a[max];a[max] = a[i];a[i] = t;} puts...

用C语言编程:用选择法对10个整数排序,10个整数用scanf函数输入_百度...
1、打开visual C++ 6.0,准备一个空白的c语言文件,引入头文件,在main函数中定义变量和数组:2、接下来用scanf函数输入的10个数,将输入的数存入到变量a中,接着进行比较排序,如果后一个数比前一个数大则利用中间变量t实现俩值互换,最后输出排序的结果:3、编译运行程序,输入任意的10个数,回车...

c语言编程题:分别用冒泡法和选择法对输入的10个整数由大到小排序
void maopao(int *a){ int temp=0;for(int i=0;i<10-1;++i)\/\/只需要冒泡9个数最后一个就已经有序了 for(int j=0;j<10-i-1;++j)\/\/j的取值需<10-i-1;为何-1,if(a[j]<a[j+1]){ temp=a[j];a[j]=a[j+1];a[j+1]=temp;} } void xuanze(int *a){ for(int...

编写程序,用选择法对10个整数按从小到大顺序排序
for(i=0;i<10;i++) { printf("%d ",a[i]); } return 0;} 追问 怎么结果不是输入的10个数的正确排序,而是一堆很怪的数? 更多追问 本回答由提问者推荐 举报| 答案纠错 | 评论 15 9 倒霉熊lujin 采纳率:59% 来自:芝麻团 擅长: C\/C++ 编程语言 教育\/科学 娱乐休闲 电脑\/网络 为...

C语言,用选择法对数组中10个整数按由小到大排序?求解释!!!
选择排序的思想是:每一趟的排序过程都是在当前位置后面剩下的待排序对象中选出值最小的那个,然后放到当前位置上。该程序中k的定义主要是为了存放数组中最小数的位置。然后通过t=array[k];array[k]=array[i];array[i]=t;这三条语句,再把这数组中最小的数字放到前面。注意C语言当中的“=”不...

相似回答