写了一个很难看的C程序,求教……

来源:百度知道 编辑:UC知道 时间:2024/05/17 14:16:17
本人是新手哇……虽然我知道很难看,但是还是贴上来了。这些错误不搞明白我很难提高。
#include <stdio.h>
#include <stdlib.h>
void main()
{
int i,j,swap;
int Staff_Num[11];
char *Name[10];
for(i=0;i<10;++i){
Name[i]=malloc(10*sizeof(char));
}
printf("请输入名字和号码:\n");
for(i=0;i<10;++i){
scanf("%s %d",Name[i],&Staff_Num[i]);
}
/*开始冒泡排序*/
for(i=0,j=10,char tmp[20];i<=10;++i){
for(;j>=i;--j){
if(Staff_Num[j]<=Staff_Num[j-1]){
swap=Staff_Num[j];
Staff_Num[j]=Staff_Num[j-1];
Staff_Num[j-1]=swap;
Strcpy(tmp,Name[j]);
name[j]="\0";
strcpy(Name[j],Name[j-1]);
name[j-1]="\0";
strcpy(Name[j-1],tmp);
tmp="\0";
}
}
}
printf("输入你想要找到的员工的编号:")
scanf(&

#include <stdio.h>
#include <stdlib.h>
#include<string.h>
void main()
{ char tmp[20];
int SrhNme;
int i,j,swap;
int Staff_Num[10];
char * Name[10];
for(i=0;i<10;++i){
Name[i] = (char *)malloc(10*sizeof(char));
}
printf("请输入名字和号码:\n");
for(i=0;i<10;++i){
scanf("%s %d",Name[i],&Staff_Num[i]);
}
/*开始冒泡排序*/
for(i=0;i<10-1;++i){
for(j=0;j<10-1-i;++j){
if(Staff_Num[j]>Staff_Num[j+1]){
swap=Staff_Num[j];
Staff_Num[j]=Staff_Num[j+1];
Staff_Num[j+1]=swap;
strcpy(tmp,Name[j]);
strcpy(Name[j],Name[j+1]);
strcpy(Name[j+1],tmp);
strcpy(tmp,"");
}
}
}
for(i=0;i<10;++i){
printf("%s %d",Name[i],Staff_Num[i]);
printf("\n");
}
printf("输入你想要找到的员工的编号:") ;
scanf("%d",&SrhNme);
for(i=0