/*接上一楼*/
创新互联长期为近1000家客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为滑县企业提供专业的成都网站制作、成都网站建设,滑县网站改版等技术服务。拥有十多年丰富建站经验和众多成功案例,为您定制开发。
struct
Student
*create()
/*create函数定义,此函数实现创建单向动态链表*/
{
struct
Student
*head=NULL,*p1,*p2;
/*head,链表的头指针;*p1,*p2,中间指针变量*/
puts("\n现在请输入学院名:");
scanf("%s",college);
puts("\n年级:");
scanf("%s",grade);
puts("\n专业和班级:");
scanf("%s",classname);
puts("\n下面请按提示依次输入数据:\n(如果要结束输入,请输入学号0)");
p1=p2=(struct
Student
*)malloc(LEN);
puts("输入第一个学生的学号:");
scanf("%ld",p1-num);
puts("输入此学生成绩:\n英语:");
scanf("%f",p1-score.english);
puts("数学:");
scanf("%f",p1-score.math);
puts("计算机:");
scanf("%f",p1-score.computer);
total_and_aver(p1);/*计算总分和平均分*/
p1-grade=mark_grade(p1);
for(;p1-num!=0;)
{
len++;
if(len==1)
head=p1;
else
p2-next=p1;
p2=p1;
p1=(struct
Student
*)malloc(LEN);
puts("输入下一个学生的学号:");
scanf("%ld",p1-num);
puts("输入此学生成绩:\n英语:");
scanf("%f",p1-score.english);
puts("数学:");
scanf("%f",p1-score.math);
puts("计算机:");
scanf("%f",p1-score.computer);
total_and_aver(p1);/*计算总分和平均分*/
p1-grade=mark_grade(p1);
}
p2-next=NULL;
return
(head);
}
struct
Student
*del(struct
Student
*head,long
del_num)
/*del函数定义,此函数实现从现有链表中删除一个结点*/
{
struct
Student
*p1,*p2;
if(head==NULL)
puts("空表,没有任何数据记录。\n");
else
{
for(p1=head;!(del_num==p1-num||p1-next==NULL);p2=p1,p1=p1-next);
if(del_num==p1-num)
{
if(p1==head)head=p1-next;
else
p2-next=p1-next;
printf("学号为%ld学生的数据删除成功。\n",del_num);
--len;
}
else
printf("未找到学号为%ld学生的记录。\n",del_num);
}
return
(head);
}
struct
Student
*insert(struct
Student
*head,struct
Student
*new_student)
/*insert函数定义,此函数实现向现有链表中插入一个结点或覆盖相同学号的数据*/
{
struct
Student
*p0=new_student,*p1=head,*p2;
char
control;
if(head==NULL)
{
head=p0;
p0-next=NULL;
puts("数据插入成功。\n");
}
else
{
for(;((*p0).num(*p1).num)(p1-next!=NULL);p2=p1,p1=p1-next);
if((*p0).num==(*p1).num)
{
printf("已经存在一个学号为%ld的学生的数据,要覆盖原有数据吗?\n输入
Y
=覆盖原有数据\n输入其它=保留原有数据\n",p0-num);
FFLUSH;
scanf("%c",control);
FFLUSH;
switch
(control)
{
case
'Y':
case
'y':if(p1==head){head=p0;p0-next=p1-next;}
else
{p2-next=p0;p0-next=p1-next;}
puts("数据已经更新\n");break;
default:break;
}
len--;
}
else
if((*p0).num(*p1).num)
{
if(p1==head)head=p0;
else
p2-next=p0;
p0-next=p1;
puts("数据插入成功。\n");
}
else
{
p1-next=p0;
p0-next=NULL;
puts("数据插入成功。\n");
}
}
++len;
return
(head);
}
struct
Student
*sort(struct
Student
*head)
/*sort函数定义,此函数实现对链表中的数据按照平均分高低排序*/
{
struct
Student
*p1,*p2;
for(p1=head;p1-next!=NULL;p1=p1-next)
for(p2=p1-next;p2!=NULL;p2=p2-next)
{
if(p1-score.averagep2-score.average)
{
SWAP(p1-num,p2-num);
SWAP(p1-grade,p2-grade);
SWAP(p1-score.english,p2-score.english);
SWAP(p1-score.math,p2-score.math);
SWAP(p1-score.computer,p2-score.computer);
SWAP(p1-score.total,p2-score.total);
SWAP(p1-score.average,p2-score.average);
}
}
return
head;
}
/*接下一楼*/
#include stdio.h
#include string.h
int main(void)
{
int num;
char from[10] = "NONONO";
char to[10];
char toget[20];
strcmp(to,from);
num = strlen(from);
strcan(toget,to);
memeset(to,0,sizeof(to));
printf("OK");
getchar();
return 0;
}
c常用的函数太多了。。
#includestdio.h
double jia(double a,double b){
return a+b;}
double jian(double a,double b){
return a-b;}
double cheng(double a,double b){
return a*b;}
double chu(double a,double b){
return a/b;}
int modd(int a,int b){
return a%b;}
int main(){
double a,b;
printf("输入两个数字\n");
scanf("%lf%lf",a,b);
printf("加 %lf\n减 %lf\n乘 %lf\n除 %lf\n取模 %d\n",jia(a,b),jian(a,b),cheng(a,b),chu(a,b),modd((int)a,(int)b));
return 0;}
#includestdio.h
#includemath.h//pow()指数函数头文件;
#define e 2.71828//定义自然常数e;
int main ()
{
double a,b,n1,n2,n3,n4,n5,t;
scanf("%lf%lf",a,b);
if(ab)//保证上限比下限大;
{
t=a;
a=b;
b=t;
}
n1=a-b+0.5*(a*a-b*b);//a和b是未知数,积分运算后,原式=a和b混合运算的代数式;
n2=a*a-b*b+3*a-3*b;
n3=e*0.5*(a*a-b*b)+a-b;
n4=(pow(a+1,3)-pow(b+1,3))/3;
n5=(pow(a,4)-pow(b,4))/4;
printf("%.2lf %.2lf %.2lf %.2lf %.2lf",n1,n2,n3,n4,n5);
return 0;
}
图1是运行结果,图2是原题的积分结果;通过数学的积分结果可以看出,积分符号的不在了;只剩下上下限a,b组成的代数式;
#includestdio.h
#define M 2/*容量*/
struct _674
{
long num;
char name[20];
char add[20];
long tel;
}A[M],B[1];
void input()
{
int i=1;
char a='y';
while(a=='y')
{
if(i=M)
{
printf("请输入你要输入的学生学号\n");
scanf("%d",A[i].num);
for(int j=1;ji;j++)
if(A[j].num==A[i].num)
{
printf("你输入的学号已存在\n");continue;
}
printf("请输入你要输入的学生姓名\n");
scanf("%s",A[i].name);
printf("请输入你要输入的学生地址\n");
scanf("%s",A[i].add);
printf("请输入你要输入的学生电话\n");
scanf("%d",A[i].tel);
i++;
printf("退出请任意输入,继续请输入y\n");
getchar();
scanf("%c",a);
}
else
{
printf("你的空间已满\n");break;
}
}
}
void output()
{
for(int i=1;i=M;i++)
printf("学号:%d姓名:%s地址:%s电话:%d\n",A[i].num,A[i].name,A[i].add,A[i].tel);
}
void seek()
{
int a,f=0;
printf("请输入你要查找学生的学号\n");
scanf("%d",a);
for(int i=1;i=M;i++)
if(a==A[i].num)
{
printf("学号:%d姓名:%s地址:%s电话:%d\n",A[i].num,A[i].name,A[i].add,A[i].tel),f=0;break;
}
else
f=1;
if(f==1)
printf("查无此人\n");
}
void del()
{
int a;
printf("请输入你要删除的学生学号\n");
scanf("%d",a);
for(int i=1;i=M;i++)
if(a==A[i].num)
{
for(;iM;i++)
A[i]=A[i+1];
}
}
void insert()
{
printf("请输入你要输入你要插入的学生学号\n");
scanf("%d",B[1].num);
for(int j=1;j=M;j++)
if(B[1].num==A[j].num)
{
printf("你要插入的学号已存在\n");break;
}
printf("请输入你要插入的学生姓名\n");
scanf("%s",B[1].name);
printf("请输入你要插入的学生地址\n");
scanf("%s",B[1].add);
printf("请输入你要插入的学生电话\n");
scanf("%d",B[1].tel);
}
void main()
{
input();
output();
seek();
del();
insert();
}
不好意思
自己也是刚学的
有不足之处还请谅解
很多地方还需要根据你的需要适当修改
最后希望我们能相互讨论学习共同进步