51.
#include<stdio.h>
#include<stdlib.h>
#define LEN sizeof(struct Student)
struct Student
{
long num;
float score;
struct Student *next;
};
int n;
struct Student *creat(void)
{
struct Student *head;
struct Student *p1,*p2;
n=0;
p1=p2=(struct Student*)malloc(LEN);
scanf("%ld,%f",&p1->num,&p1->score);
head=NULL;
while(p1->num!=0)
{
n=n+1;
if(n==1)
head=p1;
else
p2->next=p1;
p2=p1;
p1=(struct Student *)malloc(LEN);
scanf("%ld,%f",&p1->num,&p1->score);
}
p2->next=NULL;
return(head);
}
void print(struct Student *head)
{
struct Student *p;
printf("\nNow,These %d records are:\n",n);
p=head;
if(head!=NULL)
do
{
printf("%ld %5.1f\n",p->num,p->score);
p=p->next;
}while(p!=NULL);
}
int main()
{
struct Student *head;
head=creat();
print(head);
return 0;
}
52.#include <iostream>
using namespace std;
struct person{
int num;
char name[10];
char sex;
char job;
union {
int classnum;
char position[10];
}category;
}person[100];
int main(){
#ifdef ONLINE_JUDGE
#else
freopen("in.txt","r",stdin);
#endif
int n;
scanf("%d",&n);
for(int i=0;i<n;i++) {
scanf("%d %s %c %c",&person[i].num,&person[i].name,&person[i].sex,&person[i].job);
if(person[i].job == 's') scanf("%d",&person[i].category.classnum);
if(person[i].job == 't') scanf("%s",&person[i].category.position);
}
for(int i=0;i<n;i++) {
if(person[i].job == 's') printf("%d %s %c %c %d\n",person[i].num,&person[i].name,person[i].sex,person[i].job,person[i].category.classnum);
if(person[i].job == 't') printf("%d %s %c %c %s\n",person[i].num,&person[i].name,person[i].sex,person[i].job,person[i].category.position);
}
return 0;
}
53.#include<stdio.h>
#include<math.h>
#include<string.h>
#include<stdlib.h>
int main() {
enum Color
{
red, yellow, blue, white, black
};
enum Color i, j, k, pri;
int n, loop;
n = 0;
for(i=red;i<=black;i++)//++这块有问题,程序无法运行
for(j=red;j<=black;j++)
if (i != j) {
for(k=red;k<=black;k++)
if ((k != i) && (k != j)) {
n = n + 1;
printf("%-4d", n);
for (loop = 1; loop <= 3; loop++) {
switch (loop)
{
case 1:pri = i; break;
case 2:pri = j; break;
case 3:pri = k; break;
default:
break;
}
switch (pri)
{
case red:printf("%-10s", "red");
break;
case yellow:printf("%-10s", "yellow");
break;
case blue:printf("%-10s", "blue");
break;
case white:printf("%-10s", "white");
break;
case black:printf("%-10s", "black");
break;
default:
break;
}
}
printf("\n");
}
}
printf("\ntotal:%5d\n", n);
return 0;
}
54.
#include <stdio.h>
void compare(int a, int b, int c) {
int *p = &a;
int *q = &b;
int *r = &c;
if (*p > *q && *q > *r) {
printf("%d %d %d\n", a, b, c);
} else if (*p > *r && *r > *q) {
printf("%d %d %d\n", a, c, b);
} else if (*q > *p && *p > *r) {
printf("%d %d %d\n", b, a, c);
} else if (*q > *r && *r > *p) {
printf("%d %d %d\n", b, c, a);
} else if (*r > *p && *p > *q) {
printf("%d %d %d\n", c, a, b);
} else if(*r > *q && *q > *p) {
printf("%d %d %d\n", c, b, a);
}
}
int main() {
int a, b, c;
scanf("%d %d %d", &a, &b, &c);
compare(a, b, c);
return 0;
}
55.不会做