C语言 输入多组数求和加组怎么写数
答案:2 悬赏:70 手机版
解决时间 2021-02-20 06:56
- 提问者网友:聂風
- 2021-02-19 22:55
C语言 输入多组数求和加组怎么写数
最佳答案
- 五星知识达人网友:長槍戰八方
- 2021-02-19 23:01
代码如下,望采纳!
第一题:输入N的!
#include
#include
int main(void)
{
int N = 0;
int i = 0;
int a = 0, b = 0;//每行的两个数
int *arr;//存放每行的和
scanf("%d", &N);
arr = (int *)malloc(sizeof(int) * N);
for(i = 0; i < N; i++)
{
scanf("%d%d", &a, &b);
arr[i] = a + b;
}
for(i = 0; i < N; i++)
{
printf("%d
", arr[i]);
}
return 0;
}
第2题:输入0 0结束的!
#include
#include
#define N 10000
int main(void)
{
int i = 0;
int cnt = 0;
int a = 0, b = 0;//每行的两个数
int *arr;//存放每行的和
arr = (int *)malloc(sizeof(int) * N);
for(cnt = 0; cnt < N; cnt++)
{
scanf("%d%d", &a, &b);
if(a == 0 && b == 0) break;
arr[cnt] = a + b;
}
for(i = 0; i < cnt; i++)
{
printf("%d
", arr[i]);
}
return 0;
}
第一题:输入N的!
#include
#include
int main(void)
{
int N = 0;
int i = 0;
int a = 0, b = 0;//每行的两个数
int *arr;//存放每行的和
scanf("%d", &N);
arr = (int *)malloc(sizeof(int) * N);
for(i = 0; i < N; i++)
{
scanf("%d%d", &a, &b);
arr[i] = a + b;
}
for(i = 0; i < N; i++)
{
printf("%d
", arr[i]);
}
return 0;
}
第2题:输入0 0结束的!
#include
#include
#define N 10000
int main(void)
{
int i = 0;
int cnt = 0;
int a = 0, b = 0;//每行的两个数
int *arr;//存放每行的和
arr = (int *)malloc(sizeof(int) * N);
for(cnt = 0; cnt < N; cnt++)
{
scanf("%d%d", &a, &b);
if(a == 0 && b == 0) break;
arr[cnt] = a + b;
}
for(i = 0; i < cnt; i++)
{
printf("%d
", arr[i]);
}
return 0;
}
全部回答
- 1楼网友:玩家
- 2021-02-19 23:57
关键是判断第一行数据个数。
用 gets(str); 读入1行,用 n = sscanf(str,"%d %d",&a,&b); 获得1行数据 是1是2
然后分别对待2种情况。
#include
#include
main(){
static int a,b,n,i;
char str[80];
gets(str);
n = sscanf(str,"%d %d",&a,&b);
if (n==2) {
printf("%d\n",a+b);
while(1){
scanf("%d %d",&a,&b);
if ((a==0) && (b==0)) return 0;
printf("%d\n",a+b);
};
}
n = a;
for (i=0;i scanf("%d %d",&a,&b);
printf("%d\n",a+b);
}
return 0;
}
用 gets(str); 读入1行,用 n = sscanf(str,"%d %d",&a,&b); 获得1行数据 是1是2
然后分别对待2种情况。
#include
#include
main(){
static int a,b,n,i;
char str[80];
gets(str);
n = sscanf(str,"%d %d",&a,&b);
if (n==2) {
printf("%d\n",a+b);
while(1){
scanf("%d %d",&a,&b);
if ((a==0) && (b==0)) return 0;
printf("%d\n",a+b);
};
}
n = a;
for (i=0;i
printf("%d\n",a+b);
}
return 0;
}
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