针对一下C语言程序,请按要求回答问题。
已知weekday. c源程序如下:
include<stidio. h>
include<conio. h>
/ *主函数* /
Int main()
{
Char letter;
Printf("please input the first letter,"Y'to exit!\n");
While((letter=getch())!="Y")//当输入字母为Y时结束
{
Switch(letter)
{
Case'S':
Printf("%c\n",letter);
Printf("please input second letter\n");//输入第二个字母
If((letter=getch())=='a')
Printf("Saturday\n");
Else if(letter=='u')
Printf("Sunday\n");
Else printf('data error\n);
Break;
Case'F':
Printf("fridaykn");
Break;
Case 'M':
Printf("mondayha");
Break;
Case 'T':
Printf("%c\n",letter);
Printf("please input second letter\a");//输入第二个字母
If((letter=getch())=='u')
Printf("Tuesday\n"):
Else if(letter=='h')
Printf("Thursday\n");
Break;
Case 'W':
Printf("Wednesday\n");
}
}
Return 0;
}
(1) 画出主函数main的控制流程图;
(2) 设计一组测试用例,使main函数的语句覆盖率尽量达到100%;
(3) Main函数的语句覆盖率能否达到100%?如果认为无法达到,需说明原因。
(1)画出此输出端口与PC/XT系统总线以及与LED发光二极管的连接图。
(2)编写使8个LED发光二极管每间隔1秒交替亮灭的功能段程序(设假如有1秒延时子程序DELAY1S可调用)。
例如:a数组中的值为:
则返回主程序后s的值应为:3.375。
注意:部分源程序存在文件PROGl.C文件中。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
请编写函数fun(),该函数的功能是:计算并输出
S=1+(1+20.5)+(1+20.5+30.5)+…+(1+20.5+30.5+…+n0.5)
例如,若主函数从键盘给n输入20后,则输出为
s=534.188884。
注意;部分源程序给出如下。
请勿改动主函数main 和其他函数中的任何内容,仅在函数fun 的花括号中填入所编写的若干语句。
试题程序:
include <math. h>
include <stdio. h>
double fun(int n)
{
}
main()
{
int n;
double s;
printf("\n\nInput n: ");
scanf ("%d", &n);
s=fun (n)
printf ("\n\ns=%f\n\n", s);
}
下列程序定义了NXN的二维数组,并在主函数中赋值。请编写函数fun(),函数的功能是求出数组周边元素的平方和并作为函数值返回给主函数中的S。例如:若a数组中的值为
a=0 1 2 7 9
1 11 21 5 5
2 21 6 11 1
9 7 9 10 2
5 4 1 4 1
则返回主程序后s的值应为310。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
试题程序:
include<stdio.h>
include<conio.h>
include<stdlib.h>
define N 5
int fun (int w[][N])
{
}
main()
{
int a[N)[N]={0,1,2,7,9,1,1l,2l,5,5,2, 21,6,11,1,9,7,9,10,2,5,4,1,4,1};
int i,j;
int S;
clrscr();
printf("*****The array***+*\n");
for (i=0; i<N; i++)
{for(j=0;j<N;i++)
{printf(“%4d”,a[i][j]);}
printf("\n");
}
s=fun(a);
printf(“*****THE RESULT*****\n”);
printf("The sum is:%d\n",s);
}
请编写一个函数fun(),它的功能是计算并输出给定整数n的所有因子(不包括1与自身)的平方和(规定n的值不大于100)。
例如:主函数从键盘给输入n的值为56,则输出为 sum=1113。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
试题程序:
include <stdio.h>
long fun(int n)
{
}
main()
{
int n;
long sum;
printf("Input n:");
scanf("%d",&n);
sum=fun(n);
printf("sum=%ld\n",sum);
}