标题:结构体成员有字符串,为什么这样输入不行?
取消只看楼主
青蝶
Rank: 2
等 级:论坛游民
帖 子:160
专家分:51
注 册:2018-2-4
结帖率:92%
已结贴  问题点数:20 回复次数:1 
结构体成员有字符串,为什么这样输入不行?
定义了一个结构体数组,每个元素有一个成员是字符数组,想问一下为什么按下面的输入方式第一个元素的字符数组没有输进去?

代码:
#include<iostream>
#include<cstdio>
#include<cstdlib>
#include<cstring>
#include<algorithm>
#include<cmath>
#include<ctime>
using namespace std;

struct str{
    int number;
    char sum[110];
}a[25];

int main(void){
    int n,m,i,j;
    char temp[110];
    scanf("%d",&n);
    for(i=1;i<=n;i++){
        a[i].number=i;
        scanf("%c",&temp[0]);
        j=0;
        while(temp[j]!='\n'){
            j++;
            scanf("%c",&temp[j]);
        }
        temp[j]='\0';
        strcpy(a[i].sum,temp);
    }
    for(i=1;i<=n;i++){
        printf("a[%d].number=%d,a[%d].sum=%s\n",i,a[i].number,i,a[i].sum);
    }
    return 0;
}

如果输入:
5
98765
12365
87954
1022356
输出结果是这样的:
a[1].number=1,a[1].sum=
a[2].number=2,a[2].sum=98765
a[3].number=3,a[3].sum=12365
a[4].number=4,a[4].sum=87954
a[5].number=5,a[5].sum=1022356

求大佬解答,谢谢。

        
        
搜索更多相关主题的帖子: 输入 include number sum temp 
2018-07-19 00:52
青蝶
Rank: 2
等 级:论坛游民
帖 子:160
专家分:51
注 册:2018-2-4
得分:0 
明白了,谢谢大佬~
2018-07-19 15:28



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-488680-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.760581 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved