几道简单的C语言编程题,请高手帮忙

供稿:hz-xin.com     日期:2025-01-12
几道简单的C语言编程题目!!~~求教高手

//输入两个正整数m和n,求其最大公约数和最小公倍数
#include

void main()
{
int p,r,n,m,temp;
printf("请输入两个正整数n,m:");
scanf("%d,%d",&n,&m);

//把大数放在n中,小数放在m中
if(n<m)
{
temp=n;
n=m;
m=temp;
}

//先将n和m的乘积保存在p中,以便求最小公倍数时用
//求n和m的最大公约数
p=n*m;

//展转相除法,求最大公约数
while(m!=0)
{
r=n%m;
n=m;
m=r;
}

printf("它们的最大公约数是%d
",n);
//最小公倍数=两数乘积/最大公约数
printf("它们的最小公倍数是%d
",p/n);

}
//求1-1/3+1/5-1/7+…,直到某项的绝对值小于0.0001
#include
void main()
{
float a=1,s=0;
int i=2,t;
while(a<=10000.0)
{
if((i%2)==0)
{
s+=1.0/a;
a=a+2.0;
i++;
}
else
{
s-=1.0/a;
a=a+2.0;
i++;
}
}
printf("%f
",s);
}
//一球从100m高度自由落下,每次落地后反跳回原高度的一半,再落下.求它在第10次
//落地时,共经过多少m?第10次反弹多高?

#include

void main()
{
float sn=100,hn=sn/2; //初始值
int n;
for(n=2;n<=10;n++)
{
sn=sn+2*hn; //累记路径长度
hn=hn/2; //反弹高度
}

printf("第10次落地时共经过%fm.
",sn);
printf("第10次反弹%fm.
",hn);
}
// 给出10个儿童的体重,要求计算平均体重并打印出低
于平均体重的数值。
#include
void main()
{
float a[10],p,sum=0;
int i;
printf("请输入10个人的体重:
");
for(i=0;i<10;i++)
{
scanf("%f",&a[i]);
sum+=a[i];
}
p=sum/10.0;
printf("10个人的平均体重是%3.2f:",p);
printf("低于平均体重的是:
");
for(i=0;i<10;i++)
{
if(a[i]<p)
{
printf("%3.2f
",a[i]);
}
}

}
第一个有点复杂~~~加点分嘛~~~
//主函数实现从键盘输入5个学生的5门功课的成绩,sum函数实现统计出每个学生的5门功课的总成绩,sort函数实现根据5个学生的总成绩用冒泡法进行排序,再逆序存放并输出。

#include

#define N 5

void main(void)
{
int sum(int (*a)[N]);
void sort(int *y);

int a[N][N],he[N]={0};
int i,j,*p;

for(i=0;i<N;i++)
{
printf("Input the %dth student's scores:",i+1);
for(j=0;j<N;j++)
{
scanf("%d",&a[i][j]);
}

}

for(i=0;i<N;i++)
{
he[i]=sum(&a[i]);
}

printf("
");
for(i=0;i<N;i++)
{
printf("%d ",he[i]);
}
p=he;
sort(p);
}


int sum(int (*a)[N])
{
int tmpsum=0;
int i;

for(i=0;i<N;i++)
{
tmpsum+=*(*a+i);
}
return tmpsum;
}

void sort(int y[N])
{
int j,i,tmp;
for(j=0;j<N-1;j++)
{
for(i=j+1;i<N;i++)
{
if(y[j]>y[i])
{
tmp=y[j];
y[j]=y[i];
y[i]=tmp;
}
}
}
for(j=0;j<N;j++)
{
printf(" %d",y[j]);
}
printf("

");
for(j=0;j<N/2;j++)
{
tmp=y[j];
y[j]=y[N-j-1];
y[N-j-1]=tmp;
}
for(j=0;j<N;j++)
{
printf(" %d",y[j]);
}
}




第一题就有点难度哦;
b= a<<(n%(sizeof(int)*8));
c= a>>((sizeof(int)*8)-(n%(sizeof(int)*8)));
第二题也有难度,哈哈(这是什么题啊,有点难度哦!)
char *DectoBin(int DEC)
{
int i,dec,index=0;
static char c,binary[100];
dec=abs(DEC);
while(dec!=0)
{
binary[index++]=(dec&1)+0x30;dec/=2;
}
if (DEC<0)
binary[index++]='-';
binary[index--]='\0';
for(i=index;i>index/2;i--)
{
c= binary[index-i];
binary[index-i]=binary[i];
binary[i]=c;
}
return(binary);
}

3题:
FLP
4题:
how
5题:
789

1、求1-3+5-7+……-99+101的值。
#include <stdio.h>
void main()
{
int i,element,sum=0;
for(i=1;i<=101;i+=2)
{
element=-i;sum=sum+element;sum=-sum;
}
printf("%d\n",sum);
}

2、编写程序,判断一个数是否是素数。
6n+1,6n-1法代码
#include<stdio.h>
int main()
{
int data[5]={2,3,5,7};
int n;
scanf("%d",&n);
if(n==2||n==3||n==5||n==7)
{
printf("%d是素数\n",n);
}
else
{
if((n+1)%6==0||(n-1)%6==0)//n等于6k+1或6k-1
{
if(n%5&&n%7)
{
printf("%d是素数\n",n);
}
}
else printf("%d不是素数\n",n);
}
return 0;
}
3、输入三个整数,求其中的最大值并输出。
#include<stdio.h>
void main()
{
int a,b,c;
printf("输入三个数:");
scanf("%d%d%d",&a,&b,&c);
if(a>b&&a>c)
printf("最大值为:%d",a);
else if(b>a&&b>c)
printf("最大值为:%d",b);
else
printf("最大值为:%d",c);


第一个:.include<stdio.h>
main()
{
int m=0,n=0,s;
for (int i=1;i<=101;i+=4)
{
m+=i;
}
for (int j=-3;j>=-99;j+=-4)
{
n+=j;
}
s=m+n;
printf("%d",s);
}
第三个.include<stdio.h>
main()
{
int max,a,b,c;
scanf("%d %d %d",&a,&b,&c);
max=a;
if(max<b){
max=b;
}
if(max<c)
{
max=c;
}
printf("%d",max);
}

#include<stdio.h>
#include<conio.h>

void main(void)
{
int i, flag = 1, sum = 0;

for(i = 1; i <= 101; i += 2)
if(flag)
{
sum += i;
flag = 0;
}
else
{
sum -= i;
flag = 1;
}
printf("%d", sum);

getch();
}

#include<stdio.h>
#include<conio.h>

void main(void)
{
int num, i;

printf("请输入一个数:");
scanf("%d", &num);

for(i = 2; i < num; i++)
if(num%i == 0)
break;
if(i == num)
printf("%d是素数\n", num);
else
printf("%d不是素数\n", num);
getch();
}

#include<stdio.h>
#include<conio.h>

void main(void)
{
int a, b, c;

printf("请输入三个数:");
scanf("%d%d%d", &a, &b, &c);

printf("最大数:%d\n", a > b ? (a > c ? a : c) : (b > c) ? b : c);
getch();
}

#include<stdio.h>
#include<conio.h>

void main(void)
{
int a[10] = {1, 2, 23, 34, -1232, 344, 3874, 34, 3487, 34};
int i, index;

index = 0;
for(i = 1; i < sizeof(a)/sizeof(a[0]); i++)
if(a[i] < a[index])
index = i;
printf("下标为:%d, 值为%d\n", index, a[index]);
getch();
}

几道简单的C语言编程题,请高手帮忙
int a,b,c;printf("输入三个数:");scanf("%d%d%d",&a,&b,&c);if(a>b&&a>c)printf("最大值为:%d",a);else if(b>a&&b>c)printf("最大值为:%d",b);else printf("最大值为:%d",c);}

c语言编程题,请高手帮忙做一下,拜谢,急急急急……
1.include <stdio.h> double funcPi(int);int main(void){ int arg;printf("Input the argument: ");\/\/ \/\/ 无异常输入 \/\/ while (!scanf("%d", &arg)){ printf("Check your input and retry: ");while (getchar()!='\\n'){ continue;} } while (getchar()!='\\n'){ continue...

请高手用C语言帮忙做个编程的题目,谢谢了!
include <stdio.h> int IsDevided(int number,int dev){ if(number %dev == 0){ return 1;} return 0;} void EasyDone(int a){ int chose;int i,j;printf("Input your chose\\n1>能被3整除的"<Enter 1>","\\n2>能被5整除的<Enter 2>","\\n3>能被3或5整除的<Enter 3>\\n");s...

C语言菜鸟请教一个简单的编程题
include<stdio.h> void main(){ int max(int x,int y,int z);int a,b,c;printf("please input 3 numbers:\/n");\/\/这里换行是'\\n'不是'\/n'scanf("%d %d %d",&a,&b,&c);c=max(a,b,c);printf("the max num is:%d",c);} max(int x,int y,int z)\/\/这里虽然函数默认...

一道C语言编程问题,高手们来看看帮忙解答下
先推算公式,C^2*(A^2+B^2),= (A^2*B^2),程序就是找寻能让公式左右相等的ABC的值,且0<c<b<a<100.include <stdio.h> int main(){ int a;\/\/定义循环变量。int b;int c;int sum;\/\/ABC之和。for (a = 100;a > 0;a--)\/\/以A为循环变量,在1到100之间。{ for (b = ...

请各位高手帮忙做几道c语言的编程题
int a,b,c,d;\/\/ int m,n;for(i = 1000; i < 10000; i++){ a = i\/1000;b = i%1000\/100;c = i%100\/10;d = i%10;m = a*10+b;n = c*10+d;if((m+n)*(m+n) == i)printf("%d ",i);} } (4)include <stdio.h> void main(){ int a[10]={0,1,2,3,4...

C语言编程求助!!!求高手帮忙!感激不尽!
int main(){ int i,s = 0; \/*请修改此处:int和i间有空格; 计算的和值s首先要清零 *\/ char str[80];i=0;while ((str[i]=getchar())!='\\n')i++;str[i]='\\0';for(i=0;i<80;i++)if (str[i]>='0' && str[i]<='9') \/*请修改此处:应该是同时满足这两个...

第三个高分!C语言程序题[3],比较简单,但是思路不清晰,高手帮忙
char name[N][13];(2) 用选择排序方法,对N个字符串,用比较函数strcmp( ) 排序 (3) 输出结果 选择排序思想 (1) 第一趟,从N个记录中选择关键字值最小的记录作为第一个记录;k=0;for(j=0+1;j if(k != 0){t=a[k]; a[k]=a[i];a[i]=t;} \/*k号单元与0号单元交换*\/ (2)...

某道简单的C语言题目
这个程序有以下几个问题:1、可以改进的地方。for(i=100;i<=999;i++)实际循环的时候,i 最大的可能应该是:987\/3 =329。如果i 大于329肯定重复,而且当i 大于333时,z将超过1000,i 大于500时,y和z都将超出1000。这将导致数组a[]获得的y和z的百位数字为两位数。所以实际使用的时候可以写成...

C语言高手帮忙解决,急~~~(编程),要全部过程喔,题目如补充所示
include <string.h> int main(){ int i,j,D=0,d=0,s=0,q=0;char a;while(scanf("%c",&a) && a!='!'){ if(a>='A' && a<='Z') ++D;else if(a>='a' && a<='z') ++d;else if(a>='0' && a<='9') ++s;else ++q;} printf("大写字母:%d\\n小写字母:%d...