C语言课程设计~C++语言高手过来啊~需要给我详细的分析一下以下代码,然后给个流程图。

以下函数是一个学生管理的一部分,请很详细的给我解释一下程序,包括每一条的作用,调用了什么函数,表达了什么内容。详细一点给个注释。最后给个流程图!谢谢了!

Student_Insert()
//插入学生信息
void Student_Insert()
{
while(1)
{
printf("请输入学号:");
scanf("%s",&students[num].ID); //地址值&“.” []
printf("请输入姓名:");
scanf("%s",&students[num].Name);
getchar();
printf("请输入课程编号:");
scanf("%ld",&students[num].kcbh1);
getchar();
printf("请输入课程:");
scanf("%s",&students[num].kecheng1);
getchar();
printf("请输入学分:");
scanf("%f",&students[num].Mark1);
getchar();
printf("请输入成绩:");
scanf("%d",&students[num].mark1);
getchar();
printf("请输入课程编号:");
scanf("%ld",&students[num].kcbh2);
getchar();
printf("请输入课程:");
scanf("%s",&students[num].kecheng2);
getchar();
printf("请输入学分:");
scanf("%f",&students[num].Mark2);
getchar();
printf("请输入成绩:");
scanf("%d",&students[num].mark2);
getchar();
printf("请输入课程编号:");
scanf("%ld",&students[num].kcbh3);
getchar();
printf("请输入课程:");
scanf("%s",&students[num].kecheng3);
getchar();
printf("请输入学分:");
scanf("%f",&students[num].Mark3);
getchar();
printf("请输入成绩:");
scanf("%d",&students[num].mark3);
getchar();
students[num].Average=Avg(students[num]);
num++;
printf("是否继续?(y/n)");
if (getchar()=='n')
{
break;
}
}
}

里面就用到了三个基础函数。
例如
printf("请输入课程:"); //输出“请输入课程”
scanf("%s",&students[num].kecheng2); //把获取的字符串赋值给student数组中的第num个的kecheng2变量
getchar(); //去除字符串结尾标志一个“/0”

students[num].Average=Avg(students[num]); //应该是求出均值。
温馨提示:内容为网友见解,仅供参考
第1个回答  2012-06-09
都是一些基本的函数,好像没什么可解释的吧...
第2个回答  2012-06-09
这只不过是其中的一个函数,又没有完整代码,怎么解释?追问

逐句逐行翻译,每行的意思。

第3个回答  2012-06-10
while(1):内容为真则执行循环;
第二个:在屏幕上打印“请输入姓名”这条信息,第二条就是你所需要输入的内容,内容会储存在一个数组的成员里,getchar()这个函数会获取你所输入的内容,然后再下一条语句执行打印任务,将你所输入的东西打印出来,余下的同理;
printf("是否继续?(y/n)"); 这条语句就是询问你是否继续操作,getchar()函数会获取你输入的内容(y/n),然后判断语句进行判断,如果检测到你输入的是n就执行break跳出程序,否则继续。

C语言(最好C++)编一下这个程序
\/\/这里是对所需数目的教师信息输入用teacher这个指针接收,并判断男女,若男利用Mp链接以Male为首地址的链表中,若女利用Fp链接进以 printf("Pls enter the information of teacher:\\n注意中间一空格间隔,性别只可为大写的F或M,Ex:张三 187 M\\n");for (int i = 0; i < n; i++){ cin >...

高手们帮我看看c语言程序,请给每行代码和功能注释
例如;a = 3,b = 5,现交换a,b的值,这个问题就好像交换两个杯子水,这当然要用到第三个杯子,假如第三个杯子是c,那么正确的程序为: c = a; a = b; b = c; 执行结果是a = 5,b = c = 3如果改变其顺序,写成:a = b; c = a; b = c; 则执行结果就变成a = b = c = 5,不能达到预期...

如何编写C语言程序?
1.打开桌面上的DEV_C++,进入如下界面:2.快捷键“CTRL+N”建立新源代码。3.输入源代码,下面给出最简单的Hello,world源代码:include <stdio.h> int main( ){ printf("Hello,World\\n");return 0;} 4.按下F11编译并且运行源代码,得到运行结果:5.点击任意键返回源代码编辑界面可以继续进行开发...

...c++上运行C语言程序啊,回答一定要具体啊,最好给个例子演示一下_百度...
1 打开Visual C++ 2 单击:【文件】->【新建】->Win32 Console Application 3 在右上角的 【工程名称】 中输入你的工程名(如 Hello 4 单击 【确定】按钮,再单击【完成】按钮 5 接着会出现工程界面,你再单击 【文件】->【新建】,单击[【C++ Source File】,在右边的【文件名】中输入...

我想用C语言写一个邮件收发的程序,求指教!要怎么下手,求详细解释!谢谢...
1. `OnPrintpic()`: 处理打印图像的命令。它创建了一个打印对话框,获取打印机DC,然后调用`exOutReport()`来生成报告。2. `OnMouseMove(UINT nFlags, CPoint point)`: 处理鼠标移动的消息。它获取鼠标位置,并调用`exOutReport()`来更新屏幕上鼠标位置的颜色信息。3. `exOutReport(HDC hPr, ...

一个关于C语言自增++运算的题目,高手进
回答:根据编译器而不同, 在你的编译器中应该是这样执行的: y=(++x)+(x++)+(++x); 因为第二个(x++)有括号,所以就求解x++再执行括号外面的+,结果也就是3+4+5=12 在VC中就不同

...各位大神帮忙用C语言或C++编下这个程序,要源代码,老...
回答:少年,作业是用来回顾完善所学的知识的,而不是用来抄的。。。下面给出这个作业的核心代码,仅供参考 # include <stdio.h> # include <stdlib.h> # include <string.h> typedef struct student { char name[50]; int mathScore; int englishScore; }STU; void inputScore(STU * ...

求助 急需一个c语言或c++编写界面的设计报告以及源代码
initgraph(&gdriver,&gmode,"C:\\Program Files\\WINYES\\TC201E\\BGI");setlinestyle(0,1,3);setcolor(LIGHTGRAY);circle(X,Y,RR);setlinestyle(0,1,1);for(NUM=0;NUM<12;NUM++){ setcolor(11);X_DRAW=X+R_DRAW*cos(NUM*2*PI\/12);Y_DRAW=Y+R_DRAW*sin(NUM*2*PI\/12);circle(X_...

请C语言高手帮我编写几个数据结构的小程序~(一定要用C++编写噢~)谢啦...
deQueue(q,e)==1)printf("出对元素为:%c\\n此时",e);numQueue(q);enQueue(q,'d'); enQueue(q,'e'); enQueue(q,'f');printf("def进队列后,");numQueue(q);printf("它的元素有:\\n");DispQueue(q);ClearQueue(q);} 这是我以前的作业,你自己组织下,应该可以解决你的问题 ...

c语言题麻烦按题目要求写下然后告诉我大概过程谢谢
需要注意的是,上面的算法中的 is_leap_year 函数没有给出,因为实现方法取决于你所使用的语言。在 C++ 中,可以使用以下代码来判断一个年份是否为闰年:bool is_leap_year(int year) {if (year % 4 != 0) {return false;} else if (year % 100 != 0) {return true;} else if (year...

相似回答
大家正在搜