哪位高手能帮我编以下c语言的程序

作者&投稿:蹉先 (若有异议请与网页底部的电邮联系)
各位C语言高手,能帮我编下下面的程序吗,提供高悬赏哦~

1、
main()
{float t,a[10]={1,1.0/2,1.0/3,1.0/4,1.0/5,1.0/6,1.0/7,1.0/8,1.0/9,1.0/10}; int i,j;
i=0; j=9;
while(i<j)
{t=a[i]; a[i]=a[j]; a[j]=t; i++; j--; }
for(i=0; i<10; i++) printf("%.3f",a[i]);
}
2、
void main()
{int n,a[11]={60,68,78,88,90,93,95,96,98,100},i,j;
scanf("%d",&n);
i=0;
while(a[i]<n) {i++; }
for(j=9; j>=i; j--) a[j+1]=a[j];
a[i]=n;
for(i=0; i<11; i++) printf("%4d",a[i]);
}
3、
void main()
{float cj[10],t; int i,j,k;
for(i=0; i<10; i++) scanf("%f",&cj[10]);
for(i=0; i<9; i++)
{k=i; for(j=i+1;j<10; j++) {if(a[j]<a[k]) k=j; }
if(k!=i) {t=a[k]; a[k]=a[i]; a[i]=t; }
}
for(i=0; i<10; i++) printf('%7.2f",a[i]);
}
4、
void main()
{double e=1,t=1; int i;
for(i=1; t>1e-6; i++)
{s+=t; t=1/(i*t); }
printf("%f",e);
}
5、
void maxmin(int a[],n,&max,&min) /*n是传过来数组中元素的个数,max和min是指针变量,将带回最大值和最小值*/
{int i;
*max=a[0]; *min=a[0];
for(i=1; i<n; i++)
{if(a[i]>*max) *max=a[i];
if(a[i]<*min) *min=a[i]; }
}

这个是个简单的学生管理系统,我们学校的程序大作业就是做这个...呵呵,希望能帮到你
#include<stdio.h> /*引用库函数*/
#include<stdlib.h>
#include<ctype.h>
#include<string.h>
typedef struct /*定义结构体数组*/
{
char num[10]; /*学号*/
char name[20]; /*姓名*/
int score; /*成绩*/
}Student;
Student stu[80]; /*结构体数组变量*/
int menu_select() /*菜单函数*/
{
char c;
do{
system("cls"); /*运行前清屏*/
printf("****Students' Grade Management System****
"); /*菜单选择*/
printf(" | 1. Input Records |
");
printf(" | 2. Display All Records |
");
printf(" | 3. Sort |
");
printf(" | 4. Insert a Record |
");
printf(" | 5. Delete a Record |
");
printf(" | 6. Query |
");
printf(" | 7. Statistic |
");
printf(" | 8. Add Records from a Text File|
");
printf(" | 9. Write to a Text file |
");
printf(" | 0. Quit |
");
printf("*****************************************
");
printf("Give your Choice(0-9):");
c=getchar(); /*读入选择*/
}while(c<'0'||c>'9');
return(c-'0'); /*返回选择*/
}
int Input(Student stud[],int n) /*输入若干条记录*/
{int i=0;
char sign,x[10]; /*x[10]为清除多余的数据所用*/
while(sign!='n'&&sign!='N') /*判断*/
{ printf("student's num:"); /*交互输入*/
scanf("%s",stud[n+i].num);
printf("student's name:");
scanf("%s",stud[n+i].name);
printf("student's score:");
scanf("%d",&stud[n+i].score);
gets(x); /*清除多余的输入*/
printf("any more records?(Y/N)");
scanf("%c",&sign); /*输入判断*/
i++;
}
return(n+i);
}
void Display(Student stud[],int n) /*显示所有记录*/
{
int i;
printf("-----------------------------------
"); /*格式头*/
printf("number name score
");
printf("-----------------------------------
");
for(i=1;i<n+1;i++) /*循环输入*/
{
printf("%-16s%-15s%d
",stud[i-1].num,stud[i-1].name,stud[i-1].score);
if(i>1&&i%10==0) /*每十个暂停*/
{printf("-----------------------------------
"); /*格式*/
printf("");
system("pause");
printf("-----------------------------------
");
}
}
printf("");
system("pause");
}
void Sort_by_num(Student stud[],int n) /*按学号排序*/
{ int i,j,*p,*q,s;
char t[10];
for(i=0;i<n-1;i++) /*冒泡法排序*/
for(j=0;j<n-1-i;j++)
if(strcmp(stud[j].num,stud[j+1].num)>0)
{strcpy(t,stud[j+1].num);
strcpy(stud[j+1].num,stud[j].num);
strcpy(stud[j].num,t);
strcpy(t,stud[j+1].name);
strcpy(stud[j+1].name,stud[j].name);
strcpy(stud[j].name,t);
p=&stud[j+1].score;
q=&stud[j].score;
s=*p;
*p=*q;
*q=s;
}
}
int Insert_a_record(Student stud[],int n) /*插入一条记录*/
{char x[10]; /*清除多余输入所用*/
printf("student's num:"); /*交互式输入*/
scanf("%s",stud[n].num);
printf("student's name:");
scanf("%s",stud[n].name);
printf("student's score:");
scanf("%d",&stud[n].score);
gets(x);
n++;
Sort_by_num(stud,n); /*调用排序函数*/
printf("Insert Successed!
"); /*返回成功信息*/
return(n);
}
int Delete_a_record(Student stud[],int n) /*按姓名查找,删除一条记录*/
{ char s[20];
int i=0,j;
printf("tell me his(her) name:"); /*交互式问寻*/
scanf("%s",s);
while(strcmp(stud[i].name,s)!=0&&i<n) i++; /*查找判断*/
if(i==n)
{ printf("not find!
"); /*返回失败信息*/
return(n);
}
for(j=i;j<n-1;j++) /*删除操作*/
{
strcpy(stud[j].num,stud[j+1].num);
strcpy(stud[j].name,stud[j+1].name);
stud[j].score=stud[j+1].score;
}
printf("Delete Successed!
"); /*返回成功信息*/
return(n-1);
}
void Query_a_record(Student stud[],int n) /*查找并显示一个记录*/
{ char s[20];
int i=0;
printf("input his(her) name:"); /*交互式输入*/
scanf("%s",s);
while(strcmp(stud[i].name,s)!=0&&i<n) i++; /*查找判断*/
if(i==n)
{ printf("not find!
"); /*输入失败信息*/
return;

}
printf("his(her) number:%s
",stud[i].num); /*输出该学生信息*/
printf("his(her) score:%d
",stud[i].score);
}
void Statistic(Student stud[],int n) /*新增功能,输出统计信息*/
{ int i,j=0,k=0,sum=0;
float aver; /*成绩平均值*/
for(i=0;i<n;i++) /*循环输入判断*/
{
sum+=stud[i].score;
if(stud[j].score>stud[i].score) j=i;
if(stud[k].score<stud[i].score) k=i;
}
aver=1.0*sum/n;
printf("there are %d records.
",n); /*总共记录数*/
printf("the hignest score:
"); /*最高分*/
printf("number:%s name:%s score:%d
",stud[j].num,stud[j].name,stud[j].score);
printf("the lowest score:
"); /*最低分*/
printf("number:%s name:%s score:%d
",stud[k].num,stud[k].name,stud[k].score);
printf("the average score is %5.2f
",aver); /*平均分*/
}
int AddfromText(Student stud[],int n) /*从文件中读入数据*/
{ int i=0,num;
FILE *fp; /*定义文件指针*/
char filename[20]; /*定义文件名*/
printf("Input the filename:");
scanf("%s",filename); /*输入文件名*/
if((fp=fopen(filename,"rb"))==NULL) /*打开文件*/
{ printf("cann't open the file
"); /*打开失败信息*/
printf("");
system("pause");
return(n);
}
fscanf(fp,"%d",&num); /*读入总记录量*/
while(i<num) /*循环读入数据*/
{
fscanf(fp,"%s%s%d",stud[n+i].num,stud[n+i].name,&stud[n+i].score);
i++;
}
n+=num;
fclose(fp); /*关闭文件*/
printf("Successed!
");
printf("");
system("pause");
return(n);
}
void WritetoText(Student stud[],int n) /*将所有记录写入文件*/
{
int i=0;
FILE *fp; /*定义文件指针*/
char filename[20]; /*定义文件名*/
printf("Write Records to a Text File
"); /*输入文件名*/
printf("Input the filename:");
scanf("%s",filename);
if((fp=fopen(filename,"w"))==NULL) /*打开文件*/
{
printf("cann't open the file
");
system("pause");
return;
}
fprintf(fp,"%d
",n); /*循环写入数据*/
while(i<n)
{
fprintf(fp,"%-16s%-15s%d
",stud[i].num,stud[i].name,stud[i].score);
i++;
}
fclose(fp); /*关闭文件*/
printf("Successed!
"); /*返回成功信息*/
}
void main() /*主函数*/
{
int n=0;
for(;;)
{
switch(menu_select()) /*选择判断*/
{
case 1:
printf("Input Records
"); /*输入若干条记录*/
n=Input(stu,n);
break;
case 2:
printf("Display All Records
"); /*显示所有记录*/
Display(stu,n);
break;
case 3:
printf("Sort
");
Sort_by_num(stu,n); /*按学号排序*/
printf("Sort Suceessed!
");
printf("");
system("pause");
break;
case 4:
printf("Insert a Record
");
n=Insert_a_record(stu,n); /*插入一条记录*/
printf("");
system("pause");
break;
case 5:
printf("Delete a Record
");
n=Delete_a_record(stu,n); /*按姓名查找,删除一条记录*/
printf("");
system("pause");
break;
case 6:
printf("Query
");
Query_a_record(stu,n); /*查找并显示一个记录*/
printf("");
system("pause");
break;
case 7:
printf("Statistic
");
Statistic(stu,n); /*新增功能,输出统计信息*/
printf("");
system("pause");
break;
case 8:
printf("Add Records from a Text File
");
n=AddfromText(stu,n); /*新增功能,输出统计信息*/
break;
case 9:
printf("Write to a Text file
");
WritetoText(stu,n); /*循环写入数据*/
printf("");
system("pause");
break;
case 0:
printf("Have a Good Luck,Bye-bye!
"); /*结束程序*/
printf("");
system("pause");
exit(0);
}
}
}

闰年
闰年: 1.为了弥补人为的年份规定与地球实际绕日公转的时间差,2.而人为把时间差补上了的年份,该年即为闰年.

遵循的规律为: 四年一闰,百年不润,四百年再润.

if((year % 400 == 0)|(year % 4 == 0)&(year % 100 != 0))//闰年的计算方法

详情如下:

闰年(leap year),在公历(格里历)或夏历中有闰日的年份,以及在中国旧历农历中有闰月的年份。地球绕太阳运行周期为365天5小时48分46秒(合365.24219天)即一回归年(tropical year)。公历的平年只有365日,比回归年短约0.2422 日,所余下的时间约为四年累计一天,于第四年加于2月,使当年的历年长度为366日,这一年就为闰年。现行公历中每400年有97个闰年。夏历的平年只有354日,比12个朔望月短0.3671日,为使每月初一与月朔相合,规定每30年中有11年的年底增加1日,这一年的历年有355日,即为闰年。中国旧历农历作为阴阳历的一种,每月的天数依照月亏而定,一年的时间以12个月为基准,平年比一回归年少约11天。为了合上地球围绕太阳运行周期即回归年,每隔2到4年,增加一个月,增加的这个月为闰月。在加有闰月的那一年有13个月,历年长度为384或385日,这一年也称为闰年。
按照每四年一个闰年计算,平均每年就要多算出0.0078天,这样经过四百年就会多算出大约3天来,因此,每四百年中要减少三个闰年。所以规定,公历年份是整百数的,必须是400的倍数的才是闰年,不是400的倍数的就是平年。

也就是我们通常所说的:
四年一闰,百年不闰,四百年再闰。

西方公历的“闰年”
阳历中有闰日的年份叫闰年,相反就是平年,平年为365天,闰年为366天。在公历(格里历)纪年中,平年的二月为28天,闰年的二月为29天。闰年平月2月29日为闰日。

增加闰日的原因
现时的公历以回归年为“年”的计算基础,而一个回归年大约等于365.24220日。因为在平年公历只计算365日,结果四年后便会累积0.24220×4=0.9688日,大约等于一日,所以便逢四年增加一日闰日以抵销这0.9688日。

计算闰年的方法
公历纪年法中,能被4整除的大多是闰年,不能被100整除而能被400整除的年份是闰年,能被3200整除的也不是闰年,如1900年是平年,2000年是闰年,3200年不是闰年。

中国农历的“闰年”
中国旧历农历纪年中,有闰月的一年称为闰年。一般年份为12个月,354或355天,闰年则为13个月,383或384天

编程中公历闰年的简单计算方法:
设年份 year
if (year能被4整除 and 不能被100整除) or year能被400整除
then 该年为闰年
else 该年为平年
具体程序代码:
#主模块:
;月历打印
;主程序设置好入口参数,BX=年份,DL=月份
;调用子程序 display
;By wangrui
;2006-12-8

extrn display:far

Esccode equ 01h
Up equ 048h
Down equ 050h
Left equ 04bh
Right equ 04dh

dseg segment
Year dw 0
Month db 0
temp db 10 dup(0)
count dw ?
ErrMsg db 0dh,0ah,"The input NOT decimal! $"
dseg ends

cseg segment
assume cs:cseg,ds:dseg
start:
mov ax,dseg
mov ds,ax

call GetYearMonth

Ws:
mov bx,Year
mov dl,Month
call far ptr display
again:
mov ah,0
int 16h
cmp ah,Esccode
je Exit
cmp ah,Up
je NextY
cmp ah,Down
je PreY
cmp ah,Left
je PreM
cmp ah,Right
je NextM
jmp again

NextY:
inc Year
jmp Ws
PreY:
dec Year
jmp Ws
NextM:
inc Month
cmp Month,12
jbe skip0
mov Month,1
inc Year
skip0:
jmp Ws
PreM:
dec Month
cmp Month,1
jae skip1
mov Month,12
dec Year
skip1:
jmp Ws

Exit:
mov ah,4ch
int 21h

;**************************************************

GetYearMonth proc near
push ax
push cx
push si
push di

inputagain:
mov Year,0
mov Month,0

mov si,0
repeatY:
mov ah,1
int 21h
cmp al,0dh
je EndY
cmp al,20h
je EndY
cmp al,1bh
je ExitDos0
cmp al,30h
jb Err
cmp al,39h
ja Err
sub al,30h
mov temp[si],al
inc si
jmp repeatY

Err:
mov ah,9
lea dx,ErrMsg
int 21h
mov ah,2
mov dl,0dh
int 21h
mov dl,0ah
int 21h
jmp inputagain

EndY:
mov bx,10
mov di,si
mov si,0

NextYBit:
mov ah,0
mov al,temp[si]
mov count,di
sub count,si
dec count
mov cx,count
jcxz skipY
lopmul: mul bx
loop lopmul
skipY: add Year,ax
inc si
cmp si,di
jne NextYBit

;----------------------------------The year is put into [Year]

push dx
mov ah,2
mov dl,0dh
int 21h
mov dl,0ah
int 21h
pop dx
jmp skiplap

ExitDos0:
jmp ExitDos

skiplap:
mov si,0
repeatM:
mov ah,1
int 21h
cmp al,0dh
je EndMon
cmp al,20h
je EndMon
cmp al,1bh
je ExitDos
cmp al,30h
jb Err
cmp al,39h
ja Err
sub al,30h
mov temp[si],al
inc si
jmp repeatM

EndMon:
mov di,si
mov si,0
mov bl,10
NextMBit:
mov al,temp[si]
mov count,di
sub count,si
dec count
mov cx,count
jcxz skipM
lpmul: mul bl
loop lpmul
skipM: add Month,al
inc si
cmp si,di
jne NextMBit

;-------------------------The Month is put into [Month]

push dx
mov ah,2
mov dl,0dh
int 21h
mov dl,0ah
int 21h
pop dx

pop di
pop si
pop cx
pop ax
ret
ExitDos:
mov ah,4ch
int 21h
GetYearMonth endp

cseg ends
end start

#打印模块:
;***********************************
;入口参数:bx = Year dl=Month
;***********************************

public display
data segment
Year dw ?
Month db ?
leap db ?
weekstr db " MON TUR WEN THU FRI SAT SUN",’$’
fillblank db " $"
fillblank4 db " $"
fillblank3 db " $"
c db ?
y db ?
firstday db ?
temp db ?
MonthSize db ?
data ends
cseg segment
assume cs:cseg,ds:data
display proc far
push ds

mov ax,data
mov ds,ax

mov Year,bx
mov Month,dl

mov dx,0
xor bh,bh
mov ah,2
int 10h

mov ah,6
mov al,0
mov bh,01110000b
mov ch,0
mov cl,0
mov dh,24
mov dl,79
int 10h

mov ah,6
mov al,0
mov bh,01110100b
mov ch,0
mov cl,25
mov dh,24
mov dl,79
int 10h

call far ptr dispYM

lea dx,weekstr
mov ah,9
int 21h
mov ah,2
mov dl,0dh
int 21h
mov dl,0ah
int 21h

call GetMonthSize ;把当前月份的天数放到MonthSize

cmp Month,2
ja skip
add Month,12
dec Year
skip:
mov bl,100
mov ax,Year
div bl
mov c,al
mov y,ah
mov cl,2
mov bl,c
shr bl,cl ;int(c/4)
shl c,1 ;2*c
sub bl,c
add bl,y
shr y,cl ;int(y/4)
add bl,y ;int(c/4)-2*c+y+int(y/4)--->bl
inc Month
xor ah,ah
mov al,Month
mov dx,13
mul dx
mov cx,5
div cx
xchg ax,bx
cbw
xchg ax,bx
add bx,ax ;int(c/4)-2*c+y+int(y/4)+int(13*(m+1)/5)
mov ax,bx
mov cl,7
idiv cl
cmp ah,0
jG skipAdd
add ah,7
skipAdd:
mov bl,ah
mov firstday,bl

;--------------------------------计算出当前月份的第一天是星期几

mov cl,bl
mov ch,0
dec cl
jcxz skipF
FillB: mov ah,9
lea dx,fillblank
int 21h
loop FillB
skipF:
mov cl,1
disLop: call dispWeek ;日期已经放入cl
inc cl
inc bl
cmp bl,8
jb skipModle
mov bl,1
mov ah,2
mov dl,0dh
int 21h
mov dl,0ah
int 21h

skipModle:
cmp cl,MonthSize
jbe dislop

mov ah,2
mov dl,0dh
int 21h
mov dl,0ah
int 21h

pop ds
ret
display endp

;******************************************************************

GetMonthSize proc near
push ax
push dx

mov leap,0
mov ax,Year
mov ch,00000011b
and ch,al
mov bl,100
div bl
mov cl,ah
cmp ch,0
jne skipNLeap
cmp cl,0
jne skipLeap

mov ax,Year
mov bx,400
mov dx,0
div bx
cmp dl,0
je skipLeap
skipNLeap:
jmp gmsize
skipLeap:
inc leap
gmsize:
mov al,Month
cmp al,2
je return2
cmp al,8
jb skipInc
inc al
skipInc:
test al,1
jz returnEven
mov MonthSize,31
jmp return
returnEven:
mov MonthSize,30
jmp return

return2:
mov MonthSize,28
cmp leap,0
je return
inc MonthSize
return:
pop dx
pop bx
ret
GetMonthSize endp

;*****************************************************************

dispWeek proc near
push cx
push bx
push ax
push dx

cmp cl,10
jae DoubleDig

lea dx,fillblank4
mov ah,9
int 21h
mov dl,cl
add dl,30h
mov ah,2
int 21h
jmp back

DoubleDig:
mov ch,10
mov ah,0
mov al,cl
div ch

mov cx,ax
mov ah,9
lea dx,fillblank3
int 21h
mov dl,cl
add dl,30h
mov ah,2
int 21h
mov dl,ch
add dl,30h
int 21h
back:
pop dx
pop ax
pop bx
pop cx
ret
dispWeek endp
;*********************************************************

dispYM proc far
push bx
push dx

mov ax,year
mov dh,10
xor si,si
next: div dh
mov cl,ah
mov ch,0
inc si
push cx
mov ah,0
cmp ax,0
jne next

mov cx,si
repeat: pop dx
mov ah,2
add dl,30h
int 21h
loop repeat

mov dl,0dh
mov ah,2
int 21h
mov dl,0ah
mov ah,2
int 21h

mov al,Month
mov ah,0
mov bl,10
div bl
mov cx,ax
mov dl,cl
mov ah,2
add dl,30h
int 21h
mov dl,ch
add dl,30h
int 21h

mov dl,0dh
mov ah,2
int 21h
mov dl,0ah
mov ah,2
int 21h

pop dx
pop bx
ret
dispYM endp
;****************************************************
cseg ends
end

哪位高手能帮我编以下c语言的程序
答:一个人只有一个子女,且配偶、子女、父亲、母亲所含的信息一样。9、有两个单向链表list1、list2,链表中每一节点包含姓名、工资基本信息,请编一函数,把两个链表拼组成一个链表,并返回拼组后的新链表。10、有一个单向链表,编一函数复制一个新链表。(链表节点信息与上题相同)11、设list是一个由如下的数据结构组...

那个高手帮一下忙。帮我编一个c语言程序。。。急啊 。。。急
答:C语言 四舍五入函数floor()和ceil() 函数名:ceil 功能:向上舍入 用法:doubleceil(doublex); 函数名:floor 功能:向下舍入 用法:doublefloor(doublex); 程序例: #include<math.h> #include<stdio.h> intmain(void) { doublenumber=123.54; doubledown,up; down=floor(number); up=ceil(numbe...

哪位高手帮我写一个C语言的Prim和Kruskal算法,有主函数调用可以调试的...
答:{ int i,j,m1,m2,sn1,sn2,k;int vset[MAXE];for (i=0;i<n;i++) vset[i]=i; //初始化辅助数组 k=1; //k表示当前构造最小生成树的第几条边,初值为1 j=0; //E中边的下标,初值为0 while (k<n) //生成的边数小于n时循环 { m1=E[j].u;m2=E[j].v; ...

拜托哪位高手帮我写一下这道程序,是c语言的,谢谢啦
答:电费为moneyprintf("请输入用户的月用电量e: 千瓦时\n");scanf("%lf",&e);if(e>0 && e<=50)money=0.53*e;else if(e>50)money=0.53*50+(0.53+0.05)*(e-50);printf("用户该支出的电费是%.2lf元\n",

高手们,帮我编几个c语言的小程序!!谢谢.明天就要交!!
答:编一C程序,它能读入两个整数m与n,计算并输出m与n的绝对值的最大公约数及最小公倍数 解:源程序如下:int gys (int x,int y){ int j;j=(x<y)?x:y;for(;j>0;j--)if(x%j==0&&y%j==0)break;else continue;return (j);} int gbs (int z,int w){ int i;i=(z>w)?z:...

请哪位大侠帮我编一个C语言函数
答:private:int m;int n;double arr[8][8];public:matrix();matrix(double);void set();void show();friend int homotype(matrix,matrix);//是否同型;friend int multipliable(matrix,matrix);friend matrix operator +(matrix,matrix);friend matrix operator -(matrix,matrix);friend matrix add(...

有没有C语言高手帮我做一个程序
答:float c_score; //C语言成绩 float sql_score;//SQL语言成绩 float vb_score; //VB语言成绩 char chr; //标记该信息是否为输出项[即是否已被(伪)删除](默认值为'1',标记为'2'表示已被删除)}stuscore;FILE *fpi; //指向文件info.datFILE *fps; //指向文件score.datvoid opt_1 ();void opt_2 ...

请个高手帮我写一小段C语言程序
答:{ int gdriver, gmode;gdriver=DETECT;initgraph(&gdriver, &gmode, "");setcolor(BLUE);settextstyle(1, 0, 8);outtextxy(213, 160, "The Book Manage System");getch();closegraph();} 我运行过的 绝对正确 顺便告诉你一些画图的函数 进入了图形模式后我们就可以用图形函数进行画图拉!

高手们,帮忙啊,c语言程序设计
答:我的 高手们,帮忙啊,c语言程序设计 素数幻方求四阶的素数幻方。即在一个4X4的矩阵中,每一个格填入一个数字,使每一行、每一列和两条对角线上的4个数字所组成的四位数,均为可逆素数。{要求(1)请给出问题分析与算法设... 素数幻方求四阶的素数幻方。即在一个4X4 的矩阵中,每一个格填 入一个数字,使每一...

请各位高手帮忙编写一个C语言程序
答:你看看符合你的意思不?include<stdio.h> main(){ int a=0,b=0,c=0,d=0,S=0,R=0;scanf("%1d%1d%1d%1d",&a,&b,&c,&d);S=11*a+7*b+3*c+d;R=S%11;printf("%d%d%d\n",a,b,c,d,R);} 加个图片,看看结果:...