int main() { char students[10][21]; //声明一个二维数组,存放10个同学名字 for (int i = 0; i < 10; ++i) { scanf("%s", students[i]); } for (int i = 0; i < 9; ++i) { for (int j = i + 1; j < 10; ++j) { if (strcmp(students[i], students[j]) >= 0) { /...
1 将100个人的姓名,存到二维字符数组中 2 通过strcmp比较。 通过strcpy赋值。 对二维字符数组进行排序 3 输出排序的结果。排序中,除了比较和赋值与普通的整型数组排序不同外,其他的 都一样。
int main(){ char name[100][15];char tmp[15];int n,i,j;scanf("%d",&n);//名字数 for ( i=0;i<n;i++){ scanf("%s",name[i]);} for (i=0;i<n;i++){ for (j=0;j<n-i-1;j++){ if (strcmp(name[j],name[j+1])>0){ strcpy(tmp,name[j]);strcpy(name[...
//参考:#include <string.h>#include <stdio.h>int main(){ char name[10][20], temp[20]; int i,j; for (i = 0; i < 10; ++i){ scanf ("%s", name[i]); } for (i = 0; i < 10; ++i){ for (j = i+1; j < 10; ++j){ if (strcm...
//名字升序排序函数intname_cmp(constvoid*e1,constvoid*e2){//把元素强制转换成结构体类型,再根据...
一个放名字,如:char name[100][20];float score[100];以后输入、输出、排序等等操作,都把name和score看做不可分离的一组(类似于同一个i的结构体变量),让name[i]和score[i]成为一对!排序时,当score[k]移动到m位置时,对应的name[k]也要同时移动的m位置。这样,名字就跟着成绩走了。
只能告诉你思路:读取文件内容,识别姓名,提取第一个字(复姓没法实现)也就是姓,如果之前没存在过就记录下来,并把出现次数加1,再看下一个,如果出现过则不重新记录,找到这个姓之前的记录,出现次数加1。识别完所有名字后,概率就好算了,不用说了吧。
char temp[20];printf("请输入6个人的名字:\n");int i;for (i = 0; i < 6; i++){ gets(name[i]);} printf("\n\n这六个人的名字如下:\n");for (i = 0; i < 6; i++){ printf("%s ", name[i]);} printf("\n\n");printf("按字典排序后如下所示:\n");int j...
这个题目就是一个排序,可以用strcmp来表达,然后就是计算了。