A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 小龙女的萝卜 中级黑马   /  2015-6-20 14:00  /  746 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

  题目:提示用户输入一个正整数n,利用while循环计算并输出:1-2+3-4+5-6+7…+n的和

#include <stdio.h>

int main(int argc, const char * argv[])
{
    printf("请输入一个正数:\n"); // 提示输入
   
    int n =0; // 定义变量
   
    while(n <=0)
    {
        scanf("%d", &n);
        if(n <= 0)
        {
            printf("重新输入:\n");
        }
    }
    int sum = 0;
    int i = 1;
   
    while(i <= n )
    {   
        int a = -1;

        if(i%2 == 1)  sum = sum + i; // 奇数直接相加
        
        if(i%2 == 0) i = i * a, sum = sum + i;  // 偶数,乘以-1,再相加
        
        i++;  
    }
    printf("%d",sum);
    return 0;
}

1 个回复

倒序浏览
#include <stdio.h>

int main()
{
    printf("请输入一个正整数:\n");
    int n = 0;
    scanf("%d", &n);
   
    while (n <= 0)
    {
        printf("请输入一个正确的数据:\n");
        scanf("%d", &n);
    }
   
    int i = 1;
    int count = 0;
    while (i <= n)
    {
        if (i % 2 == 0) count -= i;
        else count += i;
        i++;
    }
    printf("和为%d", count);
    return 0;
}
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马