LGC范例
2002-5-27
算法:要求一学生写出他/她回家的步骤
写一个接收姓名、雇员编号、基本薪金、员工津贴和应扣款的程序
说明分枝:条件分枝
Loop循环:写一个程序以产生下列数字:1,1,2,3,5,8,13……
While (do……while): 写一个程序接收个人姓名并印,持续进行直至按下‘STOP’
Loop循环嵌套:写一个程序产生以下序列数:
Switch和Case: 写一个程序以检查用户的输入是否是元音(a,e,i,o,u)
1.范例一(Example 1)
/*算法和编程说明:要求一学生写出他/她回家的步骤。如下所示:
1、在哪坐车
2、公共汽车牌号
3、目的地
4、道路名称
5、门牌号码
问全班同学:为什么我们要遵循这个顺序结构?(回答是如果你不按这个次序你就不能到达你所要到的目的地)现在你可以说这是某人回家的程序,而给出正确顺序结构非常重要。否则我们将出错。
在程序开始前加“Start”,在最后一步骤后加“End”表示算法的开始和结束。*/
2.范例二(Example 2)
/*此程序用来说明:Printf, Scanf, Array和Operators*/
/*问题:写一个接收姓名、雇员编号、基本薪金、员工津贴和应扣款的程序。计算员工的纯收入(纯收入=基本薪金+津贴-应扣款)。并打印薪金表*/
*该程序可用循环来说明*/
# include <stdio.h> //including header file for printf, scanf etc
# include <stdlib.h> // Header file for system()
# include <conio.h> // Header file for getch()
void main()
{
char name[20],emp_no[5];
int basic;
float allowance,deduction,netsal;
printf("Enter the Employee Number\t");
gets(emp_no);
printf("Enter Employee Name\t");
gets(name);
printf("Enter Basic Salary\t");
scanf("%d",&basic);
printf("Enter Allowances\t");
scanf("%f",&allowance);
printf("Enter Deductions\t");
scanf("%f",&deduction);
netsal=basic+allowance-deduction;
getch(); // wait for a key stroke
system("cls"); //clear the screen to print the salary slip
printf(" Employee Salary Slip \n");
printf(" _____________________ \n");
printf("Employee Number : \t");
printf("%s",emp_no);
printf("\nEmployee Name : \t");
printf("%s",name);
printf("\n"); // to create blank line
printf("Basic Salary : \t %d",basic);
printf("\nAllowance : \t %.2f",allowance);
printf("\nDeduction : \t %.2f",deduction);
printf("\n ______________________");
printf和scanf有什么不同printf("\nNet Salary: \t %.2f\n",netsal);
}
/*此程序修改后可以说明IF语句,通过加入级别并计算不同级别的津贴*/
3.范例三(Example 3)
/*说明分枝*/
/*假设你父亲要给你一些钱。而你不知道会给你多少。你如何制订一个关于这个问题的计划呢?
如果父亲给我100元人民币,我要买一件T恤衫。
如果父亲给我50元人民币,我要去肯特基吃一顿。
如果父亲给我10元人民币,我就去买巧克力。
这表明:此活动(父亲给我钱后的事件)的发生是有条件的。表示条件我们可用IF语句,同时可以有二个选择:‘YES’和‘NO’*/
4.范例四(Example 4)
/*此程序用来说明Loop循环*/
/*问题:写一个程序以产生下列数字:1,1,2,3,5,8,13……*/
1,1,2,3,5,8,13,............
*/
# include <stdio.h> //including header file for printf
void main()
{
int i,n1=1,n2=0,n3=0;
for(i=1;i<=25;i++) //loop for generating first 25 numbers of the series
{
n3=n1+n2;
printf("%d\t",n3);
n1=n2;
n2=n3;
}
}
5.范例五(Example 5)
/*此程序用来说明‘while’循环或‘do……while’循环*/
/*问题:写一个程序接收个人姓名并印,持续进行直至按下‘STOP’*/
# include <stdio.h>
# include <string.h>
# include <conio.h>
# include <stdlib.h>
void main()
{
char name[20]="aaaaaaaaa";
while (strcmp(name,"stop")!=0)
{
printf("Enter your name\t");
gets(name);
printf("\n%s",name);
getch();
system("cls");
}
}
/* __________________ or__________________________________________*/
/*
# include <stdio.h>
# include <string.h>
# include <conio.h>
# include <stdlib.h>
void main()
{
char name[20];
do
{
printf("Enter your name\t");
gets(name);
printf("\n%s",name);
getch();
system("cls");
}while (strcmp(name,"stop")!=0);
}
*/
6.范例六(Example 6)
/*编程产生一个序列数能说明Loop循环和嵌套吗?*/
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论