c语言复习题_c语言复习题a

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

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

 1.编写程序,输入一个正整数n,求下列算式的值。要求定义和调用函数fact(k)计算k的阶乘,函数返回值的类型是double。#include double fact(int k){ double t=1;int i;for(i=1;i

#include int f(double x)// 函数定义 { int y=0;if(x>0)y=1;else if(x==0)y=0;else y=-1;return y;} void main(){ double x;int y;scanf(“%lf”,&x);y=f(x);// 函数调用 printf(“f(%g)=%dn”,x,y);} 3.输入一个正整数,输出该数的各个数字之和。要求编写函数,计算整数的各个数字之和。#include int sum(int a){ int s=0;while(a!=0){ s+=a%10;a=a/10;} return s;} void main(){ int x;scanf(“%d”,&x);printf(“%dn”,sum(x));} 4.输入两个正整数a和n,求a+aa+aaa+……+aa…a(最后一项为n个a)之和。例如输入2和3,输出246(即2+22+222)。要求定义并调用函数f(a,n),它的功能是返回aa…a(n个a)。例如f(2,3)返回222。#include int f(int a,int n){ int s=0;for(;n>0;n--)s=s*10+a;// s+=pow(10,n-1)*a;return s;} void main(){ int a,n,sum=0,i;printf(“input a n:n”);

scanf(“%d%d”,&a,&n);for(i=1;i

scanf(“(%lf,%lf),(%lf,%lf)”,&x1,&y1,&x2,&y2);d=f(x1,y1,x2,y2);printf(“%fn”,d);} double f(double x1,double y1,double x2,double y2){ double d;d=sqrt((x1-x2)*(x1-x2)+(y1-y2)*(y1-y2));return d;} 9.输出一张摄氏温度——华氏温度转换表。摄氏温度取[-100℃ ~150℃ ],温度间隔5℃,要求定义函数ctof(c),将摄氏温度转换为华氏温度,转换公式:F=32+C*9/5 #include void main(){ float c,f, ctof(float);int i;for(i=0,c=-100;c

11、121、676、909等等。#include int JSValue(int m){ int a=0,b;b=m;while(b!=0){ a=a*10+b%10;b=b/10;} if(a==m)return 1;else return 0;} void main(){ int s=0,i;for(i=11;i='0'&&s[i]

1、最后两行元素和 for(i=1;i

解一: #include void main(){ char s[80];int i,j;gets(s);for(j=0;s[j]!='';j++);// 求字符串长度 for(i=0,j--;i if(s[i]!=s[j]){ printf(“NOn”);break;} if(i>=j)printf(“YESn”);} 解二: #include void main(){ char s[80];int i,j,flag=1;gets(s);for(j=0;s[j]!='';j++);for(i=0,j--;i if(s[i]!=s[j])flag=0;if(flag==1)printf(“YESn”);else printf(“NOn”);} 20.编写函数fun,返回一个数组(10个数)中除最大值和最小值以外的平均值。#include double fun(double a[ ],int n){ double sum=0,max,min;int i;max=min=a[0];for(i=0;i { if(max else if(min>a[i])min=a[i];sum+=a[i];} return(sum-max-min)/(n-2);} void main(){ double b[10],v;int i;for(i=0;ifabs(x[i]-v))d=x[i];printf(“平均值:%-8.2f,与平均值最近元素:%-8.2fn”,v,d);} 25.输入n(n≤20)个数放在一维数组中,找出其中最小的数,将它与数组最前面的数交换后输出这些数。#include void main(){ int i,k,temp,n,a[20];printf(“Input n:n”);scanf(“%d”,&n);for(i=0;i scanf(“%d”,&a[i]);for(k=0,i=1;i if(a[i] temp=a[0];a[0]=a[k];a[k]=temp;for(i=0;i printf(“Input %d numbers:n”,n);for(i=0;i printf(“Input x:”);scanf(“%d”,&x);for(i=n-1;i>=0;i--)if(a[i]>x)a[i+1]=a[i];else break;a[i+1]=x;for(i=0;i} 27.输入一个5行、6列的数组,找出该数组中绝对值最大的元素、输出该元素及其两个下标值。#include #include void main(){ int a[5][6],i,j,max,maxi,maxj;for(i=0;imax){ max=abs(a[i][j]);maxi=i;maxj=j;} printf(“max: %dn”,a[maxi][maxj]);printf(“row: %d col: %dn”,maxi,maxj);} 28.从键盘输入任意一个整数,统计该整数中出现的不同数字的个数。#include void main(){ int x,a[10]={0},i,n=0;printf(“Input x:n”);scanf(“%d”,&x);while(x!=0){ a[x%10]=1;x=x/10;} for(i=0;iz&&x+z>y&&y+z>x){ d=s(x,y,z);t=area(x,y,z,d);printf(“area=%fn”,t);} else printf(“error!n”);} 30.编程,输入一个正整数,将其转换成二进制数。#include main(){ int x,a[32],i,j;printf(“Enter x:”);scanf(“%d”,&x);for(i=0;x!=0;i++){ a[i]=x%2;x/=2;} for(j=i-1;j>=0;j--)printf(“%d”,a[j]);printf(“n”);} 31.输入一行字符,统计并输出其中英文字母、数字字符、空格和其他字符的个数。#include void main(){ char str[80];int zm,sz,kg,qt,i;zm=sz=kg=qt=0;gets(str);for(i=0;str[i]!='';i++)if(str[i]>='A'&&str[i]='a'&&str[i]='0'&&str[i]*max)*max=*p;if(*p

max_min(a,10,&max,&min);printf(“max=%d,min=%dn”,max,min);} 34.输入10个数,按绝对值从小到大排序后输出。要求定义一个函数sort,完成绝对值从小到大排序。#include #include void sort(int *a,int n){ int i,j,k,t;for(i=0;i { k=i;for(j=i+1;j if(fabs(*(a+j))t=*(a+i);*(a+i)=*(a+k);*(a+k)=t;} } void main(){ int a[10],i;for(i=0;i*(a+i))q=a+i;} t=*p;*p=*q;*q=t;} void main(){ int a[10],i;for(i=0;i='a'&&*s='a'&&*p='A'&&*p

scanf(“%d-%d-%d”,&d.year,&d.month,&d.day);if(d.year%4==0&&d.year%100!=0||d.year%400==0)m[2]=29;// 闰年2月份有29天 d.day++;if(d.day>m[d.month]){ d.day=1;d.month++;if(d.month>12){ d.year++;d.month=1;} } printf(“明天:%d-%d-%dn”,d.year,d.month,d.day);} 45.将1000以内的奇数写入文件design1.dat中。#include main(){ int a;FILE *fp;fp=fopen(“design1.dat”,”w”);for(a=1;a

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