c语言程序设计慕课下编译答案完美.docx

上传人:b****5 文档编号:5150635 上传时间:2022-12-13 格式:DOCX 页数:19 大小:17.61KB
下载 相关 举报
c语言程序设计慕课下编译答案完美.docx_第1页
第1页 / 共19页
c语言程序设计慕课下编译答案完美.docx_第2页
第2页 / 共19页
c语言程序设计慕课下编译答案完美.docx_第3页
第3页 / 共19页
c语言程序设计慕课下编译答案完美.docx_第4页
第4页 / 共19页
c语言程序设计慕课下编译答案完美.docx_第5页
第5页 / 共19页
点击查看更多>>
下载资源
资源描述

c语言程序设计慕课下编译答案完美.docx

《c语言程序设计慕课下编译答案完美.docx》由会员分享,可在线阅读,更多相关《c语言程序设计慕课下编译答案完美.docx(19页珍藏版)》请在冰豆网上搜索。

c语言程序设计慕课下编译答案完美.docx

c语言程序设计慕课下编译答案完美

1求最大公约数和最小公倍数(15分)

#include<>

intfun1(intm,intn)大公约数

#include<>

intfun1(intm,intn)数球和

#include<>

intmain()

{intn;

intsum(intn);

scanf("%d",&n);

printf("%d\n",sum(n));

}

intsum(intn)

{intb;

if(n>1)

b=sum(n-1)+2*n-1;

if(n==1)

b=1;

returnb;}

5.巧算自然数

#include<>

intstep=1;

voidfc(intn)鸭子

#include<>

intmain(){

staticinti,x[8];

x[7]=2;

for(i=7;i>=0;i--)

x[i-1]=(x[i]+1)*2;

printf("sum=%d\n",x[0]);

for(i=0;i<7;i++)

printf("sell=%d,",x[i]-x[i+1]);

printf("\n");

return0;

}

7.各位数字之和

intadd(ints)

{

if(s<10)

returns;

elsereturns%10+add(s/10);

}

intmain(intargc,char*argv[])

{

inta,b;

scanf("%d",&a);

b=add(a);

printf("%d",b);

return0;

}

对称字符串

#include<>

#include<>

main()

