ZyWoooO 发表于 2020-12-19 02:44:10

一个作业

要求是:写一个程序,对用户输入的整数进行求和。当用户输入任意字符时,结束程序并打印结果。但是我一打字符根本停不下来。
#include<stdio.h>

int main()
{
        int count,target=0,sum=0;

       
        for(count=0;count==0;count=count+0)
        {
                printf("请输入合法的数字:\n");
                scanf("%d",&target);
               
                if(target<'65',target>'122')
                {
                        count++;
                }
                else
                {
                        sum=target+sum;
                        printf("它们的和为:%d\n",sum);
                }
        }
       
        return 0;
}

砚堂_ 发表于 2020-12-19 04:04:50

是限定了一次只能读取一个数字或字符吗?

Sebass 发表于 2020-12-19 06:48:10

Sample input 和 Sample output 给一下啊,
你的代码 for(count=0;count==0;count=count+0) 这一行有错啊,无限循环的。
for(int i = 0; i< 你想运行多少次; i++){
   //Bolabola
}

782353676 发表于 2020-12-19 10:44:57

你这个要求有问题呀,输入任意字符结束程序。那么怎么输入数值让程序求和。。。。。。

ZyWoooO 发表于 2020-12-22 12:22:40

782353676 发表于 2020-12-19 10:44
你这个要求有问题呀,输入任意字符结束程序。那么怎么输入数值让程序求和。。。。。。

#include <stdio.h>

int main()
{
      int num = 0;
      long sum = 0L; // 0L表示类型为long的0
      int status;

      do
      {
                printf("请输入合法的数字:");
                sum = sum + num;
                status = scanf("%d", &num);
      } while(status == 1);

      printf("结果是:%ld\n", sum);

      return 0;
}//答案是这个,但我写的可以相加 但输入字符不能结束

ZyWoooO 发表于 2020-12-22 12:23:42

Sebass 发表于 2020-12-19 06:48
Sample input 和 Sample output 给一下啊,
你的代码 for(count=0;count==0;count=count+0) 这一行有错啊 ...

但是如果在输入字符之前就是可以无限输入数字

ZyWoooO 发表于 2020-12-22 12:24:14

Sebass 发表于 2020-12-19 06:48
Sample input 和 Sample output 给一下啊,
你的代码 for(count=0;count==0;count=count+0) 这一行有错啊 ...

#include <stdio.h>

int main()
{
      int num = 0;
      long sum = 0L; // 0L表示类型为long的0
      int status;

      do
      {
                printf("请输入合法的数字:");
                sum = sum + num;
                status = scanf("%d", &num);
      } while(status == 1);

      printf("结果是:%ld\n", sum);

      return 0;
}//答案
页: [1]
查看完整版本: 一个作业