```cpp
#include <iostream>
using namespace std
// 求 1~n 的和
int sum(int n) {
int res = 0
for (int i = 1i <= ni++) {
res += i
}
return res
}
int main() {
int n
cout <<"请输入一个正整数n:"
cin >>n
int s = sum(n) // 调用 sum 函数求 1~n 的和
cout <<"1~" <<n <<" 的和为:" <<s <<endl
return 0
}
```
在上述代码中,我们定义了一个 `sum()` 函数,该函数接受一个整数作为参数 `n`,并返回 1~n 的和。在函数内部,我们使用一个循环从 1 到 n 枚举所有可能的整数,并将它们累加到变量 `res` 中。最后,我们将结果 `res` 返回。
在 `main()` 函数中,我们首先使用 `cin` 对象从控制台读入一个正整数 `n`,然后调晌枯用 `sum()` 函数计算 1~n 的和,并将其搭告保存到变量 `s` 中。最后,我们使用 `cout` 对象输出结果到控制台中。
需要注意的是,在实际应用中,还需要考虑数据范围、边界条件、错误处理等问题,以确保程序的健壮性和正确性。
编写一个程序实现从键盘上任意输入50个正整数,找出其中的素数,并将其按升序(降序)排列/*(1)编写一个程序实现从键盘上任意输入50个正整数,找出其中的素数,并将其按升序排列。*/
#include "stdio.h"
#include "math.h"
#define N 50 //可改输入的戚渗个数
int prime(int m) //判断素数
{
int i,k
k=sqrt(m)
for ( i = 2i<=ki++)
if(m%i ==0)
return 0
return 1
}
int main()
{
int i,j,m,k,n,w=0,t,a[N],b[N]
for(i=0i<Ni++)
{
scanf("%d",&a[i])
m=a[i]
if (prime(m))//判断素数
{
b[w]=m//b[]是选出来的素数
w++//b[]下标
}
}
//升序激野 选择法高铅脊排序
for ( i = wi <=w-2i++)
{
k=i
for ( j = i+1j<=w-1j++)
{
if (b[j]<b[k])
{
k=j
t=b[k]
b[k]=b[i]
b[i]=t
}
}
}
/*
for ( i = 0i <=w-2i++)
{
k=i
for ( j = i+1j<=w-1j++)
{
if (b[j]>b[k])
{
k=j
t=b[k]
b[k]=b[i]
b[i]=t
}
}
} */ //降序
for (i = 0i<wi++)
{
printf("%d ",b[i])
}
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)