HDU1090 1091 1092 个人对题目解读

来源:互联网 发布:淘宝信用支付怎么开通 编辑:程序博客网 时间:2024/05/20 07:51

先说一下1090,我一般都是想着先输入一个n来规定几个要处理的测试数据组
然后我发现一个比我想法要好用的就是while(n–)
能直接处理完n组后停止

#include<stdio.h>int main(){    int a,b,n;    scanf("%d",&n);    while(n--)    {        scanf("%d%d",&a,&b);        printf("%d\n",a+b);    }}

1091我觉得这题略坑,给个0 0后面没数据,还以为是0 0终止处理,结果只是不处理

1092这题一看题目首先就想到了数组,也就直接写了

#include<stdio.h>int main(){  int a[100000];  int n,b,i,sum;  while(scanf("%d",&n)!=EOF&&n!=0)  {      for(i=0;i<n;i++)      {scanf("%d",&b);      a[i]=b;}   for(i=0;i<n;i++)      sum=sum+a[i];   printf("%d\n",sum);  }  return 0;}

这是我一开始直接写的,然后一直输出一个奇怪的东西,总有一个4000280
想了一下也不知道哪里错,然后怀疑是sum没重复定义为0,就加了一个sum=0

#include<stdio.h>int main(){  int a[100000];  int n,b,i,sum;  while(scanf("%d",&n)!=EOF&&n!=0)  {  sum=0;    for(i=0;i<n;i++)      {scanf("%d",&b);      a[i]=b;}   for(i=0;i<n;i++)      sum=sum+a[i];   printf("%d\n",sum);  }  return 0;}

这样子就顺利解决了

原创粉丝点击