高级语言程序设计第九次作业
这个作业属于哪个课程:https://edu.cnblogs.com/campus/fzu/gjyycx
这个作业要求在哪里:https://edu.cnblogs.com/campus/fzu/gjyycx/homework/15595
学号:102500417
姓名:刘朝榕
设计程序
1.
点击查看代码
#include<stdio.h>
#include<string.h>
struct student{
char name[10];
int ID;
char sex[10];
int class_;
int chengji1;
int chengji2;
int chengji3;
};
int main(void){
struct student stu;
strcpy(stu.name,"李明明");
stu.ID=123456789;
strcpy(stu.sex,"男");
stu.class_=4;
stu.chengji1=88;
stu.chengji2=99;
stu.chengji3=100;
printf("姓名:%s\n学号:%d\n性别:%c\n班级:%d\n",stu.name,stu.ID,stu.sex,stu.class_);
printf("科目1成绩:%d\n科目2成绩:%d\n科目3成绩:%d\n",stu.chengji1,stu.chengji2,stu.chengji3) ;
return 0;
}

2.
点击查看代码
#include<stdio.h>
#include<string.h>
struct student{
char name[10];
int ID;
char sex[10];
int class_;
int cj1;
int cj2;
int cj3;
int zong;
};
void chengji(struct student stu[],int n){
printf("请每行分别输入:姓名 学号 性别 班级 成绩1 成绩2 成绩3\n");
for(int i)=0;i<n;i++){
scanf("%s %d %s %d %d %d %d",&stu[i].name,&stu[i].ID,&stu[i].sex,&stu[i].class_,&stu[i].cj1,&stu[i].cj2,&stu[i].cj3);
}
}
void paixv(struct student stu[],int n){
}
int main(void){
}

3.
点击查看代码
#include<stdio.h>
struct num{
int n;
char s;
int a;
};
int main(void){
struct num ai{
3,'a',4
};
struct num *p=&ai;
printf("%d\t%c\t%d\n",ai.n,ai.s,ai.a);
printf("%d\t%c\t%d\n",p->n,p->s,p->a);
}

4.
点击查看代码
#include<stdio.h>
struct num{
int n;
char s;
int a;
};
int main(void){
typedef struct num jiegouti;
jiegouti ai{
3,'a',4
};
struct num *p=&ai;
printf("%d\t%c\t%d\n",ai.n,ai.s,ai.a);
printf("%d\t%c\t%d\n",p->n,p->s,p->a);
}

5和6.
点击查看代码
#include<stdio.h>
struct num{
int n;
struct num *next;
};
int main(void){
struct num s[6],*head,*p,*last,*q;
for(int i=0;i<6;i++){
scanf("%d",&s[i].n);
s[i].next=&s[i+1];
if(i==5){
s[i].next=NULL;
}
}
head=&s[0];
p=head;
printf("从链头到链尾:");
while(p!=NULL){
printf("%d->",p->n);
p=p->next;
}
printf("NULL\n");
printf("从链尾到链头:");
last=&s[5];
q=last;
for(int i=5;i>=0;i--){
s[i].next=&s[i-1];
if(i==0){
s[i].next=NULL;
}
}
while(q!=NULL){
printf("%d->",q->n);
q=q->next;
}
printf("NULL\n");
}

7.
点击查看代码
#include<stdio.h>
struct num{
int n;
struct num *next;
};
int main(void){
printf("条件为:请删除输入三个的数字(1~10)对应的节点(顺序)\n");
struct num s[10],*head,*p;
for(int i=0;i<10;i++){
s[i].n=i+1;
s[i].next=&s[i+1];
}
s[9].next=NULL;
head=&s[0];
p=head;
printf("删除节点前的链表为:");
while(p!=NULL){
printf("%d->",p->n);
p=p->next;
}
printf("NULL\n");
int a[3];
printf("请输入要删除的节点对应的数字:");
for(int i=0;i<3;i++){
scanf("%d",&a[i]);
}
printf("删除节点后的链表为:") ;
for(int i=0;i<3;i++){
int n=a[i];
s[n-2].next=&s[n];
if(n==10){
s[n-2].next=NULL;
}
}
head=&s[0];
p=head;
while(p!=NULL){
printf("%d->",p->n);
p=p->next;
}
printf("NULL\n");
}

备注:这个就是第七题,文件命名错了;
8.
点击查看代码
#include<stdio.h>
struct num{
int n;
struct num *next;
};
int main(void){
printf("条件为:请在输入三个的数字(1~10)对应的节点(顺序)后添加新节点\n");
struct num s[10],*head,*p;
for(int i=0;i<10;i++){
s[i].n=i+1;
s[i].next=&s[i+1];
}
s[9].next=NULL;
head=&s[0];
p=head;
printf("删除节点前的链表为:");
while(p!=NULL){
printf("%d->",p->n);
p=p->next;
}
printf("NULL\n");
int a[3];
printf("请输入要哪几个节点后添加新节点:");
for(int i=0;i<3;i++){
scanf("%d",&a[i]);
}
struct num b[3];
b[0].n=11;
b[1].n=12;
b[2].n=13;
printf("添加节点后的链表为:") ;
for(int i=0;i<3;i++){
int n=a[i];
s[n-1].next=&b[i];
b[i].next=&s[n];
if(n==10){
s[n-1].next=&b[i];
b[i].next=NULL;
}
}
head=&s[0];
p=head;
while(p!=NULL){
printf("%d->",p->n);
p=p->next;
}
printf("NULL\n");
}


浙公网安备 33010602011771号