{chara[100];

inti,j;

gets(a);

i=0;

j=strlen(a)-1;

while(i

{if(a[i]==a[j])

{i++;j--;}

else

break;}

if(i>=j)printf("YES\n");

elseprintf("NO\n");

}

指针排序

#include<>

voidsort(int*p,intn);

voidsort(int*p,intn)

{

inti,j;

inttemp=0;

for(i=0;i

{

for(j=0;j

{

if(p[j]>p[j+1])

{

temp=p[j];

p[j]=p[j+1];

p[j+1]=temp;

}

}

}

}

intmain()

{

inti;

inta[10];

for(i=0;i<10;i++)

{

scanf("%d",&a[i]);

}

int*p=a;

sort(a,10);

for(i=0;i<10-1;i++)

{

printf("%d,",*(p++));

}

printf("%d\n",*p);

return0;

}

查找数

#include<>

voidfind(int*p,intelement,intn);

voidfind(int*p,intelement,intn)

{

inti,flag=0;;

for(i=0;i

{

flag++;

if(element==p[i])

{

printf("%d\n",p[i]);

break;

}

}

if(flag==n)

{

printf("No\n");

}

}

intmain()

{

inti;

inta[10];

for(i=0;i<10;i++)

{

scanf("%d",&a[i]);

}

int*p=a;

intnum;

scanf("%d",&num);

find(p,num,10);

return0;

}

输出指定成绩

#include<>

intmain(){

intgrade[3][4],i,j,(*p)[4]=grade,n;

floatave=0;

for(i=0;i<3;i++)

for(j=0;j<4;j++)

scanf("%d",&grade[i][j]);

scanf("%d",&n);

for(i=0;i<3;i++)

printf("%d",*(*(p+n-1)+i));

printf("%d\n",*(*(p+n-1)+3));

for(i=0;i<4;i++)

ave+=*(*(p+n-1)+i);

ave/=4;

if(ave-(int)ave)

printf("%.2f\n",ave);

else

printf("%d\n",(int)ave);

return0;

}

成绩排序

#include<>

voidaverage(intp[][6],intn);

voidaverage(intp[][6],intn)

{

inti;

for(i=0;i<4;i++)

{

p[n][4]+=p[n][i];

}

p[n][5]=p[n][4]/4;

}

voidPrint(intp[][6],intn)

{

intmax1=p[0][5];

intmax2=p[1][5];

intmax3=p[2][5];

inti;

if(max1>max2&&max1>max3)

{

if(max2>max3)

{

printf("%d,%d,%d,%d\n",p[0][0],p[0][1],p[0][2],p[0][3]);

printf("%d,%d,%d,%d\n",p[1][0],p[1][1],p[1][2],p[1][3]);

printf("%d,%d,%d,%d\n",p[2][0],p[2][1],p[2][2],p[2][3]);

}

else

{

printf("%d,%d,%d,%d\n",p[0][0],p[0][1],p[0][2],p[0][3]);

printf("%d,%d,%d,%d\n",p[2][0],p[2][1],p[2][2],p[2][3]);

printf("%d,%d,%d,%d\n",p[1][0],p[1][1],p[1][2],p[1][3]);

}

}

elseif(max2>max1&&max2>max3)

{

if(max1>max3)

{

printf("%d,%d,%d,%d\n",p[1][0],p[1][1],p[1][2],p[1][3]);

printf("%d,%d,%d,%d\n",p[0][0],p[0][1],p[0][2],p[0][3]);

printf("%d,%d,%d,%d\n",p[2][0],p[2][1],p[2][2],p[2][3]);

}

else

{

printf("%d,%d,%d,%d\n",p[1][0],p[1][1],p[1][2],p[1][3]);

printf("%d,%d,%d,%d\n",p[2][0],p[2][1],p[2][2],p[2][3]);

printf("%d,%d,%d,%d\n",p[0][0],p[0][1],p[0][2],p[0][3]);

}

}

elseif(max3>max1&&max3>max2)

{

if(max1>max2)

{

printf("%d,%d,%d,%d\n",p[2][0],p[2][1],p[2][2],p[2][3]);

printf("%d,%d,%d,%d\n",p[0][0],p[0][1],p[0][2],p[0][3]);

printf("%d,%d,%d,%d\n",p[1][0],p[1][1],p[1][2],p[1][3]);

}

else

{

printf("%d,%d,%d,%d\n",p[2][0],p[2][1],p[2][2],p[2][3]);

printf("%d,%d,%d,%d\n",p[1][0],p[1][1],p[1][2],p[1][3]);

printf("%d,%d,%d,%d\n",p[0][0],p[0][1],p[0][2],p[0][3]);

}

}

}

intmain()

{

inti,j;

inta[3][6]={0};

for(i=0;i<3;i++)

{

for(j=0;j<4;j++)

{

scanf("%d",&a[i][j]);

}

average(a,i);

}

Print(a,3);

return0;

}

统计字符串出现次数

#include<>

#include<>

intmain(){

charstr1[100],str2[100];

intflag=0,counter=0,l1,l2,i,j;

gets(str1);gets(str2);

l1=strlen(str1);l2=strlen(str2);

for(i=0;i

if(str1[i]==str2[0]){

for(j=1;j

if(str1[i+j]!

=str2[j])

break;

elseflag=1;

}

if(flag)

counter++;

}

}

if(counter)

printf("%d\n",counter);

else

printf("No\n");

return0;

}

成绩统计求平均分

#include<>

main()

{

printf("wanglei,\n");

printf("lihong,\n");

printf("zhangli,\n");

printf("liuming,83\n");

printf("AVERAGE:

,,82\n");

}

加密

#include<>

#include<>

intl;

voidgm(char*a);

main()

{

chars[100]={0};

gets(s);

l=strlen(s);

gm(s);

}

voidgm(char*a)

{

inti;

chard[100]={0};

for(i=0;i

{

switch(a[i])

{

case'a':

d[i]='d';break;

case'b':

d[i]='w';break;

case'c':

d[i]='k';break;

case'd':

d[i]=';';break;

case'e':

d[i]='i';break;

case'i':

d[i]='a';break;

case'k':

d[i]='b';break;

case';':

d[i]='c';break;

case'w':

d[i]='e';break;

default:

d[i]=a[i];

}

}

puts(d);

}

学生成绩

#include""

structade

{intno;intam;intbm;intcm;};

structadeN[3]=

{1,70,80,90,2,75,85,95,3,88,84,65};

main()

{

chars[300];inti=0,k,m;

for(i=0;i<3;i++)

{

scanf("%c",&s[i]);

if(s[i]=='\n')break;}

if(s[0]=='m')printf("2");

elseif(s[0]=='1'||s[0]=='2'||s[0]=='3'){k=N[(int)(s[0]-'1')].am+N[(int)(s[0]-'1')].bm+N[(int)(s[0]-'1')].cm;;m=k/3;printf("%d",m);}

elseprintf("0");

}

字母储存

#include<>

#include<>

typedefstructChar_

{charch;

charintch;

structChar_*next;

}

CHAR_;

intmain(void)

{

CHAR_*node=NULL;

CHAR_*ch_=NULL;

CHAR_*hear=NULL;

charzimu='a';

charpanduanzimu;

charrecord;

for(;zimu!

='e';zimu++)

{

ch_=(CHAR_*)malloc(sizeof(CHAR_));

if(ch_==NULL){exit(0);}

ch_->ch=zimu;

ch_->next=NULL;

if(node==NULL){node=ch_;}

else{

node->next=ch_;

node=node->next;}

if(hear==NULL)

{hear=node;}

}

for(zimu-=2;zimu!

=('a'-1);zimu--)

{

ch_=(CHAR_*)malloc(sizeof(CHAR_));

if(ch_==NULL)

{exit(0);}

ch_->ch=zimu;

ch_->next=NULL;

node->next=ch_;

node=node->next;

}

for(node=hear,zimu='0';node!

=NULL;node=node->next,zimu++)

{

node->intch=zimu;

}

scanf("%c",&panduanzimu);

node=hear;

if(panduanzimu>='0'&&panduanzimu<='6')

{

while(node!

=NULL)

{

if(panduanzimu==node->intch)

{printf("%c",node->ch);break;}

node=node->next;

}

}

elseif(panduanzimu>='a'&&panduanzimu<='d')

{

while(node!

=NULL)

{

if(panduanzimu==node->ch)

{

record=node->intch;

}

node=node->next;

}

printf("%c",record);

}

else{printf("N");

}

node=hear;

while(node!

=NULL)

{

hear=node->next;

free(node);

node=hear;

}

return0;

}

链表合并

#include<>

#include<>

intmain(){

staticinti,j,m,n;

staticcharq,x[100],y[100],z[100];

gets(x);gets(y);

strcat(x,y);

m=strlen(x);

for(j=0;j

for(i=0;i

q=x[j];

if(x[j]>x[j+i]){

x[j]=x[j+i];

x[j+i]=q;

}

}

}

for(i=0;i

for(j=0;j<=i;j++){

if(z[j]==x[i])

break;

if(j==i)

z[n]=x[i];

n=strlen(z);

}

}

for(i=m-1;i>0;i--){

if(isalpha(z[i])){

m=i;

break;

}

}

for(i=0;i<=m;i++){

if(z[i]==''){

continue;

}

else{

if(i==m){

printf("%c\n",z[i]);

}

else{

printf("%c",z[i]);

}

}

}

return0;

}

 

解析字符串

#include<>#include<>

intmain()

{

inti,j,k=0;

chara[100],b[100],c[100];

gets(a);

for(i=0;a[i]!

='n';i++)

{

printf("%c",a[i]);

k++;

}

printf("\n");

for(i=k+1;a[i]!

='\0'&&a[i]!

='n';i++)

{

printf("%c",a[i]);

k++;

}

if(a[i]=='n'&&a[i+1]!

='\0')

{

for(i=k+2;a[i]!

='\0';++i)

{

printf("%c",a[i]);

}

}

}

字符串反向

#include<>

#include<>

intmain()

{charstr[80],c;

inti,j,n;

gets(str);

n=strlen(str);

for(i=0,j=n-1;i

{c=str[i];

str[i]=str[j];

str[j]=c;

}

puts(str);

return0;

}

基本的四则运算

#include<>

intmain(){

longlonga,b;

charop;

scanf("%lld%c%lld",&a,&op,&b);

switch(op){

case'+':

printf("%lld\n",a+b);

break;

case'-':

printf("%lld\n",a-b);

break;

case'*':

printf("%lld\n",a*b);

break;

case'/':

printf("%lld\n",a/b);

break;

case'%':

printf("%lld\n",a%b);

break;

}

return0;

}

复杂的四则运算

#include<>

#include<>

intmain(){

staticcharx[100];

inti;

scanf("%s",&x);

for(i=0;i

if(x[i]>='0'&&x[i]<='9'){

continue;

}

if(x[i]=='*'){

x[i-1]=(x[i-1]-'0')*(x[i+1]-'0')+'0';

x[i+1]='0';

i++;

}

elseif(x[i]=='/'){

x[i-1]=(x[i-1]-'0')/(x[i+1]-'0')+'0';

x[i+1]='0';

i++;

}

}

for(i=1;i

if(x[i]>='0'&&x[i]<='9'){

if(x[i-1]=='+'){

x[0]+=(x[i]-'0');

}

elseif(x[i-1]=='-'){

x[0]-=(x[i]-'0');

}

}

else{

continue;

}

}

printf("%c\n",x[0]);

return0;

}

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 艺术

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1