- 论坛徽章:
- 0
|
程序如下:
#include <stdio.h>
struct entry{
char fname[20];
char lname[20];
char phone[10];};
struct entry list[4];
int i;
int main(void)
{
for(i=0; i<4; i++)
{
printf("\n Enter first name: ");
scanf("%s",&list[ i ].fname);
printf("\n Enter last name: ");
scanf("%s",&list[ i ].lname);
printf("\n Enter phone in 010-88888888 format: ");
scanf("%s",&list[ i ].phone);
}
printf("\n\n========================================================\n");
for(i=0; i<4; i++)
{
printf("NAME: %s %s", list[ i ].lname, list[ i ].fname);
printf("\t\tPHONE: %s \n",list[ i ].phone);
}
return 0;
}
打印结果如下:
========================================================
NAME: liu shao PHONE: 010-634343fang
NAME: lv fang PHONE: 024-21322
NAME: lin ying PHONE: 0736-23232ruihua
NAME: zhang ruihua PHONE: 0416-23232
用gdb, 一步一步的跟踪程序,没有发现list.phone 变量有异常啊,怎么打印时把下一数组的名字加到PHONE里打印出来了呢?
[ 本帖最后由 gogaga 于 2007-7-23 16:20 编辑 ] |
|