我们这个五一留了一个编程题 输入十个学生的成绩 要求统计出及格人数和不及格人数 用FOR WHILE DOWHILE 三种循环编写
main(){int i,j,k;for(i=0,k^=k;i<10;printf("[%d]",++i),!!scanf("%d",&j)?j<60?
++k:0:(putchar(33),getchar(),--i));printf("%d passed, %d failed\n",10-k,k);}
偶来个数组的题目,呵呵,不过不是C,是PASCAL.偶C才初学,以前只会PASCAL
输入学生的学号,成绩,计算平均值.然后计算每个学生的成绩与平均成绩差,并由此给出每个学生成绩的字母等级.如果高于平均成绩10分以上者为A,相差在10分以内为B,其余为C,最后输出每个学生的学号,成绩,字母等级.
const
n=30;
var
num:array[1..n]of integer;
score:array[1..n]of real;
i:integer;
ave:real;
grade:char;
begin
for i:=1 to n do
readln(num[i],score[i]);
ave:=0;
for i:=1 to n do
ave:=ave+score[i];
ave:=ave/n;
for i:=1 to n do
begin
if score[i]>=ave+10 then grade:='a' else if score[i]>=ave-10 then grede:='b' else grade:='c';
writeln(num[i],score[i]:6:1;grade:3);
end{for};
end.
Word教程网 | Excel教程网 | Dreamweaver教程网 | Fireworks教程网 | PPT教程网 | FLASH教程网 | PS教程网 |
HTML教程网 | DIV CSS教程网 | FLASH AS教程网 | ACCESS教程网 | SQL SERVER教程网 | C语言教程网 | JAVASCRIPT教程网 |
ASP教程网 | ASP.NET教程网 | CorelDraw教程网 |