logo - 刷刷题
下载APP
【简答题】

已知C源程序如下:
/*A mailing list example using an array of structures. */
# include<stdion.h>
# include<stdlib.h>
define MAX 4
struct addr{
char name[30];
char street[40];
char city[20];
unsigned long int zip;
}addr_list[MAX];
void init_list(void),enter(void);
void deleteAddr(void),list(void);
int menu_select(void),find_free(void);
int main(void)
{
char choice;
init_list();/*initialize the structure array*/
for(;;){
choice=menu_select();
switch(choice){
case 1:enter();
break;
case 2:deleteAddr();
break;
case 3:list();
break;
case 4:exit(0);
}
}
return 0;
}
/*Initialize the list.*/
void initlist(void)
{
register int t;
for(t=0;t<MAX; ++t)addr_list[t], name[0]=\0;
}
/*Get a menu selection. */
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\")
do{
printf("\nEnter your choice:");
gets(s);
c= atoi(s);
}while(c<1 || c>4);
return c;
}
/*Input addresses into the list. */
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].street);
printf("Enter city:");
gets(addr list[slot].city);
printf("Enter zip:");
gets(s);
addr_list[slot].zip=strtoul(s,\0,10);
}
/*Find an unused structure. */
int find_free(void)
{
register int t;
for(t=0; addr_list[t]. name[0]&&t<MAX; ++t);
if(t==MAX)return-1; /*no slots free*/
return t;
}
/*Delete an address. */
void deleteAddr(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;
}
/*Display the list on the screen. */
void list(void)
{
register int t;
for(t=0; t<MAX; ++t){
if(addr_list[t]. name[0]){
printf("%s\n", addr_list[t]. name);
printf("%s\n", addr_list[t]. street);
printf("%s\n",addr_list[t]. city);
printf("%lu\n\n", addr_list[t]. zip);
}
}
printf("\n\n");
}
设计一组测试用例,使该程序所有函数的语句覆盖率尽量达到100%。如果认为该程序的语句覆盖率无法达到100%,需说明原因。

举报
参考答案:
参考解析:
.
刷刷题刷刷变学霸
举一反三

【单选题】计算机的编译系统主要是将源程序翻译成().

A.
机器语言系统
B.
系统程序
C.
目标程序
D.
数据库系统

【单选题】为将数组myArray的长度由6改为10,现采取以下编码:int[]myArray=newint[6];myArray=newint[10];(覆盖)代码执行后,以下叙述哪项是正确的?()

A.
数组myArray的长度已由6改为10,其中前6个元素的值不变,后四个元素的值为空。
B.
数组myArray的长度已由6改为10,其中前6个元素的值不变,后四个元素需再经过初始化后才能使用。
C.
数组myArray的长度已由6改为10,原来6个元素的值全部丢失。
D.
数组myArray的长度没有变化。

【单选题】宫颈内口部分被胎盘组织覆盖时为

A.
正常位置胎盘
B.
完全性前置胎盘
C.
部分性前置胎盘
D.
边缘性前置胎盘
E.
以上均不对