在这个小程序中的错误看不懂了!!!#include<stdio.h>
#include<stdlib.h>#define MAX 100;struct addr{
char name[30];
char street[40];
char city[20];
char state[3];
unsigned long int zip;
}addr_list[MAX];void init_list(void),enter(void);
void delete(void),list(void);
int menu_select(void),find_free(void);int main(void)
{
char choice; init_list();
for(;;){
choice=menu_select();
switch(choice){
case 1: enter();
break;
case 2: delete();
break;
case 3: list();
break;
case 4: exit(0);
}
}
return 0;
}void init_list(void)
{
register int t;
for(t=0; t<MAX; ++t)
addr_list[t].name[0]='\0';
}int menu_select(void)
{
char s[80];
int c;
printf("1,enter a name \n");
printf("2.delete a name \n");
printf("3.list the file\n");
printf("4.quit\n");
do{
printf("\n enter your choice:");
gets(s);
c=atoi(s);
}while(c<0||c>4);
return c;
}
void enter(void)
{
int slot;
char s[80];
slot=find_free();
if(slot==-1){
printf("\nlist full");
return ;
}
printf("enter name :");
gets(addr_list[slot].name); printf("enter street:");
gets(addr_list[slot].city); printf("enter state:");
gets(addr_list[slot].state);
printf("enter zip");
gets(s);
addr_list[slot].zip=strtoul(s,'\0',10);
}int find_free(void)
{
register int t;
for( t=0; addr_list[t].name[0]&&t<MAX; ++t) ;
if( t==MAX ) return -1;
return t;
}void delete(void)
{
register int slot;
char s[80];
printf("enter record#:");
gets(s);
slot=atoi(s);
if(slot>=0 && slot< MAX)
addr_list[slot].name[0]='\0';
}
void list(void)
{
register int t;
for (t=0;t<MAX;++t){
printf("%s\n",addr_list[t].name);
printf("%s\n",addr_list[t].street);
printf("%s\n",addr_list[t].city);
printf("%s\n",addr_list[t].state);
printf("%lu\n",addr_list[t].zip);
}
}
printf("\n");
}
#include<stdlib.h>#define MAX 100;struct addr{
char name[30];
char street[40];
char city[20];
char state[3];
unsigned long int zip;
}addr_list[MAX];void init_list(void),enter(void);
void delete(void),list(void);
int menu_select(void),find_free(void);int main(void)
{
char choice; init_list();
for(;;){
choice=menu_select();
switch(choice){
case 1: enter();
break;
case 2: delete();
break;
case 3: list();
break;
case 4: exit(0);
}
}
return 0;
}void init_list(void)
{
register int t;
for(t=0; t<MAX; ++t)
addr_list[t].name[0]='\0';
}int menu_select(void)
{
char s[80];
int c;
printf("1,enter a name \n");
printf("2.delete a name \n");
printf("3.list the file\n");
printf("4.quit\n");
do{
printf("\n enter your choice:");
gets(s);
c=atoi(s);
}while(c<0||c>4);
return c;
}
void enter(void)
{
int slot;
char s[80];
slot=find_free();
if(slot==-1){
printf("\nlist full");
return ;
}
printf("enter name :");
gets(addr_list[slot].name); printf("enter street:");
gets(addr_list[slot].city); printf("enter state:");
gets(addr_list[slot].state);
printf("enter zip");
gets(s);
addr_list[slot].zip=strtoul(s,'\0',10);
}int find_free(void)
{
register int t;
for( t=0; addr_list[t].name[0]&&t<MAX; ++t) ;
if( t==MAX ) return -1;
return t;
}void delete(void)
{
register int slot;
char s[80];
printf("enter record#:");
gets(s);
slot=atoi(s);
if(slot>=0 && slot< MAX)
addr_list[slot].name[0]='\0';
}
void list(void)
{
register int t;
for (t=0;t<MAX;++t){
printf("%s\n",addr_list[t].name);
printf("%s\n",addr_list[t].street);
printf("%s\n",addr_list[t].city);
printf("%s\n",addr_list[t].state);
printf("%lu\n",addr_list[t].zip);
}
}
printf("\n");
}
解决方案 »
- 句柄泄漏,GDI泄漏,内存泄漏
- 请问各位有谁知道多分辨率金字塔算法么?
- 在线等~~~vc api中,在对话框中加入进度条控件,对话框无法弹出~~~
- hook CreateFile问题
- 图像处理中关于WIDTHBYTES
- 新手高分急求:怎样才能访问CBitMap对象的位图数据和怎样更改CBitMap对象的颜色?
- 变量关联
- 如何在VC6.0程序加入.CHM帮助文件
- 把CToolBar上的button的style改为TBBS_CHECKBOX后,如何知道button的状态?
- tron的问题问问高手们!
- HTML文件用fopen打开是什么格式的,和文本文件一样吗?
- CAsyncSocket的小问题!!
#include<stdio.h>
#include<stdlib.h>#define MAX 100struct addr{
char name[30];
char street[40];
char city[20];
char state[3];
unsigned long int zip;
};
addr addr_list[MAX];void init_list(void),enter(void);
void delete1(void),list(void);
int menu_select(void),find_free(void);int main(void)
{
char choice; init_list();
for(;;){
choice=menu_select();
switch(choice){
case 1: enter();
break;
case 2: delete1();
break;
case 3: list();
break;
case 4: exit(0);
}
}
return 0;
}void init_list(void)
{
register int t;
for(t=0; t<MAX; ++t)
addr_list[t].name[0]='\0';
}int menu_select(void)
{
char s[80];
int c;
printf("1,enter a name \n");
printf("2.delete a name \n");
printf("3.list the file\n");
printf("4.quit\n");
do{
printf("\n enter your choice:");
gets(s);
c=atoi(s);
}while(c<0||c>4);
return c;
}
void enter(void)
{
int slot;
char s[80];
slot=find_free();
if(slot==-1){
printf("\nlist full");
return ;
}
printf("enter name :");
gets(addr_list[slot].name); printf("enter street:");
gets(addr_list[slot].city); printf("enter state:");
gets(addr_list[slot].state);
printf("enter zip");
gets(s);
addr_list[slot].zip=strtoul(s,'\0',10);
}int find_free(void)
{
register int t;
for( t=0; addr_list[t].name[0]&&t<MAX; ++t) ;
if( t==MAX ) return -1;
return t;
}void delete1(void)
{
register int slot;
char s[80];
printf("enter record#:");
gets(s);
slot=atoi(s);
if(slot>=0 && slot< MAX)
addr_list[slot].name[0]='\0';
}
void list(void)
{
register int t;
for (t=0;t<MAX;++t){
printf("%s\n",addr_list[t].name);
printf("%s\n",addr_list[t].street);
printf("%s\n",addr_list[t].city);
printf("%s\n",addr_list[t].state);
printf("%lu\n",addr_list[t].zip);
}
printf("\n");
}
逻辑错误没有检查
真不好意思这是系统的信息
--------------------Configuration: 7_2 - Win32 Debug--------------------
Compiling...
7_2.c
E:\源程序\jiegou\7_2.c(12) : error C2143: syntax error : missing ']' before ';'
E:\源程序\jiegou\7_2.c(12) : error C2059: syntax error : ']'
E:\源程序\jiegou\7_2.c(41) : error C2143: syntax error : missing ')' before ';'
E:\源程序\jiegou\7_2.c(41) : error C2059: syntax error : ')'
E:\源程序\jiegou\7_2.c(42) : error C2146: syntax error : missing ';' before identifier 'addr_list'
E:\源程序\jiegou\7_2.c(88) : error C2143: syntax error : missing ')' before ';'
E:\源程序\jiegou\7_2.c(88) : error C2059: syntax error : ')'
E:\源程序\jiegou\7_2.c(89) : error C2143: syntax error : missing ')' before ';'
E:\源程序\jiegou\7_2.c(89) : error C2059: syntax error : ')'
E:\源程序\jiegou\7_2.c(100) : error C2143: syntax error : missing ')' before ';'
E:\源程序\jiegou\7_2.c(100) : error C2059: syntax error : ')'
E:\源程序\jiegou\7_2.c(108) : error C2143: syntax error : missing ')' before ';'
E:\源程序\jiegou\7_2.c(108) : error C2059: syntax error : ')'
E:\源程序\jiegou\7_2.c(108) : error C2143: syntax error : missing ';' before '{'
E:\源程序\jiegou\7_2.c(116) : error C2143: syntax error : missing ')' before 'string'
E:\源程序\jiegou\7_2.c(116) : error C2143: syntax error : missing '{' before 'string'
E:\源程序\jiegou\7_2.c(116) : error C2059: syntax error : '<Unknown>'
E:\源程序\jiegou\7_2.c(116) : error C2059: syntax error : ')'
E:\源程序\jiegou\7_2.c(117) : error C2059: syntax error : '}'
Error executing cl.exe.7_2.obj - 19 error(s), 0 warning(s)
改为 struct addr addr_list[MAX];
或者在定义addr时使用typedef