C语言
「已注销」
未经他人苦,莫劝他人善
展开
-
进制转换
题目描述:输入两个非负十进制整数A和B(<=2^30-1)以及D(进制数),输出A+B的D进制数(1<D<=10).输入格式:在一行中依次给出三个整数A、B、D(进制数)。输出格式:A+B的D进制数。输入样例:123 456 8输出样例:1103#include <stdio.h>int main(){int a,b,d,sum;printf(“请输...原创 2019-10-28 09:51:49 · 327 阅读 · 0 评论 -
跟奥巴马一起编程
题目描述:美国总统奥巴马不仅呼吁所有人都学习编程,甚至亲自编写代码,成为美国历史上首位编写计算机代码的总统。2014年底,为庆祝“计算机科学教育周”正式启动,奥巴马编写了一个简单的计算机程序----在屏幕上画一个正方形。输入格式:在一行中给出正方形N(3<=N<=20)和组成正方形的某种字符型C,间隔一个空格。输出格式:由给定字符C画出的正方形。但是注意到行间距比列间距大,所以为了...原创 2019-10-27 12:20:23 · 154 阅读 · 0 评论 -
找x
题目描述:输入一个数n(1<=n<=200),然后输入n个数值各不相同的数,再输入一个值X,输出这个值在这个数组中的下标(从0开始,若不在数组中则输出-1)输入格式:测试数据有多组,输入n(1<=n<=200),接着输入n个数,然后输入x输出格式:对于每组输入,请输出结果样例输入41 2 3 43样例输出2#include <stdio.h>...原创 2019-10-27 10:13:49 · 119 阅读 · 0 评论 -
统计某类完全平方数
本题要求实现一个函数,判断任一给定整数N是否满足条件:它是完全平方数,又至少有两位数字相同,如144、676等。函数接口定义:int IsTheNumber ( const int N );其中N是用户传入的参数。如果N满足条件,则该函数必须返回1,否则返回0。裁判测试程序样例:#include <stdio.h>#include <math.h>int Is...原创 2019-10-24 21:54:01 · 259 阅读 · 0 评论 -
求自定类型元素的最大值
本题要求实现一个函数,求N个集合元素S[]中的最大值,其中集合元素的类型为自定义的ElementType。函数接口定义:ElementType Max( ElementType S[], int N );其中给定集合元素存放在数组S[]中,正整数N是数组元素个数。该函数须返回N个S[]元素中的最大值,其值也必须是ElementType类型。裁判测试程序样例:#include <st...原创 2019-10-24 21:46:50 · 428 阅读 · 0 评论 -
求自定类型元素的平均
本题要求实现一个函数,求N个集合元素S[]的平均值,其中集合元素的类型为自定义的ElementType。函数接口定义:ElementType Average( ElementType S[], int N );其中给定集合元素存放在数组S[]中,正整数N是数组元素个数。该函数须返回N个S[]元素的平均值,其值也必须是ElementType类型。裁判测试程序样例:#include <...原创 2019-10-24 20:56:58 · 179 阅读 · 0 评论 -
多项式求值
本题要求实现一个函数,计算阶数为n,系数为a[0] … a[n]的多项式f(x)=∑i=0n (a[i]×xi ) 在x点的值。函数接口定义:double f( int n, double a[], double x );其中n是多项式的阶数,a[]中存储系数,x是给定点。函数须返回多项式f(x)的值。裁判测试程序样例:#include <stdio.h&g...原创 2019-10-24 20:55:29 · 462 阅读 · 0 评论 -
实现一个拆分实数的整数与小数部分的函数。
#include <stdio.h>void fun(float x){int a;float b,c;c=x;a=int(x);b=c-a;printf("%g的整数部分为%d,小数部分为%g\n",x,a,b);}int main(){float x;printf(“输入一个实数:”);scanf("%f",&x);fun(x);printf...原创 2019-06-02 18:56:30 · 1666 阅读 · 0 评论 -
有序数组删除
#include <stdio.h>int main(){int a[5]={1,3,5,7,9},n,i;printf(“输入要删除的数:”);scanf("%d",&n);for(i=0;i<5;i++){if(a[i]==n)a[i]=0;}for(i=0;i<5;i++){if(a[i]!=0)printf("%3d",a[i])...原创 2019-05-29 21:58:16 · 438 阅读 · 0 评论 -
对两个整数a和b,输出其中较大的数。
#include <stdio.h>int fun(){int a,b,c;printf(“输入两个整数:”);scanf("%d%d",&a,&b);if(a>b)c=a;elsec=b;return c;}int main(){printf(“这两个整数中较大的数是%d\n”,fun());}...原创 2019-06-02 19:54:04 · 13078 阅读 · 0 评论 -
实现一个计算m到n之间所有整数的和的简单函数。函数接口定义: int sum( int m, int n );
#include <stdio.h>int sum(int m,int n){int s=0,i;for(i=m;i<=n;i++){s+=i;}return s;}int main(){int m,n,t;printf(“输入两个整数:”);scanf("%d%d",&m,&n);if(m>n){t=m;m=n;n=t...原创 2019-06-02 20:01:38 · 6666 阅读 · 0 评论 -
编写程序,计算两个二维平面向量的和向量。
#include <stdio.h>void fun(){int x1,y1,x2,y2;printf(“输入两个坐标(格式为:x y):”);scanf("%d%d%d%d",&x1,&y1,&x2,&y2);printf(“和向量为(%d,%d)\n”,x1+x2,y1+y2);}int main(){fun();printf(...原创 2019-06-02 21:14:49 · 6662 阅读 · 1 评论 -
编写程序,先将输入的一系列整数中的最小值与第一个数交换,然后将最大值与最后一个数交换,最后输出交换后的序列。
#include <stdio.h>void fun(int a[10]){int i,j,max,min;int p=0,q=0;int r,s;max=a[0];min=a[0];for(i=1;i<10;i++){if(max<a[i]){max=a[i];p=i;}if(min>a[i]){min=a[i];q=i;}}...原创 2019-06-02 22:37:03 · 15263 阅读 · 0 评论 -
编写程序,求一个给定的m×n矩阵各行元素之和。
#include <stdio.h>void fun(){int a[3][4]={1,2,3,4,5,6,7,8,9,10,11,12},i,j,s[3]={0};for(i=0;i<3;i++){for(j=0;j<4;j++){s[i]+=a[i][j];}printf(“第%d行的元素之和为%d\n”,i,s[i]);}}int main(...原创 2019-06-02 11:56:50 · 7412 阅读 · 1 评论 -
实现一个统计整数中指定数字的个数的函数。
#include <stdio.h>void fun(){int x,a[10],i,count=0;printf(“输入10个整数:”);for(i=0;i<10;i++)scanf("%d",&a[i]);printf(“输入指定数字:”);scanf("%d",&x);for(i=0;i<10;i++){if(x==a[i])c...原创 2019-06-02 11:24:27 · 3348 阅读 · 0 评论 -
有序数组插入
#include <stdio.h>int main(){int a[6]={1,3,5,7,9},i,n,t;printf(“输入要插入的数:”);scanf("%d",&n);a[5]=n;for(i=5;i>0;i–){if(a[i]<a[i-1]){t=a[i];a[i]=a[i-1];a[i-1]=t;}}for(i=0;i...原创 2019-05-29 21:50:04 · 970 阅读 · 0 评论 -
数组元素查找
#include <stdio.h>int main(){int a[5]={1,3,5,7,9},i=0,n;printf(“输入要查找的数:”);scanf("%d",&n);for(i=0;i<5;i++){if(n==a[i])break;}if(i>=5)printf(“要查找的数不在数组中\n”);elseprintf(“要查...原创 2019-05-29 19:53:26 · 1831 阅读 · 0 评论 -
输入10个数字,并找出这10个数中的最大值、最小值及相应的下标
#include <stdio.h>int main(){int a[10],i,p=0,q=0,max,min;printf(“输入10个整数:”);for(i=0;i<10;i++)scanf("%d",&a[i]);max=a[0];min=a[0];for(i=1;i<10;i++){if(max<a[i]){max=a[i]...原创 2019-05-29 18:16:19 · 13758 阅读 · 0 评论 -
反序输出,从键盘输入10个整数,再反序输出。
#include <stdio.h>int main(){int a[10],i;printf(“输入10个整数:\n”);for(i=0;i<10;i++)scanf("%d",&a[i]);printf(“反序输出为:\n”);for(i=9;i>=0;i–)printf("%3d",a[i]);printf("\n");}...原创 2019-05-29 17:29:37 · 5176 阅读 · 1 评论 -
实现一个判断素数的简单函数、以及利用该函数计算给定区间内素数和的函数。素数就是只能被1和自身整除的正整数。注意:1不是素数,2是素数
#include <stdio.h>void fun(int m,int n){int i,j;if(m==1)m=m+1;elsem=m;for(i=m;i<=n;i++){for(j=2;j<i;j++){if(i%j==0)break;}if(j>=i)printf("%3d",i);}}int main(){int m...原创 2019-05-31 23:17:00 · 15230 阅读 · 0 评论 -
猴子吃桃问题:小猴子摘了一大堆桃子,第一天吃了一半,还嫌不过瘾,又吃了一个,第二天又吃了剩下的一半多一个....以后每天如此, 到了第十天,小猴子一看只剩下一个桃子了,它想知道最初自己摘了多少个桃子。
#include <stdio.h>int main(){int i,n=1;for(i=9;i>=1;i–){n=2*(n+1);}printf(“猴子最初摘了%d个桃子\n”,n);}原创 2019-05-28 22:43:20 · 12473 阅读 · 0 评论 -
编程计算:s=1!+2!+...+n!
#include <stdio.h>int main(){int s=0,n,i,j,t=1;printf(“输入n的值:”);scanf("%d",&n);for(i=1;i<=n;i++){t=1;for(j=1;j<=i;j++)t*=j;s+=t;}printf(“s=%d\n”,s);}原创 2019-05-28 22:19:14 · 8949 阅读 · 0 评论 -
三色求组合。从5个红球、5个蓝球、5个白球中任意取出8个球作为一组,要求每组中可以没有白球,但必须有红球和蓝球。 输出各种可能的取球组合。
#include <stdio.h>int main(){int x,y,z;for(x=1;x<=5;x++)for(y=0;y<=5;y++)for(z=1;z<=5;z++){if(x+y+z==8)printf(“x=%d,y=%d,z=%d\n”,x,y,z);}}原创 2019-05-28 22:08:58 · 2040 阅读 · 0 评论 -
实现一个函数,统计给定区间内的三位数中有两位数字相同的完全平方数(如144、676)的个数。
#include <stdio.h>#include <math.h>void fun(int m,int n){int i,count=0;int k,p,l;for(i=m;i<=n;i++){k=i/100;p=(i-k*100)/10;l=i%10;if((i==int(sqrt(i))*int(sqrt(i)))&&((...原创 2019-06-02 23:10:11 · 11588 阅读 · 1 评论 -
编写程序,将给定的n个整数存入数组中,将数组中的这n个数逆序存放,再按顺序输出数组中的元素。
#include <stdio.h>void fun(int a[10]){int i,t;for(i=0;i<5;i++){t=a[i];a[i]=a[9-i];a[9-i]=t;}printf(“逆序存放后的数组为:\n”);for(i=0;i<10;i++)printf("%3d",a[i]);}int main(){int a[10]...原创 2019-06-03 14:21:22 · 52290 阅读 · 7 评论 -
从输入的N个整数中查找给定的X。如果找到,输出X的位置(从0开始数);如果没有找到,输出“Not Found”。
#include <stdio.h>void fun(int a[10]){int i,x,k=0;printf(“输入要查找的数:”);scanf("%d",&x);for(i=0;i<10;i++){if(x==a[i]){k=1;break;}}if(k==1)printf(“在第%d个位置\n”,i);elseprintf(“No...原创 2019-06-03 14:33:33 · 14248 阅读 · 0 评论 -
memset函数
memset函数的作用是给数组中每一个元素赋相同的值;memset函数的格式为(数组名,值,sizeof(数组名);使用memset函数需要添加<string.h>这个头文件;memset函数使用的是按字节赋值.#include <stdio.h>#include <string.h>int main(){int a[5]={1,2,3,4,5}...原创 2019-07-07 15:37:55 · 176 阅读 · 0 评论 -
sscanf与sprintf
sscanf可以理解为string+scanf;sprintf可以理解为string+printf。(均在stdio.h头文件下)假设定义了一个char数组str[100],可写为sscanf(str,"%d",&n);printf(str,"%d\n",n);当然,它的应用格式不止一种,还有一种为sscanf(str,"%d:%1f,%s",&n,&db,st...原创 2019-07-11 11:31:22 · 99 阅读 · 0 评论 -
string.h头文件
string.h头文件包含了许多用于字符数组的函数。使用以下函数时需要在开头添加string.h头文件。1.strlen():该函数可以得到字符数组中第一个\0前的字符的个数,其格式为:strlen(字符数组);2.strcmp():该函数返回两个字符串大小的比较结果,比较原则是按字典序,其格式为:strcmp(字符数组1,字符数组2)。所谓按字典序就是在字符串在字典中得顺序,因此如果有两个...原创 2019-07-10 15:10:00 · 7815 阅读 · 0 评论 -
输入A,B,C三个整数,按先大后小的顺序输出的a,b和角注意请使用指针变量的方式进行比较和输出。
#include <stdio.h>void com(int a,int b,int c){int *p,*q,*r;p=&a;q=&b;r=&c;if(*p>*q&&*p>*r){if(*q>*r)printf("%d %d %d\n",*p,*q,*r);elseprintf("%d %d %d\n"...原创 2019-07-13 19:28:39 · 861 阅读 · 0 评论 -
输入a和b两个整数,按先大后小的顺序输出a和b。注意请使用指针变量的方式进行比较和输出。
#include <stdio.h>void com(int a,int b){int *p,*q;p=&a;q=&b;if(*p>*q)printf("%d %d\n",a,b);elseprintf("%d %d\n",b,a);}int main(){int a,b;scanf("%d%d",&a,&b);com...原创 2019-07-13 18:25:57 · 3460 阅读 · 0 评论 -
指针
1.在计算机中,每个字节都会有一个地址,而计算机就是通过地址找到某个变量的。2.只要在变量前加上&,就表示变量的地址。3.指针是一个unsiged类型的整数。4.指针变量用来存放指针(也可以理解为地址),它是在某种数据类型后加*来表示的。例:int *p;double *p;char *p.5.给指针变量赋值的方式一般是把变量的地址取出来,然后赋给对应类型的指针变量。例:int a...原创 2019-07-13 17:39:35 · 117 阅读 · 0 评论 -
用指针交换两个数
#include <stdio.h>void swap(int a,int b){int *p,*q;int t;p=&a;q=&b;t=*p;a=*q;b=t;printf(“a=%d,b=%d\n”,a,b);}int main(){int a=1,b=2;swap(a,b);return 0;}原创 2019-07-13 16:58:16 · 334 阅读 · 0 评论 -
函数
1.基本语法格式:返回类型 函数名称(参数类型 参数){函数主体}2.全局变量是指在定义之后的所有程序段内都有效的变量3.对于计算机来说,main函数返回0的意义在于告知系统程序正常终止。4.数组作为参数时,在函数中对数组元素的修改就等同于是对原数组元素的修改。5.递归是函数自己调用自己的过程。...原创 2019-07-13 11:11:24 · 95 阅读 · 0 评论 -
写一个函数将一个字符串按反序存放。在主函数中输入一个字符串,通过调用该函数,得到该字符串按反序存放后的字符串,并输出。 输入
#include <stdio.h>void f(char str[]){int i;for(i=3;i>=0;i–)printf("%c",str[i]);}int main(){char str[100];scanf("%s",str);f(str);return 0;}原创 2019-07-12 17:44:18 · 3722 阅读 · 2 评论 -
求一元二次方程的根
#include <stdio.h>#include <math.h>int main(){double a,b,c,x1,x2,i;printf(“输入a,b,c:”);scanf("%d%d%d",&a,&b,&c);x1=(-b+sqrt(bb-4ac))/2a;x2=(-b-sqrt(bb-4ac))/2a;printf(“...原创 2019-06-27 17:10:54 · 699 阅读 · 0 评论 -
C语言中的常用的输出格式
(1)%md:%md可以使不足m位的int型变量以m位进行右对齐输出,其中高位用空格补齐;如果变量本身超过m位,则保持原样。(2)%0md:%0md的作用是当变量不足m位时,将在前面补足够的0。(3)%.mf:%.mf可以让浮点数保留m位小数输出,采用的规则是四舍五入六成双。...原创 2019-06-27 16:59:02 · 654 阅读 · 0 评论 -
实现一个计算Fibonacci数的简单函数,并利用其实现另一个函数,输出两正整数m和n之间的所有Fibonacci数。 所谓Fibonacci数列就是满足任一项数字是前两项
#include <stdio.h>int fun_1(int k){int a[k],i;a[0]=1;a[1]=1;for(i=2;i<k;i++)a[i]=a[i-1]+a[i-2];return a[k-1];}void fun_2(int m,int n){int j;for(j=m;j<=n;j++){printf("%5d",fu...原创 2019-06-03 21:56:51 · 19192 阅读 · 2 评论 -
实现一个用递归计算1+2+3+…+n的和的函数。
#include <stdio.h>int fun(int n){int f;if(n>1)f=fun(n-1)+1;elsef=1;return f;}int main(){int n,i,s=0;printf(“输入n的值:”);scanf("%d",&n);for(i=1;i<=n;i++){s+=fun(i);}prin...原创 2019-06-03 21:38:04 · 8270 阅读 · 0 评论 -
实现一个计算整数因子和的简单函数,并利用其实现另一个函数,输出两正整数m和n 所谓完数就是该数恰好等于除自身外的因子之和。例如:6=1+2+3,其中1、2、
#include <stdio.h>int fun_1(int a){int i,k,s=0;for(i=1;i<a;i++){if(a%i==0)s+=i;}if(a==s)k=1;elsek=0;return k;}void fun_2(int m,int n){int j;for(j=m;j<=n;j++){if(fun_1(j...原创 2019-06-03 18:36:52 · 22811 阅读 · 0 评论