15级程序设计基础题库(c语言)2 - 截止到指针 - 答案版本(8)

2020-02-21 22:25

}

int * p = a; int s = 0;

printf(\请输入10个整数\for(int i=0;i<10;i++) { scanf(\ s += *p; p++; }

printf(\个数的和为:%d\\n\

80、 键盘输入10个数,输出10个数的最大值(指向一维数组的指针实现)。(难)

#include void main() { int a[10]; int * p = a; int max = 0; printf(\请输入10个整数\ for(int i=0;i<10;i++) { scanf(\ if(i==0) { max=*p; } else { if (max < (*p)) { max = (* p); } } p++; } printf(\个数中的最大值为:%d\\n\}

九、数据类型(10道抽1道,写代码)

81、 定义一个日期结构体变量(年、月、日),定义包含3个日期信息的数组,输出这

些日期信息。(较难)

#include void main() {

//声明结构体 struct Date { int date_Year; int date_Month; int date_Day; };

//定义结构体数组 struct Date ADate[3]={ {2014,10,1}, {2015,10,1}, {2013,10,1} };

for (int i=0;i<3;i++) { printf(\日期信息:%d年%d月%d日\\n\ } }

82、 定义一个结构体,管理员工的信息(工号,姓名,工资),定义包含3个员工信息

的数组,输出这些员工信息记录。(较难)

#include void main() { //声明 员工 结构体 struct employee { char empl_num[6];//工号 char empl_name[10]; float salary; }; //定义结构体数组 struct employee empl[3]={ {\张三\ {\李四\ {\王五\ }; for (int i=0;i<3;i++) { printf(\输出员工

信息,工号:%s 姓名:%s 工

资:%f\\n\ } }

83、 定义一个结构体,管理学生的成绩(姓名,学号,成绩),定义包含3个学生信息

的数组,输出这些学生信息记录。(较难)

84、 定义一个结构体,管理士兵的信息(姓名,兵种,编号),定义包含3个士兵信息

的数组,输出这些士兵信息记录。(较难)

85、 定义一个结构体,管理学生的成绩(姓名,学号,成绩),从键盘输入3个学生的

数据后,求平均成绩。(难)

86、 定义一个结构体,管理士兵的信息(姓名,兵种,编号),从键盘输入3个士兵信

息的数组,输出这些士兵信息记录。(较难)

87、 定义一个结构体,管理学生的成绩(姓名,学号,成绩),从键盘输入5个学生的

数据后,求最高分。(难)

88、 定义一个结构体,管理学生的成绩(姓名,学号,成绩),从键盘输入5个学生的

数据后,求5个学生的总成绩。(难)

89、 定义一个结构体表示日期,包含年、月、日、星期,其中星期用枚举类型实现,用

今天的日期将其初始化。(难)

90、 定义一个结构体表示日期,包含年、月、日、星期,其中星期用枚举类型实现,用

(2015-4-28 星期二)将其初始化。(难)

十、附加题

91、 求下面数列的前20项的和:2/1、3/2、5/3、8/5、13/8。。。。

#include void main() {

int i,x,y,a; float sum=0;

x=2; //用x表示分子,用y表示分母 y=1;

for(i=0;i<20;i++) { sum+=(float)(x)/y; // printf(\ a=x; x=x+y; y=a; }

printf(\ }

1.首先弄清楚这组分数序列的规律:从第二个数开始分子=前一个数的分子+分母分母=前一个数的分子

92、 键盘输入两个日期(年月日)输出两个日期之间的天数。(如计算2013年1月1

日到2014年3月1日有多少天,考虑闰年) #include #include

int main(int argc, char *argv[]) {

int a[13];

a[1]=a[3]=a[5]=a[7]=a[8]=a[10]=a[12]=31; a[2]=28;a[4]=30;a[6]=30;a[9]=30;a[11]=30; int m,n,p,q,k,i,s,j,x=0,y=0,b=365,c=365;

scanf(\ if((m%4==0&&m0!=0)||m@0==0) b=366;

if((q%4==0&&q0!=0)||q@0==0) c=366;

if(m==q){if(b=366) a[2]=29; for(j=1;j

for(j=1;j

s=y+i-x-p;

printf(\ }

if(m!=q) { if(b=366) a[2]=29; for(j=1;j

(j=1;j1) s=s-q+m; printf(\ system(\ return 0; }

93、 打印图形

1 121 12321 1234321 12321 121 1

#include void main() { int i,j,n=4,k; //scanf(\ k=n; for(i=1;i<=4;i++) //输出每行的顺序:先输出空格,然后输出递增的如 123,最后在输出递减的如21. { for(j=1;j<=(4-i);j++) printf(\ for(j=1;j<=i;j++) printf(\ for(j=i-1;j>0;j--) printf(\ printf(\ } //打印后面3排 ,//输出每行的顺序:先输出空格,然后输出递增的如 123,最后在输出递减的如21. for(i=1;i<=4-1;i++) {


15级程序设计基础题库(c语言)2 - 截止到指针 - 答案版本(8).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:整句和散句的变换

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: