yg飞许 发表于 2023-11-22 19:26:46

c++

求出某数到某数之间所有奇数之和
#include <iostream>
//continue;跳出一次小循环,后面继续执行
main() {
        int a,b,sum=0;
        printf("请输入数字多少到多少的单数和");
        scanf("%d",&a);
        scanf("%d",&b);
        while(a<=b){
                if()
                continue;
        }
                sum=sum + a;
                printf("sun=%d",sun);
                num++
}
后面的不太会写

isdkz 发表于 2023-11-22 19:26:54

#include <iostream>

int main() {
    int a, b, sum = 0;
    std::cout << "请输入数字多少到多少的单数和" << std::endl;
    std::cin >> a >> b;
    for (int i = a; i <= b; i++) {
      if (i % 2 != 0) {
            sum += i;
      }
    }
    std::cout << "sum=" << sum << std::endl;
    return 0;
}


这段代码有几个问题需要修复。首先,应该使用 std::cin 和 std::cout 来进行输入输出。其次,循环应该使用 for 循环而不是 while 循环。最后,应该在循环中判断当前数字是否为奇数(即取模2不等于0),如果是奇数则将其加到 sum 中。最后输出结果并返回0以表示程序执行成功。

tommyyu 发表于 2023-11-22 19:40:16

#include <iostream> //你引入 iostream 干什么???
#include <cstdio> // 用 printf 和 scanf 要引入 cstdio
//continue;跳出一次小循环,后面继续执行
int main() { // 是 int main()
    int a,b,sum=0;
    printf("请输入数字多少到多少的单数和:");
    //scanf("%d",&a);
    //scanf("%d",&b); 可以合并
        scanf("%d%d", &a, &b);
    while(a<=b) {
      if(a%2 == 0) {// 如果是偶数,就直接进行下一轮循环
              a++;
            continue;
            }
      sum=sum + a;
      a++; // 这里要增加的是 a,因为在第12行中sum增加的值也是 a,只有改变了 a 的值,sum 每次增加的量也才会改变。
    }
    printf("sum=%d",sum); //sum, 不是 sun,而且打印要放在最后面,等到循环结束、结果算出来了再打印
    return 0; // 要写 return 0; !!!
}

yg飞许 发表于 2023-11-23 23:05:42

是我写错了
页: [1]
查看完整版本: c++