腾讯技术类校园招聘笔试试题及答案(5)
三. 附加题(每题30分,2题,共60分)
1. 从程序健壮性进行分析,下面的FillUserInfo函数和Main函数分别存在什么问题?
#include
#include
#define MAX_NAME_LEN 20
struct USERINFO
{
int nAge;
char szName[MAX_NAME_LEN];
};
void FillUserInfo(USERINFO* parUserInfo)
{
stu::cout<<"请输入用户的个数:";
int nCount=0;
std::cin>>nCount;//未判断输入是否合法
for(int i=0;i
{
std::cout<<"请输入年龄:";
std::cin>>parUserInfo[i]->nAge;//未判断输入是否合法
std::string strName;
std::cout<<"请输入姓名:";
std::cin>>strName; //未判断输入是否合法
strcpy(parUserInfo[i].szName,strName.c_str());
}
}
int main(int argc,char* argv[])
{
USERINFO arUserInfos[100]={0};//
FillUserInfo(arUserInfos);
printf("The first name is:");
printf(arUserInfos[0].szName);
printf("\n");
return 0;
}