3605输入四个整数,输出他们的乘积
#include <stdio.h>
int main()
{
int a,b,c,d,sum;
scanf("%d%d%d%d",&a,&b,&c,&d);
printf("%d",a*b*c*d);
return 0;
}
3606
解法一
#include <stdio.h>
#include <math.h>
int main()
{
int a,b;
scanf("%d",&a);
b=abs(a); //abs取绝对值 fabs对浮点型取绝对值
printf("%d",b);
return 0;
}
解法二
#include <stdio.h>
int main()
{
int a,b;
scanf("%d",&a);
if(a>0)b=a;
else b=-a;
printf("%d",b);
return 0;
}
3607数字星期
#include <stdio.h>
int main()
{
int a,b,c;
float sum,ave;
scanf("%d%d%d",&a,&b,&c);
sum=a+b+c;
ave=sum/3;
printf("%.0f %.2f",sum,ave); //%.0f可以定义小数点位数
return 0;
}
3608
#include <stdio.h>
int main()
{
int a,b,c;
scanf("%d,%d,%d",&a,&b,&c);
printf("%d,%d,%d",c,a,b);
return 0;
}
3614输入一个大写字母,输出对应的小写字母
#include <stdio.h>
int main()
{
char a;
scanf("%c",&a);
if(a<=90)a=a+32; //大小写相差32
else a=a-32;
printf("%c",a);
return 0;
}
3615
#include <stdio.h>
int main()
{
char a;
int n;
scanf("%c%d",&a,&n);
a=a+n;
printf("%c",a);
return 0;
}
3620
#include <stdio.h>
#include <math.h>
int main()
{
double a,b,c;
double s,r;
scanf("%lf%lf%lf",&a,&b,&c);
s=(a+b+c)/2;
r=sqrt(s*(s-a)*(s-b)*(s-c));
printf("%.2lf",r);
return 0;
}
3625
两个整数
#include <stdio.h>
int main()
{
int a,b,c;
scanf("%d%d",&a,&b);
if(abs(a)>=abs(b))c=a;
else c=b;
printf("%d",c);
return 0;
}
3626
数字星期
#include <stdio.h>
int main()
{int a;
scanf("%d",&a);
switch (a)
{
case 1:printf("一");break;
case 2:printf("二");break;
case 3:printf("三");break;
case 4:printf("四");break;
case 5:printf("五");break;
case 6:printf("六");break;
case 7:printf("七");break;
default :printf("error\n");
}
return 0;
}
3627一个整数,小于 10000
#include<stdio.h>
#include<math.h>
int main()
{
int a,k;
scanf("%d",&a);
if(a>=0&&a<10) k=1;
else if(a>=10&&a<100) k=2;
else if(a>=100&&a<1000) k=3;
else if(a>=1000) k=4;
else k=0;
printf("%d",k);
return 0;
}
3628
输入一个三位整数,判断该数是不是水仙花数,如果是,输出1,如果不是,输出0
#include<stdio.h>
#include<math.h>
int main()
{
int a,b,c,x,e;
scanf("%d",&x);
a=x/100;
b=x/10-a*10;
c=x-a*100-b*10;
if(x==pow(a,3)+pow(b,3)+pow(c,3))e=1;
else e=0;
printf("%d",e);
return 0;
}
3629
输入一个字符,如果是大写字母,输出1
#include<stdio.h>
int main()
{
char a;
int e;
scanf("%c",&a);
if(a>64&&a<91)e=1;
else if(a>96&&a<123)e=2;
else if(a>47&&a<58)e=3;
else e=4;
printf("%d",e);
return 0;
}
3630
输入鸡兔总数和总脚数
#include<stdio.h>
int main()
{
int m,f,c,r;
scanf("%d%d",&m,&f);
c=(4*m-f)/2;
r=(f-2*m)/2;
printf("%d %d",c,r);
return 0;
}
3635
为优待顾客,商店对购物额为
1000
元以上(含
1000
元,下同)者,八折优惠;
500
元以上,
1000
元以下者,九折优惠;
200
元以上,
500
元以下者,九五折优惠;
200
元以下者,九七折优惠;
100
元以下者不优惠。由键盘输入一个购货款额,计算应收的款额。
#include<stdio.h>
int main()
{
int a;
float sum;
scanf("%d", &a);
if(a >= 1000)sum = a*0.8;
else if(a >= 500)sum = a*0.9;
else if(a >= 200)sum = a*0.95;
else if(a >= 100)sum = a*0.97;
else sum = a*1.0;
printf("%f", sum);
return 0;
}
3636
输入一个字符,判断它是否是小写字母,是小写字母,则将它转换成大写字母并输出,如果不是,则不转换,原样输出字符。
#include<stdio.h>
int main()
{
char a;
scanf("%c",&a);
if(a>96&&a<123)a=a-32;
printf("%c",a);
return 0;
}
3637
从键盘接收一个字符,如果是字母,输出其对应的ASCII码,如果是数字,按原样输入,否则给出提示信息“wrong character!”。
#include<stdio.h>
int main()
{
char a;
scanf("%c",&a);
if(a>96&&a<123)printf("%d\n",a);
else if(a>64&&a<91)printf("%d\n",a);
else if(a>47&&a<58)printf("%c\n",a);
else printf("wrong character!\n");
return 0;
}
3638
输入一个整数,判断该数是奇数还是偶数,如果是奇数的请输出“odd number"两个单词,如果是偶数输出“even number”两个单词。
#include<stdio.h>
int main()
{
int a;
scanf("%d",&a);
if(a%2!=0)printf("odd number");
else printf("even number");
return 0;
}
3639
编程判断输入的整数是否既是5又是7的整数倍,若是输出yes,若不是输出no。
#include<stdio.h>
int main()
{
int a;
scanf("%d",&a);
if(a%5==0&&a%7==0)printf("yes");
else printf("no");
return 0;
}
3640
有以下分段函数
#include<stdio.h>
#include<math.h>
int main()
{
float x,y;
scanf("%f",&x);
if(x<=0)
{
printf("1.00");
}
else if(x>=1 && x<=5)
{
y=2*x;
printf("%.2f",y);
}
else if(x>5)
{
y=sqrt(x);
printf("%.2f",y);
}
else
{
printf("error");
}
return 0;
}
3641
有以下分段函数
#include<stdio.h>
#include<math.h>
int main()
{
float x;
scanf("%f",&x);
if(x<0)printf("%.2f",-x);
if(x>=0&&x<10)printf("%.2f",sin(x)+x);
if(x>=10&&x<=20)printf("%.2f",pow(x,3));
if(x>20)printf("error");
return 0;
}
3642
某运输公司运费计算时根据运输距离打折计算,折扣的计算方法如下:
#include<stdio.h>
#include<math.h>
int
main()
{
int
s;
double
d;
scanf
(
"%d"
,&s);
if
(s<250)d=2.5*s;
else
if
(s>=250&&s<800)d=2.5*0.98*s;
else
if
(s>=800&&s<1500)d=2.5*0.95*s;
else
if
(s>=1500)d=2.5*0.92*s;
printf
(
"%.2f"
,(
float
)d);
return
0;
}
3643
求解一元二次方程ax
2
+bx+c=0的实根
#include<stdio.h>
#include<math.h>
int main()
{
int a,b,c;
float x;
float m,n;
scanf("%d,%d,%d",&a,&b,&c);
x=pow(b,2)-4*a*c;
if(x<0)printf("error");
else m=(-b+sqrt(x))/(2*a),n=(-b-sqrt(x))/(2*a),printf("%.2f,%.2f",m,n);
return 0;
}
3644
给定三条边a,b,c,判断其是否能构成三角形
#include<stdio.h>
#include<math.h>
main()
{
float a,b,c;
scanf("%f,%f,%f",&a,&b,&c);
if(a+b>c&&b+c>a&&a+c>b)printf("triangle");
else
printf("error");
}
3645
从键盘输入一个三角形的三条边,判断是否能组成三角形,若能组成三角形,则输出它
的面积。
#include<stdio.h>
#include<math.h>
main()
{
float a,b,c,S,x;
scanf("%f,%f,%f",&a,&b,&c);
if(a+b>c&&b+c>a&&a+c>b)
{
x=(a+b+c)/2.0;
S=sqrt(x*(x-a)*(x-b)*(x-c));
printf("%.2f",S);
}
else
printf("error");
}
3646
输入一个字符,判断其是否为英文字母,若是英文字母,则将其大小写进行转换,若不
是英文字母,则不变。
#include<stdio.h>
main()
{
char a;
scanf("%c",&a);
if(a>64&&a<91)a=a+32;
else if(a>96&&a<123)a=a-32;
printf("%c",a);
}
3647
给定三个整数型
x
,
y
,
z
,输出三个数中的最大值和最小值。
#include<stdio.h>
int main()
{
int x,y,z,t;
scanf("%d,%d,%d",&x,&y,&z);
if(x>y)t=x,x=y,y=t;
if(x>z)t=z,z=x,x=t;
if(y>z)t=y,y=z,z=t;
printf("%d,%d",z,x);
return 0;
}
3648从键盘输入一个百分制的学生成绩,输出其对应的分数等级,其中90~100为A,80~89为B,70~79为C,60~69为D,60以下为E。
#include<stdio.h>
main()
{
float a;
scanf("%f",&a);
if(a>=90&&a<=100)printf("A");
else if(a>=80&&a<=89)printf("B");
else if(a>=70&&a<=79)printf("C");
else if(a>=60&&a<=69)printf("D");
else if(a<60)printf("E");
}
3655编写程序,找出四位整数abcd满足下列关系的数:
#include<stdio.h>
int main()
{
int a,b,c,d,f;
int x;
for(x=1000;x<10000;x++)
{
a=x/1000;
b=x/100-a*10;
c=x/10-a*100-b*10;
d=x-a*1000-b*100-c*10;
f=(a*10+b+c*10+d)*(a*10+b+c*10+d);
if(f==x)printf("%d\n",x);
}
return 0;
}
3657
编写程序,当用户输入一个数值区间的起始值时,能够计算出该区间中所有的能被7整除且左右对称的三位数,如区间[700,800]之间满足条件的三位数有707,777
#include<stdio.h>
int main()
{
int a,b,l;
int c,d,f,p;
l=0;
scanf("%d,%d",&a,&b);
if(a<100)a=100;
if(b>999)b=999;
for(;a<=b;a++)
{
c=a/100;
d=a/10-c*10;
f=a-c*100-d*10;
p=a%7;
if(c==f&&p==0)
{
if(l!=0)printf(",");
printf("%d",a);
l++;
}
}
return 0;
}
3658有一堆桃子,猴子第一天吃了一半,不过瘾,就又吃了一个,以后每天都这样,先吃前一天剩下桃子数的一半,再多吃一个,第n天想吃时,发现只剩一个桃子了。
#include<stdio.h>
int main()
{
int n,sum,a;
scanf("%d",&n);
a=1;
if(n==1)sum=1;
else
{
for(sum=1;a<=n-1;a++)
{
sum=(sum+1)*2;
}
}
printf("%d",sum);
return 0;
}
3662输入整数n和a,输出a+aa+aaa+aaaa......
#include<stdio.h>
int main()
{
int q,w,sum,a,n,f;
scanf("%d%d",&n,&a);
sum=0;
f=a;
q=1;
for(w=0;w<n;w++)
{
sum=sum+f;
q=q*10;
f=f+a*q;
}
printf("%d",sum);
return 0;
}
3663百钱买百鸡:
#include <stdio.h>
int main()
{
int a,b,c;
for(a=0; a<=50; a++)
for(b=0; b<=50; b++)
{
c=100-a-b;
if(5*a+3*b+c/3==100&&c%3==0)printf("%d %d %d\n",a,b,c);
}
}
3664
输入n值,输出 1!-2!+3!-4!+5!.....n!
#include <stdio.h>
#include <math.h>
int omg(int a)
{
int b,sum=1;
for(b=1; b<=a; b++)
sum=sum*b;
return sum;
}
int main()
{
int i,w,b,c,n;
double sum=0;
scanf("%d",&n);
for(w=1; w<=n; w++)
sum=sum+pow((-1),w-1)*omg(w);
printf("%.2f",sum);
return 0;
}
3669通过键盘输入10个整数,按照由小到大的顺序排序并输出。
#include<stdio.h>
int main()
{
int a[10],i,j,temp;
for (i=0;i<10;i++)
scanf("%d",&a[i]);
for (j=0;j<10;j++)
for (i=0;i<10;i++)
if(a[i]>a[i+1])
{
temp=a[i];;
a[i]=a[i+1];
a[i+1]=temp;
}
for (i=0;i<10;i++)
printf("%d\n",a[i]);
}
3676
一个学习小组由5个人,每个人有3门课的考试成绩,求全组分科的平均成绩和各科的总平均成绩
#include <stdio.h>
int main()
{
int m,n,a[3][5];
float sum1=0,sum2=0,sum3=0;
for(m=0; m<=2; m++)
for(n=0; n<=4; n++)
scanf("%d",&a[m][n]);
for(n=0; n<=4; n++)
{
sum1=sum1+a[0][n];
sum2=sum2+a[1][n];
sum3=sum3+a[2][n];
}
printf("%.2f %.2f %.2f\n",sum1/5,sum2/5,sum3/5);
printf("%.2f",(sum1/5+sum2/5+sum3/5)/3);
}
3678
键盘输入一个3*4列矩阵,编程求其中最小的那个元素的值和其所在的行号、列号。说明:矩阵的行列均从0开始编号
#include <stdio.h>
int main()
{
int a[3][4],m,n,min,x=0,y=0;
for (m=0; m<3; m++)
for(n=0; n<4; n++)
{
scanf("%d",&a[m][n]);
if(m==0&&n==0)min=a[0][0];
if(a[m][n]<min)
{
min=a[m][n];
x=m;
y=n;
}
}
printf("min=%d\n",min);
printf("%d,%d",x,y);
return 0;
}
3680通过键盘输入一个3行4列的整型二维数组a[3][4],找出该二维数组的鞍点。
//截止编者截稿前本题后台数据仍有误!
方案一
#include<stdio.h>
int save[3][4];
int check[3][4];
int main()
{
memset(check, 0, sizeof(check));
int i, j;
for(i = 0; i < 3; i++)
for(j = 0; j < 4; j++)
scanf("%d", &save[i][j]);
int max, tem;
for(i = 0; i < 3; i++)
{
tem = save[i][0];
max = 0;
for(j = 1; j < 4; j++)
{
if(tem < save[i][j])
{
tem = save[i][j];
max = j;
}
}
check[i][max] ++;
}
int min;
for(j = 0; j < 4; j++)
{
tem = save[0][j];
min = 0;
for(i = 1; i < 3; i++)
{
if(tem > save[i][j])
{
tem = save[i][j];
min = i;
}
}
check[min][j]++;
}
int tp = 0;
for(i = 0; i < 3; i++)
for(j = 0; j < 4; j++)
if(check[i][j] == 2)
printf("a[%d][%d]=%d\n", i, j, save[i][j], tp++);
if(tp == 0)printf("not exist");
return 0;
}
方案二
#include "stdio.h"
main()
{
int x = 0, y = 0, t = 0, index = 0, tp = 0;
int s[3][4];
for(; x < 3; x++)
{
for(y = 0; y < 4; y++)
{
scanf("%d", &t);
s[x][y] = t;
}
}
for(x = 0; x < 3; x++)
{
for(y = 0; y<3; y++)
{
index = s[x][y]>s[x][y + 1] ? y : y + 1;
}
if(s[x][index] <= s[0][index] && s[x][index] <= s[1][index] && s[x][index] <= s[2][index])
{
printf("a[%d][%d]=%d\n", x, index, s[x][index]);
tp = 1;
}
}
if(tp == 0)printf("not exist");
return 0;
}
3683
字符串逆序
设有如下代码:
#include <stdio.h>
int main()
{
/*****************************************************/
//只允许在这里添加代码,后面的代码不允许做任何改动或删除,否则不得分
/*****************************************************/
printf("%s\n", s);
return 0;
}
}
运行时,从键盘输入一个字符串(不超过
50个字符),将其逆序存放,然后输出。如:若输入ab cd,则输出应为:dc ba
#include <stdio.h>
int main()
{
char p[100],s[100];
int k,i,l=-1;
gets(p);
k=strlen(p);
for(i=k; i>=0; i--,l++)
s[l]=p[i];
s[l]='\0';
printf("%s\n", s);
return 0;
}
3685
键盘输入一个字符串(可以有空格)存入数组,然后统计数字、字母和空格的出现个数
#include <stdio.h>
int main()
{
char p[100];
int k,i,shuzi=0,zimu=0,kongge=0;
gets(p);
k=strlen(p);
for(i=0; i<k; i++)
{
if(p[i]>='0'&&p[i]<='9')shuzi++;
else if(p[i]>='a'&&p[i]<='z'||p[i]>='A'&&p[i]<='Z')zimu++;
else if(p[i]==' ')kongge++;
}
printf("%d\n%d\n%d",shuzi,zimu,kongge);
return 0;
}
3689编写一个函数fun,函数的功能是:判断一个整数是否既是5又是7的整倍数。
#include <stdio.h>
#include <stdlib.h>
int fun(int a)
{
if((a%5==0)&&(a%7==0))printf("yes");
else printf("no");
}
3690编一通用函数avernum,计算含有20个整型数据的一维数组的平均值。
#include <stdio.h>
#include <stdlib.h>
float avernum(int a[])
{
int i;
float sum=0;
for (i=0;i<20;i++)
sum=sum+a[i];
return sum/20.0;
}
3691
英文语句中最长单词长度(函数调用)//后台没有添加main函数。
后台已有main函数,功能为:
用户由键盘输入一条英文语句(长度小于100),程序将英文语句存储到数组sequence
现要求自编函数:
int longestWord(char sequence[ ] );
实现如下功能:
找出英文语句中长度最长(字母个数最多)的单词,并返回这个单词的长度
#include<stdio.h>
#include<string.h>
int longestWord(char sequence[ ] );
int longestWord(char sequence[ ] )
{
int word=0,i,s,max=0;
s=strlen(sequence);
for(i=0; i<s; i++)
{
if(((sequence[i]>='A'&&sequence[i]<='Z')||(sequence[i]>='a'&&sequence[i]<='z')))
{
word++;
}
else
{
if(word>max)max=word;
word=0;
}
}
return max;
}
int main()
{
char abc[100];
gets(abc);
printf("%d",longestWord(abc));
}