C语言结构体数组输出第一行乱码
查看原帖
C语言结构体数组输出第一行乱码
1318590
GS1157楼主2024/3/24 00:42
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <math.h>
#include <string.h>

typedef struct STU{
    char name[10];
    int Age;
    int SCA;
}ST,*P_ST;

int main( void ){

    int N;
    scanf("%d", &N);     //学员个数;
    ST Arr[1000];       //结构体数组;
    
    for( int i = 0;i < N;i++ ){

        ST new;             //新结构体
        Arr[i] = new;       //存储到结构体数组
        scanf( "%s%d%d", new.name,&new.Age,&new.SCA );      //输入信息;
        //printf( "------------------------------------------------------%s %d %d\n", Arr[0].name,Arr[0].Age + 1,Arr[0].SCA );

    }

    //显示函数
    for( int i = 0;i < N;i++){              //从0开始打印到N;
        int tmp = Arr[i].SCA * 1.2;         //计算tmp
        Arr[i].SCA = tmp;                   //SCA重新赋值
        if( tmp > 600 ){                    //上限600
            Arr[i].SCA = 600;
        }
        printf( "%s %d %d\n", Arr[i].name,Arr[i].Age + 1,Arr[i].SCA );      //打印从0-N;
    }
    return 0;
}


//显示函数
// void Dis_play( int N,P_ST Arr ){
//     for( int i = 0;i < N;i++){
//         int tmp = Arr[i].SCA * 1.2;
//         Arr[i].SCA = tmp;
//         if( tmp > 600 ){
//             Arr[i].SCA = 600;
//         }
//         printf( "%s %d %d\n", Arr[i].name,Arr[i].Age + 1,Arr[i].SCA );
//     }
//     return;
// }





在Vscode上的测试

3				//输入3
kkksc03 24 0    
chen_zhe 14 400 
nzhtl1477 18 590
 1 0			//第一个结构体乱码
kkksc03 25 0   	//第二个到最后没有问题
chen_zhe 15 480
2024/3/24 00:42
加载中...