贴一下做的算法题
1,输入10个职工的姓名和职工号。2,按职工号由小到大进行排序,姓名顺序也随之调整。
3,输入一个职工号,输出对应的姓名
贴出来是我自己好好学习c语言。写的很差,多多指点。有什么题也可以让我做做,不过我是新手,不要太难啊
程序代码:
/* Note:Your choice is C IDE */ #include "stdio.h" #include "string.h" int main() {int n,j,k,t,i; int d; int m[10]; int m1[10]; char name[10][10]; char old_name[10]; int o=1; for(i=0;i<4;i++) scanf("%d%s",&m[i],&name[i][0]); while(o) {for(j=0;j<4;j++) m1[j]=m[j]; for(n=0;n<3;n++) if(m[n]>m[n+1]) {t=m[n]; m[n]=m[n+1]; m[n+1]=t; strcpy(old_name,&name[n][0]); strcpy(&name[n][0],&name[n+1][0]); strcpy(&name[n+1][0],old_name); } o=0; for(k=0;k<4;k++) if(m[k]!=m1[k]) o=1; } for(i=0;i<4;i++) {printf("%d ",m[i]); printf("%s ",&name[i][0]); } printf("\n你想查询工号吗,1 是,2 不是 : "); scanf("%d",&d); if(d==1) {printf("请输入你的工号 :"); scanf("%d",&t); for(i=0;i<4;i++) if(t==m[i]) {printf("你的工号%d,你的名字%s\n",m[i],&name[i][0]); printf("谢谢使用\n"); system("pause"); return 0; } printf("输入有错误");} else {printf("谢谢使用"); system("pause"); return 0; } }