重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
方法一(使用结构体做法)
创新互联成立于2013年,先为铁西等服务建站,铁西等地企业,进行企业商务咨询服务。为铁西企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。
#includestdio.h
#includestring.h
typedef struct namescore//定义结构体,包括姓名和分数
{
char name[10];
float score;
}NS;
main()
{
NS s[100];//定义结构体数组变量 ,可以存放100个学生的姓名和分数
NS temp;
int i=0,j=0;
int n=-1;
printf("请输入姓名和分数:(输入exit结束)");
while(1)//设置死循环
{
n++;
printf("\n请输入姓名:");
scanf("%s",s[n].name);//赋值姓名
if(!strcmp("exit",s[n].name))//当输入exit时退出循环
{//strcmp包含在string.h头文件中,判断两个字符串是否相等
n--;break;//因为输入"exit"会保存到结构体中,所以要n--
}
printf("\n请输入分数:");
scanf("%f",s[n].score);//输入分数
}
for(i=0;in;i++)//用冒泡法排序
for(j=i+1;j=n;j++)
{
if(s[i].scores[j].score)//如果下一个数比前一个数大,则交换
{
temp=s[i];
s[i]=s[j];
s[j]=temp;
}
}
printf("成绩从大到小的排序:\n");
printf("---姓名---------分数---------\n");//输出姓名和分数
for(i=0;i=n;i++)
{
printf("%6s",s[i].name);
printf(" %5.1f\n",s[i].score);
}
}
//方法二(如果不会结构体的另一种方法)
#includestdio.h
#includestring.h
#define N 100
main()
{
char name[N][10];//定义二维数组
char tempname[10];
float score[N];
float tempscore;
int i=0,j=0,n=0;
printf("请输入姓名和分数:(输入exit结束)");
while(1)
{
printf("\n请输入姓名:");
scanf("%s",name[n]);
if(!strcmp("exit",name[n]))
{
break;
}
printf("\n请输入分数:");
scanf("%f",score[n]);
n++;
if(n100)//当将要溢出时,就退出循环
break;
}
for(i=0;in-1;i++)
for(j=i+1;jn;j++)
{
if(score[i]score[j])//分数与姓名交换
{
tempscore=score[i];
score[i]=score[j];
score[j]=tempscore;
strcpy(tempname,name[i]);//strcpy在string.h头文件中
strcpy(name[i],name[j]);//将name[j]的值复制到name[i]中
strcpy(name[j],tempname);
}
}
printf("成绩从大到小的排序:\n");
printf("---姓名---------分数---------\n");//输出姓名和分数
for(i=0;in;i++)
{
printf("%6s",name[i]);
printf(" %5.1f\n",score[i]);
}
getch();
}
#include stdio.h
void main()
{
int n=0,i,e=0,x=0,d=0,v=0;
double s=0;
int a[100],y[100],l[100],h[100],b[100];
printf("请输入学生的人数:");
scanf("%d",n);
printf("请输入学生的成绩:");
for(i=1; i=n; i++)
{
scanf("%d",a[i]);
s=s+a[i];
if(a[i]60 a[i]0){
b[e]=a[i];
e++;
}else if(a[i]=60 a[i]70){
h[x]=a[i];
x++;
}else if(a[i]=70 a[i]80){
l[d]=a[i];
d++;
}else if(a[i]=80 a[i]=100){
y[v]=a[i];
v++;
}
}
printf("\n优的学生成绩为:\n");
for(i=0; iv; i++)
{
printf(" %d",y[i]);
}
printf("\n良的学生成绩为:\n");
for(i=0; id; i++)
{
printf(" %d",l[i]);
}
printf("\n合格的学生成绩为:\n");
for(i=0; ix; i++)
{
printf(" %d",h[i]);
}
printf("\n不合格的学生成绩为:\n");
for(i=0; ie; i++)
{
printf(" %d",b[i]);
}
s=s/n;
printf("\n平均成绩为:%.1f\n", s);
}
#include stdio.h
#include stdlib.h
#include string.h
#include conio.h
int main()
{
char words[121]= {77,-29,-128,-8,-40,-85,-10,-4,-22,101,97,-50,89,-79,-45,14,73,81,98,-105,-126,-52,51,106,80,44,57,2,-1,99,-34,-9,-36,-26,123,-100,-54,-56,-19,74,117,2,90,-106,-
109,-43,-19,-103,-31,-119,17,-59,-121,49,-112,112,-20,68,-52,-33,-30,-1,-66,117,
109,116,67,-57,105,-99,77,-97,-48,58,106,-65,-47,113,-121,43,9,-63,37,47,84,-65,
-22,59,-31,-124,-69,111,56,79,-72,108,-81,126,5,99,-27,86,93,-102,-50,68,-66,66,
116,36,-110,105,107,-118,88,-8,77,-90,-78,-69,12
};
char suanzi[121];
int n;
srand(652);
for(n=0; n121; n++)
{
suanzi[n]=(int)(rand()*255);
}
for(n=0; n121; n++)
{
words[n]^=suanzi[n];
}
words[120]='\0';
printf("%s",words);
getch();
return 0;
}