C语言作业_c语言作业

2020-02-27 其他范文 下载本文

C语言作业由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“c语言作业”。

第一章

使用printf()函数按下面的形式显示某应用程序的功能 #include void main(){ printf(“********************n”);printf(“欢迎使用卡卡名片夹n”);printf(“[1]显示全部名片n”);printf(“[2]新建名片n”);printf(“[3]修改名片n”);printf(“[4]删除名片n”);printf(“[5]退出n”);printf(“********************n”);}

编写一个C程序,能够从键盘输入一个浮点数,然后输出它的倒数。#include void main(){ float m,n;printf(“请输入一个浮点数n”);scanf(“%f”,&m);n=1/m;printf(“该数的倒数是%f”,n);}

第二章

将华氏温度转换为摄氏温度。使用公式:C=5/9(F-32.#include void main(){ float m,n;printf(“请输入华氏温度n”);scanf(“%f”,&m);n=5.0/9.0*(m-32);printf(“其对应的摄氏温度为:%fn”,n);}

输入两个角度值分别赋给变量x和y,计算下面算式的结果,#include #include #define PI 3.14

void main(){ int x,y,z,s1,s2;printf(“请输入两个角度值n”);scanf(“%f%f”,&x,&y);x=x*PI/180.0;y=y*PI/180.0;s1=sin(fabs(x)+fabs(y));s2=sqrt(cos(fabs(x)+fabs(y)));z=s1/s2;} printf(“所的结果为%f/n”,z);

贷款额的计算,即计算一次可向银行贷款多少元,其计算公式为 D=a(In-1)/[(I-1)In-] 式中:D为一次可向银行的贷款额,a为每年可以还贷的金额,I=1+人(r为年利率),n为还清贷款的年数。a、r、n由键盘输入。#include #include void main(){ float a,r,n,I,D,p,q;printf(“请输入每年可以还贷的金额a,年利率r,还清贷款的年数nn”);scanf(“%f%f%f”,&a,&r,&n);I=1+r;p=a*(pow(I,n)-1);q=(I-1)*pow(I,n);D=p/q;printf(“一次可向银行贷款%f元”,D);}

第三章

将China译成Glmre。方法是:用原来字母后面的第4个字母代替原来的字母。#include void main(){ char c1,c2,c3,c4,c5;c1='C'+4;c2='h'+4;c3='i'+4;c4='n'+4;c5='a'+4;printf(“%c%c%c%c%cn”,c1,c2,c3,c4,c5);}

把十进制数97转化为八进制、十六进制数。#include void main(){ int n=97;printf(“oct=%on”,n);printf(“xct=%xn”,n);}

设圆半径r=1.5,圆柱高h=3,求圆周长,圆面积,圆球表面积,圆球体积,圆柱体积。#include #define PI 3.1415926 void main(){ float r,h,l,s,sv,hs,hv;printf(“请输入圆半径,圆柱高n”);scanf(“%f%f”,&r,&h);l=2*PI*r;s=PI*r*r;=4*PI*r*r;sv=4.0/3.0*PI*r*r*r;hs=2*PI*r*r+2*PI*r*h;hv=PI*r*r*h;printf(“圆周长为%f,圆面积为%f,圆球表面积为%f,圆球体积为%f,圆柱表面积为%f,圆柱体积为%f”,l,s,sv,hs,hv);}

已知三角形的三边长,求三角形面积。#include #include void main(){ float a,b,c,p,s;printf(“请输入三角形的三边长为:n”);scanf(“%f%f%f”,&a,&b,&c);

} p=(a+b+c)/2;s=sqrt(p*(p-a)*(p-b)*(p-c));printf(“此三角形的面积是%f”,s);

输入三个字母m,a,n,并以”man”m a n(竖行排列)的形式输出 #include void main(){ char a,b,c;printf(“请输入三个字母n”);scanf(“%c,%c,%c”,&a,&b,&c);printf(“”%c%c%c“n”,a,b,c);printf(“%cn%cn%cn”,a,b,c);}

输入一个字符,找出他的前一个字符和后一个字符,并根据ASCII值,按从大到小的顺序输出这三个字符级ASCII码值。#include void main(){ char c1,c2,c3;scanf(“%c”,&c2);c1=c2-1;c3=c2+1;printf(“%c%c%cn”,c1,c2,c3);

printf(“%d,%d,%d”,c1,c2,c3);}

已知鸡免总头数为h(30),总脚数为f(90),求鸡免各有几只

#include void main(){ int h,f,a,b;

}printf(“请输入总头数和总脚数n”);scanf(“%d,%d”,&h,&f);a=(4*h-f)/2;b=h-a;printf(“鸡有%d只,兔有%d只”,a,b);

输入一个三位正整数,反向输出对应的数

#include void main(){ int i,j,k,l,m;

}printf(“请输入一个三位整数:n”);scanf(“%d”,&i);j=i/100;k=(i-j*100)/10;l=i-j*100-k*10;m=l*100+k*10+j;printf(“此数的倒置数为:%dn”,m);

计算方程ax2+bx+c=0的根

#include #include void main(){ float a,b,c,x1,x2,p;printf(“请输入a,b,c的值:n”);scanf(“%f%f%f”,&a,&b,&c);

p=sqrt(b*b-4*a*c);x1=(-b+p)/(2*a);

x2=(-b-p)/(2*a);printf(“x1=%f,x2=%fn”,x1,x2);}

用putchar函数读入两个字符c1,c2,然后分别用putchar函数和printf函数输出 #include void main(){ char c1,c2;c1=getchar();c2=getchar();putchar(c1);printf(“n”);putchar(c2);printf(“n”);printf(“%cn%cn”,c1,c2);}

第四章

输入三个整数x,y,z,请把这三个数由小到大输出,#include void main(){ int x,y,z,m;printf(“请输入三个整数n”);scanf(“%d,%d,%d”,&x,&y,&z);if(x>y){m=x,x=y,y=m;} if(x>z){m=x,x=z,z=m;} if(y>z){m=y,y=z,z=m;} printf(“%d,%d,%dn”,x,y,z);}

当月收入超过1600元时,超过部分交税款20%。试编写一程序计算税款(其中月收入由键盘输入。

#include void main(){ float a,b=0;

}printf(“请输入月收入n”);scanf(“%f”,&a);if(a>1600)b=(a-1600)*0.2;printf(“应缴税款为%f元n”,b);

计算y=3x+6(x>=0)

-x*x+2x-8(x

#include void main(){ float x,y;

} printf(“请输入自变量x的值n”);scanf(“%f”,&x);if(x>=0)y=3*x+6;else y=-x*x+2*x-8;printf(“对应因变量的值为%fn”,y);

为优待顾客,商店对购货在1000元和1000元以上的,八折优惠;500元以上(包括500元,下同),1000元以下的,九折优惠;200元以上,500元以下的,九五折优惠;100元以上,200元以下的,九七折优惠;100元一下不优惠。请输入购货款后,打印出该交的货款。#include void main(){ float x,y;

}printf(“请输入购货款n”);scanf(“%f”,&x);if(x>=1000)y=x*0.8;else if(x>=500)y=x*0.9;else if(x>=200)y=x*0.95;else if(x>=100)y=x*0.97;else y=x;printf(“应交货款为%.1f元n”,y);

输入班号,输出该班学生人数(用switch语句编程)#include void main(){ int m,n;

}printf(“请输入班号n”);scanf(“%d”,&m);switch(m){ case 21:n=45;break;case 22:n=51;break;case 23:n=48;break;case 24:n=46;break;case 25:n=48;break;case 26:n=52;break;default:printf(“输入错误n”);} printf(“该班有%d个学生n”,n);

第五章

任意输入N个数,统计其中正数,负数和零的个数。

#include void main(){ int N,n,m,a=0,b=0,c=0;

}printf(“请输入数字个数n”);scanf(“%d”,&N);for(n=1;n0)

a++;else if(m

b++;else

c++;} printf(“正数有%d个,负数有%d个,零有%d个n”,a,b,c);

第五章

任意输入N个数,统计其中正数,负数和零的个数。#include void main(){ int a=0,b=0,c=0,n,i,m;printf(“请输入数的个数:n”);scanf(“%d”,&n);for(i=1;i

} printf(“请输入第%d个数:n”,i);scanf(“%d”,&m);if(m>0)

a++;else if(m

b++;else

c++;} printf(“正数有:%d个,负数有:%d个,零有:%d个n”,a,b,c);

求值

#include void main(){ int i,j,k,a=0,b=0;float c=0,sum=0;for(i=1;i

在1~500中,找出所有能同时满足用3除余2,用5除余3,用7除余4的整数。#include void main(){ int i;for(i=1;i

if(i%3==2&&i%5==3&&i%7==4)

printf(“%dn”,i);} }

任意输入一串字符,以“?”结束,分别统计其中字母,数字和其他字符的个数。#include void main(){ int a=0,b=0,c=0;char d;while((d=getchar())!='?'){

if(d>='A'&&d='a'&&d

a++;

else if(d>='0'&&d

b++;

else

c++;} printf(“字母有%d个,数字有%d个,其他字符有%d个n”,a,b,c);}

第六章

求任意20个数中的正数之和及个数。#include void main(){ int i,k=0;float a[30],sum=0;for(i=0;i

printf(“请输入第%d个数n”,i+1);

scanf(“%f”,&a[i]);

if(a[i]>0)

{

sum+=a[i];

k++;

} } printf(“正数之和为%fn”,sum);printf(“正数的个数为%dn”,k);}

统计全班某门功课的平均成绩,找出最高,最低分。#include void main(){ int a[38],i,j,k,sum=0;float ave;

printf(“请输入第1个同学的成绩:n”);scanf(“%d”,&a[0]);j=k=a[0];for(i=1;i100||a[i]

printf(“输入的成绩无效!请重新输入!n”);

scanf(“%d”,&a[i]);} sum+=a[i];if(a[i]>j)j=a[i];if(a[i]

}

一个数如果恰好等于他的因子之和,这个数就称为完数。找出1000以内的所有完数。#include void main(){ int sum,i,n;

} printf(“从2到1000的完备数有:n”);for(n=2;n

电话传递数据加密。#include void main(){ int n,b,i,a[4];

} printf(“请输入一个三位数n”);scanf(“%d”,&n);a[0]=n/1000;a[1]=(n/100)%10;a[2]=(n%100)/10;a[3]=n%10;for(i=0;i

计算两个矩阵的乘积。#include void main(){ int a[2][3],b[3][4],c[2][4]={0};int i,j,k,s;

printf(“请给数组a[2][3]赋值n”);for(i=0;i

scanf(“%d”,&a[i][j]);} printf(“请给数组b[3][4]赋值n”);for(i=0;i

scanf(“%d”,&b[i][j]);} for(i=0;i

for(k=0,s=0;k

c[i][j]+=a[i][k]*b[s][j];} }

} for(i=0;i

printf(“%d

”,c[i][j]);printf(“n”);}

第七章

#include #include void change(char str[]){ int i,j;for(i=j=0;str[i]!='';i++)

if(str[i]>='A'&&str[i]='a'&&str[i]='0'&&str[i]

str[j++]=str[i];

str[j]='';}

void main(){

} char str[80];gets(str);change(str);puts(str);return;

#include

int sum(int n){ int i,j,k,l;i=n%10;n=n/10;j=n%10;k=n/10;l=i*i*i+j*j*j+k*k*k;return l;}

void main(){ int x,y;for(x=100;x

y=sum(x);

if(y==x)

} } printf(“%dn”,x);

#include

int min(int m,int n){ int i,j,k;i=m;j=n;if(i>j){

k=i;

i=j;

j=k;} while(k!=0){

k=j%i;

j=i;

i=k;} k=m*n/j;return k;}

void main(){ int a,b,c,d,e;int x,y,z,w;

} printf(“请输入5个正整数n”);scanf(“%d,%d,%d,%d,%d”,&a,&b,&c,&d,&e);x=min(a,b);y=min(c,d);z=min(x,y);w=min(z,e);printf(“%dn”,w);

#include

int wanbeishu(int n){ int i,j=0;for(i=1;i

void main(){ int x,y;printf(“30000以内的完备数有:n”);

} for(x=1;x

#include

int yueshuhe(int n){ int i,j=0;for(i=1;i

void main(){ int x,y,z;printf(“互满数有:n”);for(x=1;x

y=yueshuhe(x);

z=yueshuhe(y);

} } if(x==z&&x

习题八

#include void main(){ int a[200],b[200],m,n,len,*p,*q,*t;printf(“请输入升序数组a的元素个数:”);scanf(“%d”,&m);for(p=a;p

printf(“请输入升序a的第%d个元素值:”,p-a+1);

scanf(“%d”,p);} printf(“请输入升序数组b的元素个数:”);scanf(“%d”,&n);for(q=b;q

printf(“请输入升序b的第%d个元素值:”,q-b+1);

scanf(“%d”,q);} p=a;q=b;len=m;

} while(p

for(t=a+len-1;t>=p;t--)*(t+1)=*t;

*p=*q;

len++;

q++;

if(q==b+n)break;} p++;} while(q

#include #define N 100 void main(){ int a[N],*p=a,m,n,i,k,s;printf(“请输入总人数:”);scanf(“%d”,&n);for(i=0;i

} printf(“请输入报数值:”);scanf(“%d”,&m);i=0;k=0;s=0;while(s

printf(“%d ”,*(p+i));

*(p+i)=0;

k=0;

s++;} i++;if(i==n)i=0;} printf(“n”);

#include #define N 10 void func(int *,int);void main(){ int a[N],i;printf(“请任意输入%d个数组元素:n”,N);for(i=0;i

func(a,N);for(i=0;i

void func(int *a,int n){ int *p,*q;int count=0;for(p=a;p

if(*p==0)count++;

for(p=a,q=a+n;p

if(*p==0)

{

while((*q-1)==0)q--;

if(p==q)break;

*p=*(q-1);*(q-1)=0;

}

for(p=a,a=q;p

for(q=p+1;q

if(*p>*q){*p=*p+*q;*q=*p-*q;*p=*p-*q;} }

#include #define N 10 int search(int *[],int,int);void main()

{

int a[N],*p[N],i,k,m;printf(“请任意输入%d个数组元素:n”,N);for(i=0;i

printf(“第%d大元素的值:%dn”,k,*p[m]);

printf(“第%d大元素的下标:”,k);

for(i=0;i

if(a[i]==*p[m])printf(“%d”,i);

printf(“n”);}

else printf(“第%d大元素不存在!n”,k);}

int search(int *a[],int n,int k){ int i,j,*t;for(i=0;i

for(j=i+1;j

if(*a[i]

i=1;j=0;

while(i

{

if(*a[i-1]>*a[i])j++;

if(j==k)break;

i++;

}

if(k

else return i-1;}

#include int find(int,int);void main(){ int n;long x,k;printf(“请输入一个长整型数据: n”);scanf(“%ld”,&x);printf(“请输入待查找的子数: n”);scanf(“%ld”,&k);n=find(x,k);printf(“%d中的%ld出现的次数为%dn”,x,k,n);} int find(int x,int k){ int a[10],b[10],*p=a+10,*q=b+10,*t,*r,s=0;do {

p--;

*p=x%10;

x=x/10;} while(x!=0);do {

q--;

} *q=k%10;k=k/10;}while(k!=0);while(p

if(*t==*r)

{

t++;

r++;

}

else break;

if(r==b+10)s++;

p++;} return s;

习题九

#include void main(){ char str[80];int i;

} printf(“请输入原始字符串: ”);gets(str);for(i=0;str[i]!='';i++)if(str[i]>='A'&&str[i]='a'&&str[i]

str[i]+=1;else if(str[i]=='Z'||str[i]=='z')

str[i]-=25;printf(“结果字符串为:”);puts(str);

#include #include #define M 5 #define N 80 void main(){ char str[M][N],s[N];int i,j,k,len,m=0,l=0,word=0;puts(“请输入英文文章:”);for(i=0;i

gets(str[i]);

len=strlen(str[i]);

for(j=len-1;j>=0;j--)

if(str[i][j]>='a'&&str[i][j]='A'&&str[i][j]

{

}

word=1;l++;} else if(word){ for(k=j+1;k

s[m++]=str[i][k];s[m++]=str[i][j];word=0;l=0;} else s[m++]=str[i][j];if(word)for(k=j+1;k

s[m++]=str[i][k];s[m]='';strcpy(str[i],s);m=0;l=0;word=0;} puts(“经过处理的英文文章:n”);for(i=0;i

#include void main(){ char str[80],*p,*q;

} puts(“请输入字符串:”);gets(str);for(p=str;*p!='';p++)if(!(*p>='a'&&*p='A'&&*p='0'&&*p

if(*p==*(p+1))

{

for(q=p;*q!='';q++)

*q=*(q+1);

p--;

} puts(“处理后的字符串为:”);puts(str);#include #include void strcopy(char *,char *,int,int);void main(){ char str1[80],str2[80];int m,n,len;printf(“请输入原字符串:”);gets(str1);

printf(“从第几个字符开始复制?”);scanf(“%d”,&n);printf(“复制到第几个字符?”);scanf(“%d”,&m);len=strlen(str1);if(len==0)printf(“字符串为空n”);else if(m>len||m

printf(“复制字符串:%sn”,str2);} }

void strcopy(char *p,char *q,int m,int n){ char *s1=p+m-1,*s2=p+n-1;if(m

while(s1

*q++=*s1++;else

while(s1>=s2)*q++=*s1--;

*q='';}

《C语言作业.docx》
将本文的Word文档下载,方便收藏和打印
推荐度:
C语言作业
点击下载文档
相关专题 c语言作业 作业 语言 c语言作业 作业 语言
[其他范文]相关推荐
    [其他范文]热门文章
      下载全文