Res - 2009夏学期C语言上机练习参考答案汇总 下载本文

夏学期C程序设计上机练习参考答案

break;} } } * * * *

#include int main(void) printf(\ } } int prime(int n) { if (n == 1) return 0; for(i=2;i<=n/2;i++){ int i; return 0; { int n; int repeat, ri; scanf(\ for(ri = 1; ri <= repeat; ri++){ scanf(\ for (nRow = 1; nRow <= n*2-1; nRow++) { } } if (nRow <= n) nVal = nRow; int nRow, nVal, nCol; if(n%i==0) return 0; } 40067

打印图案 } return 1; else nVal = 2*n - nRow; for (nCol=1; nCol <= n-nVal ;nCol++) printf(\ \ }

输入一个正整数repeat (0

输入输出示例:括号内为说明 输入

2 (repeat=2) 3 (n=3) 4 (n=4) 输出

* (n=3的菱形图案) * * * * * * * * * * * *

* (n=4的菱形图案) * * * * * * * * * * * * * * * * * * * *

for (nCol=1;nCol<= nVal*2-1; nCol++) printf(\ printf(\夏6周

30062 输出21世纪所有闰年

输入21世纪所有的闰年。判断闰年的条件是:能被 4 整除但不能被 100 整除,或者能被 400 整除。 输出使用语句 printf(\输入输出示例:括号内是说明 输出 2000 2004 。。。 2092 2096

29

夏学期C程序设计上机练习参考答案

#include int main(void) { int year; for(year = 2000; year <= 2099; year++){ }

90001 调试示例error09_1.cpp

输入一个正整数n(3≤n≤10),再输入n个雇员的信息,包括姓名、基本工资、浮动工资和支出,输出每人的姓名和实发工资,实发工资=基本工资+浮动工资-支出。 输入输出示例:括号内为说明 输入: 3

(n=3)

if((year%4==0&&year0!=0)||(year@0==0)) } printf(\s[i].jbg + s[i].fdg - s[i].zc); } 在TC 2.0中,如下语句无法通过: scanf(\&s[i].jbg,&s[i].fdg,&s[i].zc); 可以通过中间变量获得浮点型的结构的成员变量: double t1,t2,t3; scanf(\&s[i].jbg,&s[i].fdg,&s[i].zc); s[i].jbg=t1; s[i].fdg=t2; s[i].zc=t3;

90002 时间换算

输入一个正整数 repeat (0

输入一个时间数值,再输入秒数 n,输出该时间再过 n 秒后的时间值,时间的表示形式为时:分:秒,超过 24 时从 0 时重新开始计时。

输入输出示例:括号内为说明 输入: 3 0:0:1 59

11:59:40 30

23:59:40 301 输出:

time: 0:1:0 (0:0:01加上59秒的新时间) time: 12:0:10 间)

time: 0:4:41 (23:59:40加上301秒的新时间)

#include int main(void) { int n; int repeat, ri; struct time{ int hour, minute, second; }time; scanf(\ (11:59:40加上30秒的新时

(秒数n=301) (秒数n=30) (秒数n=59) (repeat=3)

zhao 240 400 75 qian 360 120 50 zhou 560 0 80 输出:

zhao 实发工资: 565.00 qian 实发工资: 430.00 zhou 实发工资: 480.00

#include int main (void) { int i, n; struct emp{ char name[10]; double jbg; double fdg; double zc; } s[10]; scanf(\ for(i=0;i

夏学期C程序设计上机练习参考答案

for(ri = 1; ri <= repeat; ri++){ scanf(\%d:%d:%d\&time.hour, &time.minute, &time.second); scanf(\ time.minute=time.minute+time.second/60; time.second=time.second`; if(time.minute>=60){ time.second=time.second+n; if(time.second>=60){ char name[10]; int score; }s[10]; scanf(\ scanf(\ } average=sum/n; sum+=s[i].score; sum=0; for(i=0;i=24) printf(\}

90004 计算两个复数之积

输入4个整数a1,b1,a2,b2,分别表示两个复数的实部与虚部,求两个复数之积(a1+b1i)*(a2+b2i),乘积的实部为:

time.hour=time.hour-24; } %d:%d:%d\\n\time.hour, } printf(\time.minute, time.second); } }

90003 计算平均成绩

a1*a2-b1*b2,虚部为:a1*b2+a2*b1。 输入输出示例:括号内为说明 输入: 3 4 5 6 输出:

(3+4i) * (5+6i) = -9 + 38i

#include int main(void) { struct complex{ int real; 输入整数n(n<10),再输入n个学生的基本信息,包括序号、姓名和成绩,要求计算并输出他们的平均成绩(保留2位小数)。

输入输出示例:括号内为说明 输入: 3

(n=3)

int imag; }product, x, y; scanf(\&x.real, &x.imag, &y.real, &y.imag); product.real=x.real*y.real-x.imag*y.imag; product.imag=x.real*y.imag+x.imag*y.real; 1 zhang 70 2 wang 80 3 qian 90 输出: average: 80.00

#include int main(void) { int i, n; double average, sum; struct student{ int num; printf(\x.imag, y.real, y.imag, product.real, product.imag); }

90005 查找书籍

31

夏学期C程序设计上机练习参考答案

编写程序,从键盘输入 n (n<10)本书的名称和定价并存入结构数组中,查找并输出其中定价最高和最低的书的名称和定价。

输入输出示例:括号内为说明 输入: 3

(n=3)

book[max_index].price, book[max_index].name); printf(\price: %.1f, %s\\n\book[min_index].price, book[min_index].name); }

90006 通讯录排序

输入n(n<10)个朋友的信息,包括姓名、生日、电话号码,按照年龄从大到小的顺序依次输出通讯录。 输入输出示例:括号内为说明 输入: 3

(n=3)

Programming in C 21.5

Programming in VB 18.5

Programming in Delphi 25.0 输出:

highest price: 25.0, Programming in Delphi lowest price: 18.5, Programming in VB #include int main (void) { int i, max_index, min_index, n; double x; struct book{ char name[50]; double price; }book[10]; scanf(\ getchar(); for(i = 0; i < n; i++){ gets(book[i].name); scanf(\ getchar(); book[i].price = x; } max_index=1; min_index=1; for(i = 1; i < n; i++){ } price: %.1f, %s\\n\if(book[max_index].price

wang 19821020 0571-88018448 qian 19840619 13609876543 zhang 19850403 13912345678

#include #include int main (void) { int i, index, j, n; struct address_list{ char name[20]; long birthday; char phone[20]; }temp, friends[10]; scanf(\ for(i = 0; i < n; i++) scanf(\&friends[i].birthday, friends[i].phone); for(i = 0; i < n; i++){ index = i; for(j = i+1; j < n; j++) if friends[i].name, if(book[min_index].price>book[i].price) min_index=i; (friends[index].birthday>friends[j].birthday) index = j; temp =friends[index]; friends[index]=friends[i]; printf(\ 32