高级语言程序设计第九次作业

这个作业属于哪个课程: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;
} 

1

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){
	
}

屏幕截图 2025-12-10 204149

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); 

}

屏幕截图 2025-12-13 191610

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); 

}

屏幕截图 2025-12-13 191703

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");
	 
}

屏幕截图 2025-12-13 192727

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");
}

屏幕截图 2025-12-13 202129

备注:这个就是第七题,文件命名错了;
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");
}

屏幕截图 2025-12-13 203558

posted @ 2025-12-13 20:26    阅读(2)  评论(0)    收藏  举报